{"id":55712,"date":"2020-01-27T00:00:00","date_gmt":"2020-01-26T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat"},"modified":"2020-02-18T14:03:51","modified_gmt":"2020-02-18T11:03:51","slug":"tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat","title":{"rendered":"Tre nivele t\u00eb automatizmit n\u00eb Kubernetes: si t'i p\u00ebrdorim ato me efikasitet","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Tre nivele t\u00eb automatizmit n\u00eb Kubernetes: si t&#039;i p\u00ebrdorim ato me efikasitet\" src=\"\/wp-content\/uploads\/2020\/01\/0b076d65db116cabdd1b4ae380d3777d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nP\u00ebr t\u00eb zot\u00ebruar plot\u00ebsisht Kubernetes, duhet t\u00eb njihni m\u00ebnyrat e ndryshme t\u00eb shkall\u00ebzimit t\u00eb burimeve t\u00eb klasterit: sipas <noindex><a rel=\"nofollow\" href=\"https:\/\/speakerdeck.com\/thockin\/everything-you-ever-wanted-to-know-about-resource-scheduling-dot-dot-dot-almost\">fjal\u00ebve t\u00eb zhvilluesve t\u00eb sistemit<\/a><\/noindex>, kjo \u00ebsht\u00eb nj\u00eb nga detyrat kryesore t\u00eb Kubernetes. Ne kemi p\u00ebrgatitur nj\u00eb p\u00ebrmbledhje t\u00eb nivelit t\u00eb lart\u00eb t\u00eb mekanizmave t\u00eb automatizimit horizontal dhe vertical, si dhe rekomandime p\u00ebr t'i p\u00ebrdorur ato n\u00eb m\u00ebnyr\u00eb efektive.<\/p>\n<p>Artikulli <noindex><a rel=\"nofollow\" href=\"https:\/\/www.magalix.com\/blog\/kubernetes-autoscaling-101\">Kubernetes Autoscaling 101: Cluster Autoscaler, Horizontal Autoscaler, dhe Vertical Pod Autoscaler<\/a><\/noindex> u p\u00ebrkthye nga ekipi q\u00eb implementoi automatizimin n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/containers\/\">Kubernetes aaS nga Mail.ru<\/a><\/noindex>.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Pse \u00ebsht\u00eb e r\u00ebnd\u00ebsishme t\u00eb mendoni p\u00ebr shkall\u00ebzimin <\/h2>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/blog\/kubernetes-for-much-stuff\">Kubernetes<\/a><\/noindex> \u2014 nj\u00eb mjet p\u00ebr menaxhimin e burimeve dhe orkestrimin. Sigurisht, \u00ebsht\u00eb mir\u00eb t\u00eb eksperimentoni me funksionalitetet e shk\u00eblqyera t\u00eb implementimit, monitorimit dhe menaxhimit t\u00eb pod\u00ebve (moduli pod \u2014 nj\u00eb grup kontejner\u00ebsh q\u00eb drejtohen n\u00eb p\u00ebrgjigje t\u00eb k\u00ebrkes\u00ebs). <\/p>\n<p>Megjithat\u00eb, duhet t\u00eb mendojm\u00eb edhe p\u00ebr k\u00ebto \u00e7\u00ebshtje:<\/p>\n<ol>\n<li>Si t\u00eb shkall\u00ebzohet modulet dhe aplikacionet?\n<\/li>\n<li>Si t\u00eb mbahen kontejner\u00ebt n\u00eb gjendje funksionale dhe efektive?\n<\/li>\n<li>Si t\u00eb reagoni ndaj ndryshimeve t\u00eb vazhdueshme n\u00eb kodin dhe ngarkesat e pun\u00ebs nga p\u00ebrdoruesit?\n<\/li>\n<\/ol>\n<p>\nKonfigurimi i klastereve Kubernetes p\u00ebr ekuilibrimin e burimeve dhe performanc\u00ebs mund t\u00eb jet\u00eb nj\u00eb sfid\u00eb e komplikuar, k\u00ebrkon njohuri ekspert\u00ebsh mbi funksionimin e brendsh\u00ebm t\u00eb Kubernetes. Ngarkesa n\u00eb aplikacionin tuaj ose sh\u00ebrbime mund t\u00eb ndryshoj\u00eb gjat\u00eb dit\u00ebs ose madje brenda nj\u00eb ore, prandaj ekuilibrimin duhet ta perceptoni si nj\u00eb proces t\u00eb vazhduesh\u00ebm.<\/p>\n<h2>Nivelet e automatizimit t\u00eb Kubernetes<\/h2>\n<p>\nAutomatizimi efektiv k\u00ebrkon koordinim midis dy niveleve: <\/p>\n<ol>\n<li>Niveli i pod'ave, duke p\u00ebrfshir\u00eb autoskalimin horizontal (Horizontal Pod Autoscaler, HPA) dhe autoskalimin vertikal (Vertical Pod Autoscaler, VPA). Ky autoskalim i burimeve ekzistuese p\u00ebr en\u00ebt tuaja.\n<\/li>\n<li>Niveli i klasterit, i cili menaxhohet nga sistemi i automatizimit t\u00eb klasterit (Cluster Autoscaler, CA), ai rrit ose ul numrin e nj\u00ebsive brenda klasterit.\n<\/li>\n<\/ol>\n<p><\/p>\n<h2>Moduli i automatizimit horizontal (HPA)<\/h2>\n<p>\nSi\u00e7 e thot\u00eb emri, HPA rrit numrin e kopjeve t\u00eb pod'ave. Si shkak p\u00ebr ndryshimin e numrit t\u00eb kopjeve, shumica e devops p\u00ebrdorin ngarkes\u00ebn mbi procesorin dhe memorjen. Megjithat\u00eb, mund t\u00eb autoskaloni sistemin n\u00eb baz\u00eb t\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/run-application\/horizontal-pod-autoscale\/#support-for-custom-metrics\">metrikave t\u00eb p\u00ebrdoruesve<\/a><\/noindex>, kombinimi i tyre <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/tasks\/run-application\/horizontal-pod-autoscale\/#support-for-multiple-metrics\">metrikave t\u00eb jashtme<\/a><\/noindex> apo madje <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/kubernetes-engine\/docs\/tutorials\/external-metrics-autoscaling\">Skema e nivelit t\u00eb lart\u00eb e funksionimit t\u00eb HPA:<\/a><\/noindex>.<\/p>\n<p>Schemi i pun\u00ebs HPA n\u00eb nj\u00eb nivel t\u00eb lart\u00eb:<\/p>\n<ol>\n<li>HPA monitoron vazhdimisht vlerat e metrikeve t\u00eb vendosura gjat\u00eb instalimit, me intervalin default prej 30 sekondash.\n<\/li>\n<li>HPA p\u00ebrpiqet t\u00eb rris\u00eb numrin e moduleve n\u00ebse arrihet kufiri i caktuar.\n<\/li>\n<li>HPA p\u00ebrdit\u00ebson numrin e replikave brenda menaxherit t\u00eb implementimit\/replikimit.\n<\/li>\n<li>Menaxheri i implementimit\/replikimit pastaj deployon t\u00eb gjitha modulet e nevojshme shtes\u00eb.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Tre nivele t\u00eb automatizmit n\u00eb Kubernetes: si t&#039;i p\u00ebrdorim ato me efikasitet\" src=\"\/wp-content\/uploads\/2020\/01\/e98534431712eb3303668446b0fe567b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>HPA aktivizon procesin e implementimit t\u00eb moduleve kur arrihet vlera kufitare e metrikeve.<\/i><\/p>\n<p>Kur p\u00ebrdorni HPA, merrni parasysh t\u00eb f\u00f6ljat:<\/p>\n<ul>\n<li>Intervali i kontrollit t\u00eb HPA default \u00ebsht\u00eb 30 sekonda. Ai p\u00ebrcaktohet nga flagu <i>horizontal-pod-autoscaler-sync-period<\/i> n\u00eb menaxherin e kontrollit.\n<\/li>\n<li>Gabimi relativ default \u00ebsht\u00eb 10%.\n<\/li>\n<li>Pas rritjes s\u00eb fundit t\u00eb numrit t\u00eb moduleve, HPA pret stabilizimin e metrikeve p\u00ebr tre minuta. Ky interval p\u00ebrcaktohet nga flagu <i>horizontal-pod-autoscaler-upscale-delay<\/i>.\n<\/li>\n<li>Pas uljes s\u00eb fundit t\u00eb numrit t\u00eb moduleve, HPA pret stabilizimin p\u00ebr pes\u00eb minuta. Ky interval p\u00ebrcaktohet nga flagu <i>horizontal-pod-autoscaler-downscale-delay<\/i>.\n<\/li>\n<li>HPA funksionon m\u00eb s\u00eb miri me objektet e implementimit, jo me menaxher\u00ebt e replikimeve. Automatizimi horizontal i skalimit nuk \u00ebsht\u00eb i pajtuesh\u00ebm me p\u00ebrdit\u00ebsimin e vazhduesh\u00ebm (rolling update) q\u00eb manipulon drejtp\u00ebrdrejt me menaxher\u00ebt e replikimit. Kur deployohet, numri i replikave varet drejtp\u00ebrdrejt nga objektet e implementimit.\n<\/li>\n<\/ul>\n<p><\/p>\n<h2>Autoskalimi vertikal i pod'ave<\/h2>\n<p>\nAutoskalimi vertikal (VPA) ndan m\u00eb shum\u00eb (apo m\u00eb pak) koh\u00eb procesori ose memorie p\u00ebr pod'ate ekzistues. P\u00ebrshtatet p\u00ebr pod'a me ruajtje t\u00eb gjendjes (stateful) ose pa t\u00eb (stateless), por kryesisht \u00ebsht\u00eb menduar p\u00ebr sh\u00ebrbimet stateful. Megjithat\u00eb, mund t\u00eb aplikoni VPA edhe p\u00ebr module pa ruajtje t\u00eb gjendjes, n\u00ebse nevojitet t\u00eb korrigjoni automatikisht sasin\u00eb e burimeve fillimisht t\u00eb ndara. <\/p>\n<p>VPA gjithashtu reagon ndaj ngjarjeve OOM (out of memory, munges\u00eb memorjeje). P\u00ebr t\u00eb ndryshuar koh\u00ebn e procesorit dhe sasin\u00eb e memories, k\u00ebrkohet ri-ngritja e pod'ave. Gjat\u00eb ri-ngritjes, VPA respekton buxhetin e shp\u00ebrndarjes (<noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/pods\/disruptions\/\">pods distribution budget, PDB<\/a><\/noindex>), p\u00ebr t\u00eb garantuar numrin minimal t\u00eb nevojsh\u00ebm t\u00eb moduleve. <\/p>\n<p>Ju mund t\u00eb vendosni nj\u00eb v\u00ebllim minimal dhe maksimal burimesh p\u00ebr secil\u00ebn modulin. N\u00eb k\u00ebt\u00eb m\u00ebnyr\u00eb, mund t\u00eb kufizoni v\u00ebllimin maksimal t\u00eb memories t\u00eb caktuar n\u00eb nj\u00eb kufi prej 8 GB. Kjo \u00ebsht\u00eb e dobishme, n\u00ebse nyjat aktuale nuk mund t\u00eb caktojn\u00eb m\u00eb shum\u00eb se 8 GB memorie p\u00ebr kontejnerin. Specifikimet e detajuara dhe mekanizmi i funksionimit jan\u00eb p\u00ebrshkruar n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/community\/blob\/master\/contributors\/design-proposals\/autoscaling\/vertical-pod-autoscaler.md\">wiki zyrtare VPA<\/a><\/noindex>.<\/p>\n<p>P\u00ebr m\u00eb tep\u00ebr, VPA ka nj\u00eb funksion interesant rekomandimesh (VPA Recommender). Ai ndjek p\u00ebrdorimin e burimeve dhe ngjarjet OOM t\u00eb t\u00eb gjitha moduleve, p\u00ebr t\u00eb sugjeruar vlera t\u00eb reja p\u00ebr memory dhe koh\u00ebn e procesorit bazuar n\u00eb nj\u00eb algorit\u00ebm inteligjent q\u00eb merr parasysh metrikat historike. Ka gjithashtu nj\u00eb nd\u00ebrfaqe API q\u00eb pranon nj\u00eb deshkriptor pod dhe kthen vlerat e sugjeruara p\u00ebr burimet.<\/p>\n<p>Duhet theksuar se VPA Recommender nuk ndjek \"kufirin\" e burimeve. Kjo mund t\u00eb \u00e7oj\u00eb n\u00eb monopolizimin e burimeve brenda nyjave nga moduli. \u00cbsht\u00eb m\u00eb mir\u00eb t\u00eb vendosni nj\u00eb kufi n\u00eb nivelin e hap\u00ebsir\u00ebs emrore p\u00ebr t\u00eb shmangur shpenzimin e madh t\u00eb memories ose koh\u00ebs s\u00eb procesorit.<\/p>\n<p>Schemi e nivelit t\u00eb lart\u00eb e funksionimit t\u00eb VPA:<\/p>\n<ol>\n<li>VPA kontrollon vazhdimisht vlerat e metrikave t\u00eb specifikuara gjat\u00eb instalimit, me nj\u00eb interval t\u00eb paracaktuar prej 10 sekondash.\n<\/li>\n<li>N\u00ebse arrihet pragu i caktuar, VPA p\u00ebrpiqet t\u00eb ndryshoj\u00eb sasin\u00eb e caktuar t\u00eb burimeve.\n<\/li>\n<li>VPA p\u00ebrdit\u00ebson sasin\u00eb e burimeve brenda kontrolluesit t\u00eb desplejimit\/replikimit.\n<\/li>\n<li>Kur modulat rinisin, t\u00eb gjitha burimet e reja aplikohen p\u00ebr instancat e krijuara.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Tre nivele t\u00eb automatizmit n\u00eb Kubernetes: si t&#039;i p\u00ebrdorim ato me efikasitet\" src=\"\/wp-content\/uploads\/2020\/01\/324702d5e36e9fcf45ced8b3f276db52.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>VPA shton sasin\u00eb e nevojshme t\u00eb burimeve <\/i><\/p>\n<p>Merrni parasysh k\u00ebto pika gjat\u00eb p\u00ebrdorimit t\u00eb VPA:<\/p>\n<ul>\n<li>Autoskalimi k\u00ebrkon ri-ngritje t\u00eb detyrueshme t\u00eb pod'ave. Kjo \u00ebsht\u00eb e nevojshme p\u00ebr t\u00eb shmangur pun\u00ebn e paq\u00ebndrueshme pas ndryshimeve. P\u00ebr t\u00eb siguruar stabilitet, modulet ri-ngriten dhe shp\u00ebrndahen n\u00eb nyje n\u00eb baz\u00eb t\u00eb burimeve t\u00eb reja t\u00eb ndara.\n<\/li>\n<li>VPA dhe HPA aktualisht jan\u00eb t\u00eb papajtuesh\u00ebm me nj\u00ebri-tjetrin dhe nuk mund t\u00eb funksionojn\u00eb n\u00eb t\u00eb nj\u00ebjtat pod'e. N\u00ebse po aplikoni t\u00eb dy mekanizmat e autoskalimit n\u00eb nj\u00eb klaster, sigurohuni q\u00eb konfigurimet nuk do t'u lejojn\u00eb atyre t\u00eb aktivizohen n\u00eb t\u00eb nj\u00ebjtat objekte.\n<\/li>\n<li>VPA konfiguron k\u00ebrkesat e konteiner\u00ebve p\u00ebr burime, duke u bazuar vet\u00ebm n\u00eb p\u00ebrdorimin e tyre t\u00eb kaluar dhe aktual. Ai nuk vendos kufij p\u00ebr p\u00ebrdorimin e burimeve. Mund t\u00eb ndodhin probleme me funksionimin e sakt\u00eb t\u00eb aplikacioneve, t\u00eb cilat fillojn\u00eb t\u00eb kapin gjithnj\u00eb e m\u00eb shum\u00eb burime, duke b\u00ebr\u00eb q\u00eb Kubernetes t\u00eb ndal\u00eb k\u00ebt\u00eb pod.\n<\/li>\n<li>VPA \u00ebsht\u00eb ende n\u00eb faz\u00ebn fillestare t\u00eb zhvillimit. B\u00ebni kujdes, sistemi mund t\u00eb p\u00ebrjetoj\u00eb disa ndryshime n\u00eb koh\u00ebt n\u00eb vijim. Mund t\u00eb lexoni mbi <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/autoscaler\/tree\/master\/vertical-pod-autoscaler#known-limitations-of-the-alpha-version\">kufizimet e njohura<\/a><\/noindex> dhe <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/community\/blob\/master\/contributors\/design-proposals\/autoscaling\/vertical-pod-autoscaler.md#future-work\">planin e zhvillimit<\/a><\/noindex>. Pra, n\u00eb planet \u00ebsht\u00eb realizimi i bashk\u00ebpunimit mes VPA dhe HPA, si dhe implementimi i moduleve me nj\u00eb politik\u00eb autoskalimi vertikal p\u00ebr ta (p.sh. nj\u00eb etiket\u00eb speciale 'requires VPA').\n<\/li>\n<\/ul>\n<p><\/p>\n<h2>Automatizimi i p\u00ebrmasave t\u00eb klasterit Kubernetes<\/h2>\n<p>\nAutomatizimi i p\u00ebrmasave t\u00eb klasterit (Cluster Autoscaler, CA) ndryshon numrin e nyjeve, duke u bazuar n\u00eb numrin e moduleve t\u00eb pritura pod. Sistemi kontrollon her\u00eb pas here n\u00ebse ka module t\u00eb pritura \u2014 dhe rrit numrin e klasterit, n\u00ebse k\u00ebrkohen m\u00eb shum\u00eb burime dhe n\u00ebse klasteri nuk kalon kufijt\u00eb e vendosur. CA bashk\u00ebpunon me ofruesin e sh\u00ebrbimeve cloud, duke k\u00ebrkuar nyje shtes\u00eb ose duke \u00e7liruar ato q\u00eb nuk jan\u00eb n\u00eb p\u00ebrdorim. Versioni i par\u00eb publik i CA u prezantua n\u00eb Kubernetes 1.8.<\/p>\n<p>Diagrami i pun\u00ebs s\u00eb CA:<\/p>\n<ol>\n<li>CA kontrollon n\u00ebse ka module n\u00eb gjendje pritjeje me nj\u00eb interval prej 10 sekondash, me t\u00eb drejt\u00eb.\n<\/li>\n<li>N\u00ebse nj\u00eb ose disa module jan\u00eb n\u00eb gjendje pritjeje p\u00ebr shkak t\u00eb munges\u00ebs s\u00eb burimeve t\u00eb disponueshme n\u00eb klaster p\u00ebr t'i shp\u00ebrndar\u00eb, ai p\u00ebrpiqet t\u00eb p\u00ebrgatis\u00eb nj\u00eb ose disa nyje shtes\u00eb.\n<\/li>\n<li>Kur ofruesi i sh\u00ebrbimeve cloud alokon nyj\u00ebn e nevojshme, ajo i bashkohet klasterit dhe \u00ebsht\u00eb gati p\u00ebr t\u00eb sh\u00ebrbyer moduleve pod.\n<\/li>\n<li>Planifikuesi i Kubernetes shp\u00ebrndan modul\u00ebt e pritur n\u00eb nyj\u00ebn e re. N\u00ebse pas k\u00ebsaj disa module akoma mbeten n\u00eb gjendje pritjeje, procesi p\u00ebrs\u00ebritet \u2014 dhe nyje t\u00eb reja shtohen n\u00eb klaster.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Tre nivele t\u00eb automatizmit n\u00eb Kubernetes: si t&#039;i p\u00ebrdorim ato me efikasitet\" src=\"\/wp-content\/uploads\/2020\/01\/2cd3c97f5d1b040b813940a4e804365e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Alokimi automatik i nyjeve t\u00eb klasterit n\u00eb cloud<\/i><\/p>\n<p>Merrni parasysh k\u00ebt\u00eb kur p\u00ebrdorni CA:<\/p>\n<ul>\n<li>CA garanton q\u00eb t\u00eb gjitha modul\u00ebt n\u00eb klaster kan\u00eb hap\u00ebsir\u00eb p\u00ebr t\u00eb funksionuar, pa marr\u00eb parasysh nivelin e ngarkes\u00ebs s\u00eb procesorit. P\u00ebr m\u00eb tep\u00ebr, ai p\u00ebrpiqet t\u00eb garantoj\u00eb q\u00eb n\u00eb klaster nuk ka nyje t\u00eb panevojshme.\n<\/li>\n<li>CA regjistron nevoj\u00ebn p\u00ebr shkall\u00ebzim pas rreth 30 sekondash.\n<\/li>\n<li>Pas q\u00eb nodi b\u00ebhet i panevojsh\u00ebm, CA n\u00eb m\u00ebnyr\u00eb t\u00eb paracaktuar pret 10 minuta p\u00ebrpara se t\u00eb shkall\u00ebzoj\u00eb sistemin.\n<\/li>\n<li>N\u00eb sistemin e automatikisht shkall\u00ebzues, ekziston koncepti i zgjeruesve (expanders). K\u00ebto jan\u00eb strategji t\u00eb ndryshme p\u00ebr p\u00ebrzgjedhjen e grupit t\u00eb nod\u00ebve n\u00eb t\u00eb cilin do t\u00eb shtohen t\u00eb rinjt\u00eb.\n<\/li>\n<li>Apliko me p\u00ebrgjegj\u00ebsi opsionin <i>cluster-autoscaler.kubernetes.io\/safe-to-evict (true)<\/i>. N\u00ebse vendosni shum\u00eb pod'e ose n\u00ebse shum\u00eb prej tyre jan\u00eb t\u00eb shp\u00ebrndara n\u00eb t\u00eb gjitha nyjet, do t\u00eb humbni n\u00eb mas\u00eb t\u00eb madhe mund\u00ebsin\u00eb p\u00ebr t\u00eb zvog\u00ebluar madh\u00ebsin\u00eb e klasterit.\n<\/li>\n<li>P\u00ebrdorni <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/concepts\/workloads\/pods\/disruptions\/\">PodDisruptionBudgets<\/a><\/noindex>, p\u00ebr t\u00eb parandaluar fshirjen e pod'ave, e cila mund t\u00eb shkaktoj\u00eb q\u00eb nj\u00eb pjes\u00eb e aplikacionit tuaj t\u00eb d\u00ebshtoj\u00eb plot\u00ebsisht.\n<\/li>\n<\/ul>\n<p><\/p>\n<h2>Si sistemet e automatikisht shkall\u00ebzuesit t\u00eb Kubernetes nd\u00ebrveprojn\u00eb me nj\u00ebra-tjetr\u00ebn<\/h2>\n<p>\nP\u00ebr nj\u00eb harmoni t\u00eb p\u00ebrsosur, duhen aplikuar autoskalimi dhe n\u00eb nivelin e pod'ave (HPA\/VPA), dhe n\u00eb nivelin e klasterit. Ato nd\u00ebrlidhen relativisht leht\u00eb me nj\u00ebra-tjetr\u00ebn:<\/p>\n<ol>\n<li>HPA ose VPA p\u00ebrdit\u00ebsojn\u00eb replikat e pod'ave ose burimet e caktuara p\u00ebr pod'\u00ebt ekzistues.\n<\/li>\n<li>N\u00ebse ka munges\u00eb nyjesh p\u00ebr shkak t\u00eb skalimit t\u00eb planifikuar, CA v\u00ebren se ka pod'\u00eb n\u00eb gjendje pritjeje.\n<\/li>\n<li>CA dedikon nod\u00eb t\u00eb reja.\n<\/li>\n<li>Modulet shp\u00ebrndahen mbi nod\u00ebt e reja.\n<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Tre nivele t\u00eb automatizmit n\u00eb Kubernetes: si t&#039;i p\u00ebrdorim ato me efikasitet\" src=\"\/wp-content\/uploads\/2020\/01\/09379f30f349a235bb26a670ad0d0bfd.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Sistemi i bashkuar i shkall\u00ebzimit t\u00eb Kubernetes<\/i><\/p>\n<h2>Gabimet tipike n\u00eb automatikisht shkall\u00ebzimin e Kubernetes<\/h2>\n<p>\nEkziston nj\u00eb num\u00ebr problematikave tipike me t\u00eb cilat p\u00ebrballen dev ops-\u00ebt kur p\u00ebrpiqen t\u00eb zbatojn\u00eb automatikisht shkall\u00ebzimin.<\/p>\n<p>HPA dhe VPA varen nga metrika dhe disa t\u00eb dh\u00ebna historike. N\u00ebse ndahen burime t\u00eb pamjaftueshme, modulet do t\u00eb mbyllen dhe nuk do t\u00eb jen\u00eb n\u00eb gjendje t\u00eb gjenerojn\u00eb metrika. N\u00eb k\u00ebt\u00eb rast, automatikisht shkall\u00ebzimi nuk do t\u00eb ndodh\u00eb kurr\u00eb.<\/p>\n<p>Operacioni i skalimit \u00ebsht\u00eb ndjesh\u00ebm ndaj koh\u00ebs. Ne duam q\u00eb modulet dhe klasteri t\u00eb shkall\u00ebzohen shpejt \u2014 p\u00ebrpara se p\u00ebrdoruesit t\u00eb v\u00ebrejn\u00eb ndonj\u00eb problem apo d\u00ebshtim. Prandaj, duhet t\u00eb merret parasysh koha mesatare e skalimit t\u00eb pod'ave dhe klasterit.<\/p>\n<p>Skenari ideal \u2014 4 minuta:<\/p>\n<ol>\n<li>30 sekonda. P\u00ebrdit\u00ebsimi i metrikes synuese: 30\u221260 sekonda.\n<\/li>\n<li>30 sekonda. HPA kontrollon vlerat e metrikave: 30 sekonda.\n<\/li>\n<li>M\u00eb pak se 2 sekonda. Modulet pod krijohen dhe kalojn\u00eb n\u00eb gjendje pritjeje: 1 sekond\u00eb.\n<\/li>\n<li>M\u00eb pak se 2 sekonda. CA sheh modulet n\u00eb pritje dhe d\u00ebrgon thirrjet p\u00ebr p\u00ebrgatitjen e nod\u00ebve: 1 sekond\u00eb.\n<\/li>\n<li>3 minuta. Ofruesi i cloud ndan nyjat. K8s pret deri sa ato t\u00eb jen\u00eb gati: deri n\u00eb 10 minuta (varet nga disa faktor\u00eb).\n<\/li>\n<\/ol>\n<p>\nSkenari m\u00eb i keq (m\u00eb real) \u2014 12 minuta:<\/p>\n<ol>\n<li>30 sekonda. P\u00ebrdit\u00ebsimi i metrikave q\u00ebllimore.\n<\/li>\n<li>30 sekonda. HPA kontrollon vlerat e metrikave.\n<\/li>\n<li>M\u00eb pak se 2 sekonda. Modul\u00ebt pod krijohen dhe kalojn\u00eb n\u00eb gjendjen prit\u00ebse.\n<\/li>\n<li>M\u00eb pak se 2 sekonda. CA sheh modul\u00ebt n\u00eb pritje dhe d\u00ebrgon thirrje p\u00ebr p\u00ebrgatitjen e nyjeve.\n<\/li>\n<li>10 minuta. Ofruesi i cloud ndan nyjat. K8s pret deri sa ato t\u00eb jen\u00eb gati. Koha e pritjes varet nga disa faktor\u00eb, si vonesa e ofruesit, vonesa e OS, funksionimi i mjeteve ndihm\u00ebse.\n<\/li>\n<\/ol>\n<p>\nMos i ngat\u00ebrroni mekanizmat e skalimit t\u00eb ofruesve t\u00eb cloud me CA-n\u00eb ton\u00eb. E fundit funksionon brenda klasterit Kubernetes, nd\u00ebrsa mekanizmi i ofruesit t\u00eb cloud bazohet n\u00eb shp\u00ebrndarjen e nyjeve. Ai nuk di se \u00e7far\u00eb ndodh me pod'\u00ebt tuaj ose aplikacionin. K\u00ebto sisteme veprojn\u00eb paralelisht. <\/p>\n<h2>Si t\u00eb menaxhoni shkall\u00ebzimin n\u00eb Kubernetes<\/h2>\n<p><\/p>\n<ol>\n<li>Kubernetes \u00ebsht\u00eb nj\u00eb mjet p\u00ebr menaxhimin e burimeve dhe orkestrimin. Operacionet e menaxhimit t\u00eb pod'ave dhe burimeve t\u00eb klasterit jan\u00eb nj\u00eb pik\u00eb ky\u00e7e n\u00eb zot\u00ebrimin e Kubernetes.\n<\/li>\n<li>Merrni parasysh logjik\u00ebn e shkall\u00ebzueshm\u00ebris\u00eb t\u00eb pod'ave n\u00eb raport me HPA dhe VPA.\n<\/li>\n<li>CA duhet t\u00eb p\u00ebrdoret vet\u00ebm n\u00ebse kuptoni mir\u00eb nevojat e pod'ave dhe kontejner\u00ebve tuaj.\n<\/li>\n<li>P\u00ebr konfigurimin optimal t\u00eb klasterit, duhet t\u00eb kuptoni se si sistemet e ndryshme t\u00eb shkall\u00ebzimit funksionojn\u00eb s\u00eb bashku.\n<\/li>\n<li>Kur vler\u00ebsoni koh\u00ebn e shkall\u00ebzimit, mbani n\u00eb mend skenar\u00ebt m\u00eb t\u00eb keq dhe m\u00eb t\u00eb mir\u00eb.\n<\/li>\n<\/ol>\n<p>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/484344\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043e\u0441\u0432\u043e\u0435\u043d\u0438\u044f Kubernetes \u043d\u0443\u0436\u043d\u043e \u0437\u043d\u0430\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432: \u043f\u043e \u0441\u043b\u043e\u0432\u0430\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u044d\u0442\u043e \u043e\u0434\u043d\u0430 \u0438\u0437 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 Kubernetes. \u041c\u044b \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0432\u044b\u0441\u043e\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 \u043e\u0431\u0437\u043e\u0440 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u043e\u0432 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0438 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438, \u043a\u0430\u043a \u0438\u0445 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c. \u0421\u0442\u0430\u0442\u044c\u044e Kubernetes Autoscaling 101: Cluster Autoscaler, Horizontal Autoscaler, and Vertical Pod Autoscaler \u043f\u0435\u0440\u0435\u0432\u0435\u043b\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-55712","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0422\u0440\u0438 \u0443\u0440\u043e\u0432\u043d\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 Kubernetes: \u043a\u0430\u043a \u0438\u0445 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-26T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:51+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Tre nivele t\u00eb automatikisht shkall\u00ebzimit n\u00eb Kubernetes: si t'i p\u00ebrdorni ato n\u00eb m\u00ebnyr\u00eb efektive | ProHoster","description":"P\u00ebr t\u00eb plot\u00ebsuar.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0422\u0440\u0438 \u0443\u0440\u043e\u0432\u043d\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 Kubernetes: \u043a\u0430\u043a \u0438\u0445 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c | ProHoster","og:description":"\u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e.","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/tri-urovnya-avtomasshtabirovaniya-v-kubernetes-kak-ih-effektivno-ispolzovat","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-01-26T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:51+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55712","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:38:31","updated":"2022-09-29 14:33:55","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/55712","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=55712"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/55712\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=55712"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=55712"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=55712"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}