Trì ìrean de fèin-sgèileadh ann an Kubernetes: Mar a chleachdas tu iad gu h-èifeachdach

Trì ìrean de fèin-sgèileadh ann an Kubernetes: Mar a chleachdas tu iad gu h-èifeachdach
Gus làn mhaighstir a dhèanamh air Kubernetes, feumaidh fios a bhith agad air diofar dhòighean air goireasan cnuasachaidh a sgèile: le a rèir luchd-leasachaidh an t-siostam, is e seo aon de na prìomh ghnìomhan aig Kubernetes. Tha sinn air tar-shealladh àrd-ìre a thoirt seachad air fèin-sgèileadh còmhnard is dìreach agus uidheamachdan ath-mheudachadh cruinneachaidhean, a bharrachd air molaidhean air mar a chleachdas tu iad gu h-èifeachdach.

Artaigil Kubernetes Autoscaling 101: Cluster Autoscaler, Autoscaler còmhnard, agus inghearach Pod Autoscaler eadar-theangachadh leis an sgioba a chuir an gnìomh fèin-sgèileadh a-steach Kubernetes aaS bho Mail.ru.

Carson a tha e cudromach smaoineachadh air sgèileadh

Kubernetes - inneal airson stiùireadh ghoireasan agus orcastra. Gu dearbh, tha e math a bhith a’ gleusadh leis na feartan fionnar ann a bhith a’ cleachdadh, a’ cumail sùil, agus a’ riaghladh pods (is e buidheann de shoithichean a th’ ann am pod a thèid a chuir air bhog mar fhreagairt air iarrtas).

Ach, bu chòir dhut cuideachd smaoineachadh air na ceistean a leanas:

  1. Ciamar a mheudaicheas tu modalan agus tagraidhean?
  2. Ciamar a chumas tu soithichean ag obair agus èifeachdach?
  3. Ciamar a dhèiligeas tu ri atharrachaidhean cunbhalach ann an còd agus eallach obrach bho luchd-cleachdaidh?

Faodaidh e a bhith dùbhlanach cruinneachaidhean Kubernetes a rèiteachadh gus goireasan agus coileanadh a chothromachadh agus tha feum air eòlas eòlach air obrachadh a-staigh Kubernetes. Faodaidh eallach obrach an tagraidh no na seirbheisean agad atharrachadh tron ​​​​latha no eadhon thairis air uair a thìde, agus mar sin thathas a’ smaoineachadh air cothromachadh mar phròiseas leantainneach.

Ìrean fèin-sgèileadh Kubernetes

Feumaidh fèin-sgèileadh èifeachdach co-òrdanachadh eadar dà ìre:

  1. Ìre pod, a ’toirt a-steach còmhnard (Pod Autoscaler Còmhnard, HPA) agus autoscaler dìreach (Inghearach Pod Autoscaler, VPA). Tha seo a’ meudachadh nan goireasan a tha rim faighinn airson na soithichean agad.
  2. Ìre brabhsair, a tha air a riaghladh leis an Cluster Autoscaler (CA), a tha ag àrdachadh no a’ lughdachadh àireamh nan nodan taobh a-staigh a’ bhuidheann.

Modal Autoscaler còmhnard (HPA).

Mar a tha an t-ainm a’ moladh, tha HPA a’ tomhas na h-àireimh de mhac-samhail de pod. Bidh a’ mhòr-chuid de devops a’ cleachdadh CPU agus eallach cuimhne mar luchd-brosnachaidh airson an àireamh de mhac-samhail atharrachadh. Ach, tha e comasach sgèile a dhèanamh air an t-siostam stèidhichte air slatan-tomhais àbhaisteachtheir measgachadh no eadhon slatan-tomhais taobh a-muigh.

Diagram obrachaidh HPA àrd-ìre:

  1. Bidh an HPA gu leantainneach a’ sgrùdadh nan luachan meatrach a chaidh a shònrachadh rè an stàlaidh aig àm bunaiteach de 30 diogan.
  2. Bidh an HPA a’ feuchainn ris an àireamh de mhodalan àrdachadh ma ruigear an stairsneach ainmichte.
  3. Bidh an HPA ag ùrachadh na h-àireamh de mhac-samhail taobh a-staigh an rianadair cleachdadh / ath-riochdachadh.
  4. Bidh an rianadair cleachdadh / ath-riochdachadh an uairsin a’ cleachdadh mhodalan a bharrachd a tha riatanach.

Trì ìrean de fèin-sgèileadh ann an Kubernetes: Mar a chleachdas tu iad gu h-èifeachdach
Bidh HPA a’ tòiseachadh pròiseas cleachdadh mhodalan nuair a ruigear ìre meatrach

Nuair a bhios tu a’ cleachdadh HPA, smaoinich air na leanas:

  • Is e an eadar-ama sgrùdaidh àbhaisteach HPA 30 diogan. Tha e air a shuidheachadh leis a 'bhratach còmhnard-pod-autoscaler-sync-period anns a’ mhanaidsear stiùiridh.
  • 'S e 10% am mearachd bunaiteach ann an dàimh.
  • Às deidh an àrdachadh mu dheireadh anns an àireamh de mhodalan, tha HPA an dùil gum bi na meatrach seasmhach taobh a-staigh trì mionaidean. Tha an ùine seo air a shuidheachadh leis a 'bhratach còmhnard-pod-autoscaler-upscale-dàil.
  • Às deidh an lùghdachadh mu dheireadh anns an àireamh de mhodalan, bidh an HPA a ’feitheamh còig mionaidean gus a dhèanamh seasmhach. Tha an ùine seo air a shuidheachadh leis a 'bhratach còmhnard-pod-autoscaler-downscale-dàil.
  • Bidh HPA ag obair as fheàrr le stuthan cleachdadh seach riaghladairean ath-riochdachadh. Tha fèin-sgèileadh còmhnard neo-chòrdail ri ùrachadh leantainneach, a bhios gu dìreach a’ làimhseachadh riaghladairean mac-samhail. Le cleachdadh, tha an àireamh de mhac-samhail an urra gu dìreach ris na nithean cleachdaidh.

Sgèileadh dìreach de pods

Bidh fèin-sgèileadh dìreach (VPA) a’ riarachadh barrachd (no nas lugha) ùine CPU no cuimhne gu pods a th’ ann mar-thà. Freagarrach airson pods stàiteil no gun stàit, ach gu sònraichte airson seirbheisean stàiteil. Ach, faodaidh tu cuideachd VPA a chleachdadh airson modalan gun stàit ma dh’ fheumas tu atharrachadh gu fèin-ghluasadach air an uiread de ghoireasan a chaidh a shònrachadh an toiseach.

Bidh VPA cuideachd a’ freagairt ri tachartasan OOM (a-mach à cuimhne). Feumaidh atharrachadh ùine agus cuimhne CPU na pods ath-thòiseachadh. Nuair a thèid ath-thòiseachadh, bidh an VPA a’ toirt urram don bhuidseit riarachaidh (buidseat sgaoilidh pods, PDB) gus an àireamh as lugha de mhodalan a tha a dhìth a ghealltainn.

Faodaidh tu na goireasan as ìsle agus as àirde a shuidheachadh airson gach modal. Mar sin, faodaidh tu an ìre as motha de chuimhne a chaidh a thoirt seachad a chuingealachadh gu 8 GB. Tha seo feumail mura h-urrainn dha na nodan gnàthach barrachd air 8 GB de chuimhne a riarachadh gach soitheach. Tha mion-chomharrachaidhean agus uidheamachd obrachaidh air am mìneachadh ann an VPA oifigeil wiki.

A bharrachd air an sin, tha gnìomh moladh inntinneach aig VPA (Moladh VPA). Bidh e a’ cumail sùil air cleachdadh ghoireasan agus tachartasan OOM de gach modal gus cuimhne ùr agus luachan ùine CPU a mholadh stèidhichte air algairim tuigseach stèidhichte air meatrach eachdraidheil. Tha API ann cuideachd a bheir làmh pod agus a thilleas luachan stòrais a chaidh a mholadh.

Is fhiach a bhith mothachail nach eil VPA Recommender a’ cumail sùil air “crìoch” goireas. Dh’ fhaodadh seo leantainn gu bheil am modal a’ dèanamh monopolachadh air goireasan taobh a-staigh nodan. Tha e nas fheàrr a’ chrìoch a shuidheachadh aig ìre an namespace gus cuimhne mhòr no caitheamh CPU a sheachnadh.

Sgeama obrachaidh àrd-ìre VPA:

  1. Bidh VPA gu leantainneach a’ sgrùdadh nan luachan meatrach a chaidh a shònrachadh rè an stàlaidh aig àm bunaiteach de 10 diogan.
  2. Ma ruigear an stairsneach ainmichte, feuchaidh an VPA ris an ìre de ghoireasan a chaidh a shònrachadh atharrachadh.
  3. Bidh an VPA ag ùrachadh na h-àireimh de ghoireasan taobh a-staigh an rianadair cleachdadh / ath-riochdachadh.
  4. Nuair a thèid modalan ath-thòiseachadh, thèid a h-uile goireas ùr a chuir an sàs anns na suidheachaidhean a chaidh a chruthachadh.

Trì ìrean de fèin-sgèileadh ann an Kubernetes: Mar a chleachdas tu iad gu h-èifeachdach
Bidh VPA a’ cur ris an uiread de ghoireasan a tha a dhìth

Feuch an cuimhnich thu na puingean a leanas nuair a bhios tu a’ cleachdadh VPA:

  • Feumaidh sgèileadh ath-thòiseachadh èigneachail den pod. Tha seo riatanach gus obrachadh neo-sheasmhach a sheachnadh às deidh atharrachaidhean a dhèanamh. Airson earbsachd, bidh modalan air an ath-thòiseachadh agus air an sgaoileadh thairis air nodan stèidhichte air goireasan ùra.
  • Chan eil VPA agus HPA fhathast co-chòrdail ri chèile agus chan urrainn dhaibh ruith air na h-aon pods. Ma tha thu a’ cleachdadh an dà uidheamachd sgèileachaidh san aon bhuidheann, dèan cinnteach gu bheil na roghainnean agad a’ cur casg orra bho bhith air an cur an gnìomh air na h-aon nithean.
  • Bidh VPA a’ fuinn iarrtasan container airson goireasan stèidhichte a-mhàin air cleachdadh san àm a dh’ fhalbh agus an-dràsta. Chan eil e a’ suidheachadh crìochan cleachdadh stòrais. Is dòcha gu bheil duilgheadasan ann le tagraidhean nach eil ag obair gu ceart agus a ’tòiseachadh air barrachd is barrachd ghoireasan a ghabhail thairis, bheir seo gu Kubernetes am pod seo a chuir dheth.
  • Tha VPA fhathast aig ìre thràth de leasachadh. Bi ullaichte gum faodadh an siostam a dhol tro atharrachaidhean a dh’ aithghearr. Faodaidh tu leughadh mu dheidhinn crìochan aithnichte и planaichean leasachaidh. Mar sin, tha planaichean ann airson co-obrachadh VPA agus HPA a chuir an gnìomh, a bharrachd air a bhith a’ cleachdadh mhodalan còmhla ri poileasaidh fèin-sgèileadh dìreach dhaibh (mar eisimpleir, leubail sònraichte ‘feumar VPA’).

A’ togail cruinneachadh de Kubernetes gu fèin-ghluasadach

Bidh Cluster Autoscaler (CA) ag atharrachadh an àireamh de nodan stèidhichte air an àireamh de phodan feitheimh. Bidh an siostam bho àm gu àm a’ sgrùdadh mhodalan a tha ri thighinn - agus a’ meudachadh meud na buidhne ma tha feum air barrachd ghoireasan agus mura tèid an cruinneachadh thairis air na crìochan stèidhichte. Bidh an CA a’ conaltradh ris an t-solaraiche seirbheis sgòthan, ag iarraidh nodan a bharrachd bhuaithe, no a’ leigeil ma sgaoil feadhainn leisg. Chaidh a’ chiad dreach coitcheann de CA a thoirt a-steach ann an Kubernetes 1.8.

Sgeama àrd-ìre de ghnìomhachd SA:

  1. Sgrùdaidhean CA airson modalan a tha ri thighinn aig àm bunaiteach de 10 diogan.
  2. Ma tha aon pod no barrachd ann an staid cùl-taic leis nach eil goireasan gu leòr aig a’ bhuidheann airson an riarachadh, bidh e a’ feuchainn ri aon no barrachd nodan a bharrachd a thoirt seachad.
  3. Nuair a bhios an solaraiche seirbheis sgòthan a’ riarachadh an nód a tha a dhìth, bidh e a’ tighinn còmhla ris a’ bhuidheann agus deiseil airson na pods a fhrithealadh.
  4. Bidh an clàr-ama Kubernetes a’ sgaoileadh pods ri thighinn gu nód ùr. Ma tha cuid de mhodalan fhathast ann an staid feitheimh às deidh seo, thèid am pròiseas ath-aithris agus thèid nodan ùra a chur ris a’ bhuidheann.

Trì ìrean de fèin-sgèileadh ann an Kubernetes: Mar a chleachdas tu iad gu h-èifeachdach
Solarachadh fèin-ghluasadach de nodan brabhsair san sgòth

Beachdaich air na leanas nuair a bhios tu a’ cleachdadh CA:

  • Bidh CA a’ dèanamh cinnteach gu bheil àite aig a h-uile pod sa bhuidheann a ruith, ge bith dè an luchd CPU a th’ ann. Bidh e cuideachd a’ feuchainn ri dèanamh cinnteach nach eil nodan neo-riatanach anns a’ bhuidheann.
  • Bidh CA a’ clàradh an fheum air sgèile às deidh timcheall air 30 diog.
  • Aon uair ‘s nach eil feum air nód tuilleadh, bidh an CA a’ diùltadh feitheamh 10 mionaidean mus tèid an siostam a chuir a-mach.
  • Tha bun-bheachd luchd-leudachaidh aig an t-siostam fèin-sgèile. Is e ro-innleachdan eadar-dhealaichte a tha seo airson buidheann de nodan a thaghadh far an tèid nodan ùra a chur ris.
  • Cleachd an roghainn gu ciallach cluster-autoscaler.kubernetes.io/safe-to-evict (fìor). Ma stàlaicheas tu tòrr pods, no ma tha mòran dhiubh sgapte air feadh nan nodan gu lèir, caillidh tu gu ìre mhòr an comas a bhith a 'sgapadh a' bhuidheann.
  • Cleachd Buidseatan Pod Disruptiongus casg a chuir air pods a bhith air an toirt às, a dh’ fhaodadh pàirtean den tagradh agad fàiligeadh gu tur.

Mar a bhios autoscalers Kubernetes ag eadar-obrachadh le chèile

Airson co-sheirm foirfe, bu chòir fèin-sgèileadh a bhith air a chuir an sàs aig ìre pod (HPA / VPA) agus aig ìre brabhsair. Bidh iad ag eadar-obrachadh le chèile gu ìre mhath sìmplidh:

  1. Bidh HPAn no VPAn ag ùrachadh mac-samhail pods no goireasan air an riarachadh do na pods a th’ ann mar-thà.
  2. Mura h-eil nodan gu leòr ann airson an sgèileadh a tha san amharc, bidh an CA a’ mothachadh gu bheil pods ann an staid feitheimh.
  3. Bidh an CA a’ riarachadh nodan ùra.
  4. Tha modalan air an sgaoileadh gu nodan ùra.

Trì ìrean de fèin-sgèileadh ann an Kubernetes: Mar a chleachdas tu iad gu h-èifeachdach
Co-obrachadh siostam sgèile Kubernetes

Mearachdan cumanta ann an fèin-sgèileadh Kubernetes

Tha grunn dhuilgheadasan cumanta ann a thig gu buil nuair a thathar a’ feuchainn ri fèin-sgèileadh a chuir an gnìomh.

Tha HPA agus VPA an urra ri meatrach agus cuid de dhàta eachdraidheil. Mura tèid goireasan gu leòr a riarachadh, thèid na modalan a lughdachadh agus cha bhith e comasach dhaibh meatrach a ghineadh. Anns a 'chùis seo, cha tachair fèin-sgèileadh gu bràth.

Tha an obair sgèileachaidh fhèin mothachail air ùine. Tha sinn airson gum bi na modalan agus an cruinneachadh gu sgiobalta - mus mothaich luchd-cleachdaidh duilgheadasan no fàilligidhean sam bith. Mar sin, bu chòir aire a thoirt don ùine sgèile cuibheasach airson pods agus am braisle.

Suidheachadh foirfe - 4 mionaidean:

  1. 30 diog. Ùraich meatairean targaid: 30 - 60 diogan.
  2. 30 diog. Bidh HPA a’ sgrùdadh luachan meatrach: 30 diogan.
  3. Nas lugha na 2 diog. Bidh pods air an cruthachadh agus a 'dol a-steach gu staid feitheimh: 1 diog.
  4. Nas lugha na 2 diog. Bidh CA a’ faicinn mhodalan feitheimh agus a’ cur fiosan gu nodan solair: 1 diog.
  5. 3 mionaidean. Bidh an solaraiche sgòthan a’ riarachadh nodan. Bidh K8s a’ feitheamh gus am bi iad deiseil: suas ri 10 mionaidean (a rèir grunn nithean).

An suidheachadh as miosa (nas reusanta) - 12 mionaidean:

  1. 30 diog. Luchdaich a-nuas an clàr metrics.
  2. 30 diog. Bidh HPA a’ sgrùdadh nan luachan meatrach.
  3. Nas lugha na 2 diog. Tha na pods air an cruthachadh agus a 'dol a-steach don staid cùl-taic.
  4. Nas lugha na 2 diog. Bidh an CA a’ faicinn nam modalan feitheimh agus a’ dèanamh gairmean gus na nodan a sholarachadh.
  5. 10 mionaidean. Bidh an solaraiche sgòthan a’ riarachadh nodan. Bidh K8s a’ feitheamh gus am bi iad deiseil. Tha an ùine feitheimh an urra ri grunn nithean, leithid dàil reiceadair, dàil OS, agus innealan taic.

Na cuir a-mach dòighean sgèileadh solaraichean sgòthan leis an CA againn. Bidh an tè mu dheireadh a ’ruith taobh a-staigh cruinneachadh Kubernetes, fhad‘ s a tha einnsean solaraiche sgòthan ag obair air bunait cuairteachaidh nód. Chan eil fios dè a tha a’ dol leis na pods no an tagradh agad. Bidh na siostaman sin ag obair ann an co-shìnte.

Mar a làimhsicheas tu sgèileadh ann an Kubernetes

  1. Tha Kubernetes na inneal stiùireadh ghoireasan agus orcastra. Tha gnìomhachd airson a bhith a’ riaghladh pods agus goireasan cnuasachaidh na phrìomh chlach-mhìle ann a bhith a’ faighinn maighstireachd air Kubernetes.
  2. Tuig loidsig scalability pod a’ toirt aire do HPA agus VPA.
  3. Cha bu chòir CA a chleachdadh ach ma tha tuigse mhath agad air feumalachdan do pods agus soithichean.
  4. Gus brabhsair a rèiteachadh mar as fheàrr, feumaidh tu tuigsinn mar a tha diofar shiostaman sgèileachaidh ag obair còmhla.
  5. Nuair a thathar a’ dèanamh tuairmse air an ùine sgèileachaidh, cumaibh cuimhne air na suidheachaidhean as miosa agus as fheàrr.

Source: www.habr.com

Cuir beachd ann