{"id":82920,"date":"2020-05-26T13:42:37","date_gmt":"2020-05-26T11:42:37","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov"},"modified":"2020-05-26T13:42:37","modified_gmt":"2020-05-26T11:42:37","slug":"luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","title":{"rendered":"Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufijve t\u00eb burimeve","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502052\/\">Praktikat m\u00eb t\u00eb mira Kubernetes. Krijimi i konteiner\u00ebve t\u00eb vegj\u00ebl<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502320\/\">Praktikat m\u00eb t\u00eb mira Kubernetes. Organizimi i Kubernetes me hap\u00ebsira emri<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502430\/\">Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Verifikimi i jet\u00ebs s\u00eb Kubernetes me ndihm\u00ebn e testeve Readiness dhe Liveness<\/a><\/noindex><\/p>\n<p>P\u00ebr \u00e7do burim Kubernetes, ka mund\u00ebsin\u00eb p\u00ebr t\u00eb vendosur dy lloje t\u00eb k\u00ebrkesave \u2014 Requests dhe Limits. E para p\u00ebrshkruan k\u00ebrkesat minimale p\u00ebr disponueshm\u00ebrin\u00eb e burimeve t\u00eb lira n\u00eb nod, t\u00eb nevojshme p\u00ebr t\u00eb nisur nj\u00eb kontejner ose pod, e dyta kufizon rrept\u00ebsisht burimet e disponueshme p\u00ebr kontejnerin. <\/p>\n<p>Kur Kubernetes planifikon nj\u00eb pod, \u00ebsht\u00eb shum\u00eb e r\u00ebnd\u00ebsishme q\u00eb kontejner\u00ebt t\u00eb ken\u00eb mjaft burime p\u00ebr t\u00eb funksionuar normalisht. N\u00ebse planifikoni t\u00eb implementoni nj\u00eb aplikacion t\u00eb madh n\u00eb nj\u00eb nod me burime t\u00eb kufizuara, \u00ebsht\u00eb shum\u00eb e mundur q\u00eb ai t\u00eb mos funksionoj\u00eb p\u00ebr shkak se nodi e mbaron memorien ose i mungon fuqia e procesorit. N\u00eb k\u00ebt\u00eb artikull do t\u00eb shqyrtojm\u00eb se si mund t\u00eb zgjidhni problemet e munges\u00ebs s\u00eb fuqis\u00eb kompjuterike n\u00ebp\u00ebrmjet k\u00ebrkesave p\u00ebr burime dhe kufizimeve.<\/p>\n<p>K\u00ebrkesat Requests dhe kufizimet Limits jan\u00eb mekanizma q\u00eb Kubernetes p\u00ebrdor p\u00ebr t\u00eb menaxhuar burime t\u00eb tilla si procesori dhe memoria. K\u00ebrkesat jan\u00eb ato, p\u00ebr shkak t\u00eb t\u00eb cilave kontejneri merr garanci p\u00ebr burimin e k\u00ebrkuar. N\u00ebse nj\u00eb kontejner k\u00ebrkon nj\u00eb burim, Kubernetes do ta planifikoj\u00eb at\u00eb vet\u00ebm n\u00eb nodin q\u00eb \u00ebsht\u00eb n\u00eb gjendje ta ofroj\u00eb. Kufizimet Limits kontrollojn\u00eb q\u00eb burimet e k\u00ebrkuara nga kontejneri t\u00eb mos tejkalojn\u00eb kurr\u00eb nj\u00eb vler\u00eb t\u00eb caktuar.<\/p>\n<p><img decoding=\"async\" alt=\"Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufijve t\u00eb burimeve\" src=\"\/wp-content\/uploads\/2020\/05\/047fc1c3dddef1f33be78616ad70d62f.png\" style=\"display:block;margin: 0 auto;\" \/><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Kontejneri mund t\u00eb rris\u00eb fuqit\u00eb kompjuterike vet\u00ebm deri n\u00eb nj\u00eb kufi t\u00eb caktuar, pas s\u00eb cil\u00ebs do t\u00eb kufizohet. Le t\u00eb shohim se si funksionon kjo. Pra, ka dy lloje burimesh \u2014 procesori dhe memoria. Planifikuesi i Kubernetes p\u00ebrdor t\u00eb dh\u00ebnat p\u00ebr k\u00ebto burime p\u00ebr t\u00eb zbuluar se ku t\u00eb nis\u00eb pod-et tuaja. Specifikimi tipik i burimeve p\u00ebr nj\u00eb pod duket k\u00ebshtu.<\/p>\n<p><img decoding=\"async\" alt=\"Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufijve t\u00eb burimeve\" src=\"\/wp-content\/uploads\/2020\/05\/84f1212f7098d25273217d4218d661f2.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00c7do kontejner n\u00eb pod mund t\u00eb vendos\u00eb k\u00ebrkesat dhe kufizimet e tij t\u00eb veta, dhe t\u00eb gjitha k\u00ebto jan\u00eb aditive. Burimet e CPU-s\u00eb p\u00ebrcaktohen n\u00eb milikra. N\u00ebse kontejneri juaj ka nevoj\u00eb p\u00ebr dy b\u00ebrthama t\u00eb plota p\u00ebr ekzekutimin, vendosni vler\u00ebn 2000m. N\u00ebse kontejneri ka nevoj\u00eb vet\u00ebm p\u00ebr fuqin\u00eb e 1\/4 b\u00ebrthame, vlera do t\u00eb jet\u00eb 250m. Mbani parasysh se n\u00ebse caktoni nj\u00eb vler\u00eb p\u00ebr burimet e CPU-s\u00eb m\u00eb t\u00eb madhe se numri i b\u00ebrthamave t\u00eb nodit m\u00eb t\u00eb madh, at\u00ebher\u00eb ekzekutimi i pod-it tuaj nuk do t\u00eb planifikohet fare. Nj\u00eb situat\u00eb e ngjashme do t\u00eb ndodhi n\u00ebse keni nj\u00eb pod q\u00eb ka nevoj\u00eb p\u00ebr kat\u00ebr b\u00ebrthama, nd\u00ebrsa klasteri Kubernetes p\u00ebrb\u00ebhet vet\u00ebm nga dy makineri virtuale kryesore.<\/p>\n<p>N\u00ebse aplikacioni juaj nuk \u00ebsht\u00eb zhvilluar posa\u00e7\u00ebrisht p\u00ebr t\u00eb shfryt\u00ebzuar p\u00ebrfitimet e shum\u00eb b\u00ebrthamave (duke pasur parasysh aplikacione si llogaritjet shkencore komplekse dhe operacionet me databaza), praktik\u00ebn m\u00eb t\u00eb mir\u00eb \u00ebsht\u00eb t\u00eb vendosni K\u00ebrkesat e CPU-s\u00eb n\u00eb 1 ose m\u00eb pak, duke vazhduar me ekzekutimin e nj\u00eb numri m\u00eb t\u00eb madh replikash p\u00ebr ndryshueshm\u00ebri. Ky zgjidhje i ofron sistemit fleksibilitet dhe besueshm\u00ebri m\u00eb t\u00eb madhe.<\/p>\n<p>Kur b\u00ebhet fjal\u00eb p\u00ebr kufizimet e CPU-s\u00eb, gjith\u00e7ka b\u00ebhet m\u00eb interesante, pasi ajo konsiderohet nj\u00eb burim shtyp\u00ebs. N\u00ebse aplikacioni juaj fillon t\u00eb afroj\u00eb kufirin e fuqis\u00eb s\u00eb CPU-s\u00eb, Kubernetes do t\u00eb filloj\u00eb t\u00eb ngadal\u00ebsoj\u00eb kontejnerin tuaj duke p\u00ebrdorur CPU Throttling \u2014 uljen e frekuenc\u00ebs s\u00eb procesorit. Kjo do t\u00eb thot\u00eb se CPU do t\u00eb jet\u00eb artificialisht e kufizuar, duke i ofruar aplikacionit potencialisht nj\u00eb performanc\u00eb m\u00eb t\u00eb dob\u00ebt, megjithat\u00eb procesi nuk do t\u00eb ndalet ose t\u00eb d\u00ebshtoj\u00eb. <\/p>\n<p>Burimet e memorjes p\u00ebrcaktohen n\u00eb byte. N\u00eb p\u00ebrgjith\u00ebsi, vlera n\u00eb cil\u00ebsimet matet n\u00eb mebibyte (MiB), por mund t\u00eb caktoni \u00e7do vler\u00eb, nga byte deri n\u00eb petabyte. K\u00ebtu ka ndodhi e nj\u00ebjt\u00eb si me CPU-n\u00eb \u2014 n\u00ebse vendosni nj\u00eb k\u00ebrkes\u00eb p\u00ebr sasi memorjeje q\u00eb tejkalon kapacitetin e memorjes n\u00eb nodet tuaja, ekzekutimi i k\u00ebtij pod-i nuk do t\u00eb planifikohet. Por ndryshe nga burimet e CPU-s\u00eb, memoria nuk \u00ebsht\u00eb e kompresueshme, sepse nuk ka asnj\u00eb m\u00ebnyr\u00eb p\u00ebr t\u00eb kufizuar p\u00ebrdorimin e saj. Prandaj, ekzekutimi i kontejnerit do t\u00eb ndalet, sapo ai t\u00eb kaloj\u00eb kufirin e memorjes s\u00eb caktuar.<\/p>\n<p><img decoding=\"async\" alt=\"Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufijve t\u00eb burimeve\" src=\"\/wp-content\/uploads\/2020\/05\/a2b372ad9de7e065b435dae87ee62708.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00cbsht\u00eb e r\u00ebnd\u00ebsishme t\u00eb mbani mend se nuk mund t\u00eb konfiguroni k\u00ebrkesa q\u00eb tejkalojn\u00eb madh\u00ebsin\u00eb e burimeve q\u00eb nodet tuaja mund t\u00eb ofrojn\u00eb. Karakteristikat e burimeve t\u00eb p\u00ebrbashk\u00ebta p\u00ebr makinat virtuale GKE mund t\u00eb gjenden n\u00eb lidhjet e vendosura n\u00ebn k\u00ebt\u00eb video.<\/p>\n<p>N\u00eb nj\u00eb bot\u00eb ideale, konfigurimet e kontenier\u00ebve n\u00ebn default do t\u00eb ishin mjaft t\u00eb mjaftueshme q\u00eb pun\u00ebt t\u00eb zhvilloheshin pa probleme. Por bota reale nuk \u00ebsht\u00eb e till\u00eb, njer\u00ebzit mund t\u00eb harrojn\u00eb leht\u00ebsisht t\u00eb konfigurojn\u00eb p\u00ebrdorimin e burimeve ose haker\u00ebt do t\u00eb vendosin k\u00ebrkesa dhe kufij q\u00eb tejkalojn\u00eb kapacitetet reale t\u00eb infrastruktur\u00ebs. P\u00ebr t\u00eb parandaluar zhvillimin e skenar\u00ebve t\u00eb till\u00eb, mund t\u00eb konfigurohen kuota burimesh ResourceQuota dhe intervalet e kufijve LimitRange.<\/p>\n<p>Pas krijimit t\u00eb hap\u00ebsirave t\u00eb emrave, ato mund t\u00eb bllokohen p\u00ebrmes kuotave. P\u00ebr shembull, n\u00ebse keni hap\u00ebsira emrash prodhimi dhe zhvillimi, p\u00ebrdoret nj\u00eb model ku kuotat p\u00ebr prodhimin nuk ekzistojn\u00eb fare, nd\u00ebrsa kuotat p\u00ebr zhvillimin jan\u00eb shum\u00eb strikte. Kjo lejon q\u00eb prodhimi, n\u00eb rast t\u00eb nj\u00eb rritjeje t\u00eb papritur t\u00eb trafikut, t\u00eb marr\u00eb t\u00eb gjith\u00eb burimin e kaluar, duke bllokuar plot\u00ebsisht zhvillimin.<\/p>\n<p>Kuota e burimeve mund t\u00eb duket ashtu. N\u00eb k\u00ebt\u00eb shembull, ka 4 sekcione \u2013 k\u00ebto jan\u00eb 4 rreshta t\u00eb posht\u00ebm t\u00eb kodit.<\/p>\n<p><img decoding=\"async\" alt=\"Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufijve t\u00eb burimeve\" src=\"\/wp-content\/uploads\/2020\/05\/569f4ddde6ad46c707e91cc05947fc6b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLe t\u00eb shqyrtojm\u00eb secilin prej tyre. Requests.cpu \u00ebsht\u00eb maksimalja e numrit t\u00eb kombinuar t\u00eb k\u00ebrkesave t\u00eb fuqis\u00eb procesorit q\u00eb mund t\u00eb vijn\u00eb nga t\u00eb gjith\u00eb kontenier\u00ebt e hap\u00ebsir\u00ebs s\u00eb emrave. N\u00eb k\u00ebt\u00eb shembull, mund t\u00eb keni 50 kontenier\u00eb me k\u00ebrkesa prej 10m, pes\u00eb kontenier\u00eb me k\u00ebrkesa prej 100m ose thjesht nj\u00eb kontenier me k\u00ebrkes\u00eb 500m. Pavar\u00ebsisht se sa shum\u00eb \u00ebsht\u00eb shuma e requests.cpu t\u00eb k\u00ebsaj hap\u00ebsire emri, do t\u00eb jet\u00eb n\u00eb rregull derisa ajo t\u00eb jet\u00eb m\u00eb pak se 500m.<\/p>\n<p>K\u00ebrkesa e memories requests.memory \u00ebsht\u00eb sasia maksimale e k\u00ebrkesave t\u00eb kombinuara t\u00eb memories q\u00eb mund t\u00eb ken\u00eb t\u00eb gjith\u00eb kontenier\u00ebt n\u00eb hap\u00ebsir\u00ebn e emrave. Si n\u00eb rastin e m\u00ebparsh\u00ebm, mund t\u00eb keni 50 kontenier\u00eb t\u00eb 2 mib, pes\u00eb kontenier\u00eb t\u00eb 20 Mib ose nj\u00eb t\u00eb vet\u00ebm me 100 Mib, derisa shuma totale e memories s\u00eb k\u00ebrkuar n\u00eb hap\u00ebsir\u00ebn e emrave t\u00eb mbetet n\u00ebn 100 mebibajt\u00eb.<\/p>\n<p>Limits.cpu \u00ebsht\u00eb vlera maksimale e kombinuar e fuqis\u00eb procesorit q\u00eb mund t\u00eb p\u00ebrdorin t\u00eb gjith\u00eb kontenier\u00ebt e hap\u00ebsir\u00ebs s\u00eb emrave. Mund t\u00eb mendohet si kufiri i k\u00ebrkesave t\u00eb fuqis\u00eb procesorit.<\/p>\n<p>Finalmente, limits.memory \u00ebsht\u00eb sasia maksimale e memories totale q\u00eb mund t\u00eb p\u00ebrdorin t\u00eb gjitha kontejner\u00ebt n\u00eb hap\u00ebsir\u00ebn e emrave. Ky kufizim \u00ebsht\u00eb p\u00ebr k\u00ebrkesat totale t\u00eb memories.<br \/>\nPra, me parazgjedhje, kontejner\u00ebt n\u00eb klusterin Kubernetes funksionojn\u00eb me burime kompjuterike t\u00eb pap\u00ebrcaktuar. Me an\u00eb t\u00eb kuotave t\u00eb burimeve, adminstrator\u00ebt e klusterit mund t\u00eb kufizojn\u00eb konsumimin e burimeve dhe krijimin e tyre bazuar n\u00eb hap\u00ebsirat e emrave. N\u00eb hap\u00ebsir\u00ebn e emrave, moduli pod ose kontejneri mund t\u00eb konsumojn\u00eb aq kapacitet CPU dhe memorje sa p\u00ebrcaktohet nga kuota e burimeve t\u00eb hap\u00ebsirave t\u00eb emrave. Sidoqoft\u00eb, ekziston shqet\u00ebsimi se nj\u00eb pod ose kontejner mund t\u00eb monopolizoj\u00eb t\u00eb gjitha burimet n\u00eb dispozicion. P\u00ebr t\u00eb parandaluar nj\u00eb situat\u00eb t\u00eb till\u00eb, p\u00ebrdoret kufiri i gam\u00ebs limit Range \u2013 nj\u00eb politik\u00eb kufizuese p\u00ebr shp\u00ebrndarjen e burimeve (p\u00ebr podet ose kontejner\u00ebt) n\u00eb hap\u00ebsir\u00ebn e emrave.<\/p>\n<p>Gama e limitit ofron kufizime q\u00eb mund t\u00eb:<\/p>\n<ul>\n<li>sigurojn\u00eb p\u00ebrdorimin minimal dhe maksimal t\u00eb burimeve kompjuterike p\u00ebr \u00e7do modul ose kontejner n\u00eb hap\u00ebsir\u00ebn e emrave;<\/li>\n<li>kufizojn\u00eb k\u00ebrkesat minimale dhe maksimale p\u00ebr ruajtje Storage Request p\u00ebr \u00e7do PersistentVolumeClaim n\u00eb hap\u00ebsir\u00ebn e emrave;<\/li>\n<li>kufizojn\u00eb n\u00eb m\u00ebnyr\u00eb t\u00eb detyruar raportin midis k\u00ebrkes\u00ebs Request dhe kufizimeve Limit p\u00ebr burimin n\u00eb hap\u00ebsir\u00ebn e emrave;<\/li>\n<li>vendosin Requests\/Limits si parazgjedhje p\u00ebr burimet kompjuterike n\u00eb hap\u00ebsir\u00ebn e emrave dhe i aplikojn\u00eb ato automatikisht n\u00eb kontejner\u00ebt gjat\u00eb ekzekutimit.<\/li>\n<\/ul>\n<p>\nK\u00ebshtu, ju mund t\u00eb krijoni nj\u00eb gam\u00eb kufizimi n\u00eb hap\u00ebsir\u00ebn tuaj t\u00eb emrave. Ndryshe nga kuota, e cila shtrihen n\u00eb t\u00eb gjith\u00eb hap\u00ebsir\u00ebn e emrave, Limit Range p\u00ebrdoret p\u00ebr kontejner\u00eb t\u00eb ve\u00e7ant\u00eb. Kjo mund t\u00eb parandaloj\u00eb krijimin e kontejner\u00ebve shum\u00eb t\u00eb vegj\u00ebl ose, nga ana tjet\u00ebr, shum\u00eb t\u00eb m\u00ebdhenj brenda hap\u00ebsir\u00ebs s\u00eb emrave. Gama e kufizimit Limit Range mund t\u00eb dukej k\u00ebshtu. <\/p>\n<p><img decoding=\"async\" alt=\"Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufijve t\u00eb burimeve\" src=\"\/wp-content\/uploads\/2020\/05\/3fb358788910ca21e267a887032cdf1a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAshtu si\u00e7 kemi par\u00eb n\u00eb rastin e m\u00ebparsh\u00ebm, k\u00ebtu mund t\u00eb dallojm\u00eb 4 seksione. Le t\u00eb shqyrtojm\u00eb secil\u00ebn.<br \/>\nN\u00eb seksionin default, vendosen kufizimet si parazgjedhje p\u00ebr kontejnerin n\u00eb pod. N\u00ebse i jepni k\u00ebto vlera n\u00eb gam\u00ebn e kufizimit, \u00e7do kontejner p\u00ebr t\u00eb cilin k\u00ebto vlera nuk jan\u00eb vendosur shprehimisht do t\u00eb udh\u00ebhiqet nga vlerat si parazgjedhje.<\/p>\n<p>N\u00eb seksionin e k\u00ebrkes\u00ebs p\u00ebr parazgjedhje defaultRequest jan\u00eb t\u00eb konfiguruara k\u00ebrkesat e parazgjedhura p\u00ebr kontejnerin n\u00eb pod. Po ashtu, n\u00eb qoft\u00eb se i vendosni k\u00ebto vlera brenda kufijve t\u00eb lejuar, \u00e7do kontejner p\u00ebr t\u00eb cilin k\u00ebto parametra nuk jan\u00eb em\u00ebrtuar qart\u00eb, do t\u00eb p\u00ebrdor\u00eb k\u00ebto vlera si parazgjedhje.<\/p>\n<p>N\u00eb seksionin max jan\u00eb p\u00ebrcaktuar kufijt\u00eb maksimale q\u00eb mund t\u00eb vendosen p\u00ebr kontejnerin n\u00eb pod. Vlerat n\u00eb seksionin default dhe kufijt\u00eb p\u00ebr kontejnerin nuk mund t\u00eb vendosen m\u00eb lart se ky kufi. \u00cbsht\u00eb e r\u00ebnd\u00ebsishme t\u00eb theksohet se n\u00ebse \u00ebsht\u00eb vendosur nj\u00eb vler\u00eb max dhe seksioni default mungon, at\u00ebher\u00eb vlera maksimale b\u00ebhet vlera e parazgjedhur.<\/p>\n<p>N\u00eb seksionin min jan\u00eb p\u00ebrcaktuar k\u00ebrkesat minimale q\u00eb mund t\u00eb vendosen p\u00ebr kontejnerin n\u00eb pod. N\u00eb k\u00ebt\u00eb rast, vlerat n\u00eb seksionin default dhe k\u00ebrkesat p\u00ebr kontejnerin nuk mund t\u00eb vendosen m\u00eb posht\u00eb se ky kufi.<\/p>\n<p>Po ashtu, \u00ebsht\u00eb e r\u00ebnd\u00ebsishme t\u00eb theksohet se n\u00ebse kjo vler\u00eb \u00ebsht\u00eb vendosur, vlera default \u2013 jo, at\u00ebher\u00eb vlera minimale b\u00ebhet k\u00ebrkesa e parazgjedhur.<\/p>\n<p>N\u00eb p\u00ebrfundim, k\u00ebto k\u00ebrkesa burimesh p\u00ebrdoren nga planifikuesi Kubernetes p\u00ebr t\u00eb realizuar ngarkesat tuaja t\u00eb pun\u00ebs. P\u00ebr t'i konfiguruar sakt\u00ebsisht kontejner\u00ebt tuaj, \u00ebsht\u00eb shum\u00eb e r\u00ebnd\u00ebsishme t\u00eb kuptoni si funksionon kjo. Le t\u00eb supozojm\u00eb se doni t\u00eb nisni disa modul n\u00eb klasterin tuaj. Duke supozuar se specifikimet e podit jan\u00eb valide, n\u00eb planifikimin Kubernetes do t\u00eb p\u00ebrdoret balancimi ciklik p\u00ebr t\u00eb zgjedhur nodin p\u00ebr t\u00eb realizuar ngarkes\u00ebn e pun\u00ebs.<\/p>\n<p><img decoding=\"async\" alt=\"Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufijve t\u00eb burimeve\" src=\"\/wp-content\/uploads\/2020\/05\/29abd097fc0158dfbb585c4617036ccf.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKubernetes do t\u00eb kontrolloj\u00eb n\u00ebse ka mjaft burime n\u00eb nodin Node 1 p\u00ebr t\u00eb p\u00ebrmbushur k\u00ebrkesat e kontejner\u00ebve t\u00eb podit, dhe n\u00ebse jo, do t\u00eb kaloj\u00eb n\u00eb nodin tjet\u00ebr. N\u00ebse asnj\u00eb nga nodet n\u00eb sistem nuk \u00ebsht\u00eb n\u00eb gjendje t\u00eb p\u00ebrmbush\u00eb k\u00ebrkesat, podet do t\u00eb kalojn\u00eb n\u00eb gjendjen e pritjes Pending state. Me funksione t\u00eb tilla si autoskalimi i nod\u00ebve, GKE mund t\u00eb identifikoj\u00eb automatikisht gjendjen e pritjes dhe t\u00eb krijoj\u00eb disa nod\u00eb shtes\u00eb. <\/p>\n<p>N\u00ebse m\u00eb von\u00eb ndodhin kapacitete t\u00eb tep\u00ebrta n\u00eb nod\u00eb, funksioni i autoskalimit do t\u00eb reduktoj\u00eb numrin e tyre p\u00ebr t'ju kursyer para. Kjo \u00ebsht\u00eb arsyeja pse Kubernetes planifikon podet mbi baz\u00ebn e k\u00ebrkesave. Megjithat\u00eb, kufiri mund t\u00eb jet\u00eb m\u00eb i lart\u00eb se k\u00ebrkesat, dhe n\u00eb disa raste, nodi mund t\u00eb shteroj\u00eb faktikisht burimet. Ne e quajm\u00eb k\u00ebt\u00eb gjendje gjendje t\u00eb shfryt\u00ebzimit t\u00eb tep\u00ebrt overcommitment state.<\/p>\n<p><img decoding=\"async\" alt=\"Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufijve t\u00eb burimeve\" src=\"\/wp-content\/uploads\/2020\/05\/995c906880f09734c4765519f1f2465d.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSi duhet, n\u00ebse flasim p\u00ebr procesorin, Kubernetes do t\u00eb filloj\u00eb t\u00eb kufizoj\u00eb pod-\u00ebt. \u00c7do pod do t\u00eb marr\u00eb sa i ka k\u00ebrkuar, por n\u00ebse nuk arrin limitin, at\u00ebher\u00eb do t\u00eb filloj\u00eb aplikimi i tronditjes. <\/p>\n<p>Sa i p\u00ebrket burimeve t\u00eb memories, k\u00ebtu Kubernetes \u00ebsht\u00eb i detyruar t\u00eb marr\u00eb vendime n\u00eb lidhje me cil\u00ebt pod-\u00eb t\u00eb fshij\u00eb dhe cil\u00ebt t\u00eb ruaj\u00eb, derisa t\u00eb liroj\u00eb burimet e sistemit, p\u00ebrndryshe e gjith\u00eb sistemi do t\u00eb p\u00ebrfundoj\u00eb.<\/p>\n<p>Le t\u00eb imagjinojm\u00eb nj\u00eb skenar ku keni nj\u00eb makin\u00eb q\u00eb ka shpenzuar limitin e memories \u2013 si do t\u00eb veproj\u00eb Kubernetes n\u00eb k\u00ebt\u00eb rast? <\/p>\n<p>Kubernetes do t\u00eb k\u00ebrkoj\u00eb pod-\u00ebt q\u00eb p\u00ebrdorin m\u00eb shum\u00eb burime se sa kan\u00eb k\u00ebrkuar. Pra, n\u00ebse kontejner\u00ebt tuaj s'kan\u00eb asnj\u00eb k\u00ebrkes\u00eb Requests, kjo do t\u00eb thot\u00eb se p\u00ebr shkak se ata nuk kan\u00eb k\u00ebrkuar asgj\u00eb, ata po p\u00ebrdorin m\u00eb shum\u00eb se sa kan\u00eb k\u00ebrkuar! K\u00ebta kontejner\u00eb b\u00ebhen kandidat\u00ebt kryesor\u00eb p\u00ebr deaktivizim. Kandidat\u00ebt e ardhsh\u00ebm jan\u00eb kontejner\u00ebt q\u00eb kan\u00eb p\u00ebrmbushur t\u00eb gjitha k\u00ebrkesat e tyre, por q\u00eb ende jan\u00eb n\u00ebn limitin maksimal. <\/p>\n<p>Prandaj, n\u00ebse Kubernetes gjen disa pod-\u00eb q\u00eb kan\u00eb tejkaluar parametrat e k\u00ebrkesave t\u00eb tyre, ai do t'i rendit\u00eb ato sipas prioritetit dhe pastaj do t\u00eb fshij\u00eb modulet me prioritet m\u00eb t\u00eb ul\u00ebt. N\u00ebse t\u00eb gjith\u00eb modulat kan\u00eb t\u00eb nj\u00ebjtin prioritet, Kubernetes do t\u00eb nd\u00ebrpres\u00eb pun\u00ebn e pod-\u00ebve q\u00eb kan\u00eb tejkaluar k\u00ebrkesat e tyre m\u00eb shum\u00eb se t\u00eb tjer\u00ebt. <\/p>\n<p>N\u00eb raste shum\u00eb t\u00eb rralla, Kubernetes mund t\u00eb nd\u00ebrpres\u00eb pun\u00ebn e pod-\u00ebve q\u00eb ende jan\u00eb brenda k\u00ebrkesave t\u00eb tyre. Kjo mund t\u00eb ndodh\u00eb kur komponent\u00eb kritik\u00eb t\u00eb sistemit si agjenti Kubelet ose Docker fillojn\u00eb t\u00eb konsumohet m\u00eb shum\u00eb burime se sa ishin rezervuar p\u00ebr ta. <br \/>\nPra, n\u00eb fazat e para t\u00eb funksionimit t\u00eb kompanive t\u00eb vogla, klasteri Kubernetes mund t\u00eb funksionoj\u00eb mir\u00eb pa instaluar k\u00ebrkesat e burimeve dhe kufizimet, por nd\u00ebrsa ekipet dhe projektet tuaja fillojn\u00eb t\u00eb rriten n\u00eb p\u00ebrmasa, ju rrezikoni t\u00eb p\u00ebrballeni me probleme n\u00eb k\u00ebt\u00eb fush\u00eb. Shtimi i k\u00ebrkesave dhe kufizimeve n\u00eb modulet dhe hap\u00ebsirat tuaja emrore k\u00ebrkon pak m\u00eb shum\u00eb p\u00ebrpjekje dhe mund t\u00eb shp\u00ebtoj\u00eb nga shum\u00eb shqet\u00ebsime.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/503488\/\"> Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. \u00c7 deaktivizim i sakt\u00eb Terminate<\/a><\/noindex><\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"mxEvAPQRwhw\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/mxEvAPQRwhw\/hqdefault.jpg\" alt=\"Luaj videon\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<h3>Pak reklam\u00eb \ud83d\ude42<\/h3>\n<p>\nFaleminderit q\u00eb po q\u00ebndroni me ne. Ju p\u00eblqen artikujt tan\u00eb? Doni t\u00eb shihni m\u00eb shum\u00eb materiale interesante? Na mb\u00ebshtesni duke b\u00ebr\u00eb nj\u00eb porosi ose duke rekomanduar tek miqt\u00eb tuaj, <noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/cloudvps\/nl\">VPS cloud p\u00ebr zhvillues nga $4.99<\/a><\/noindex>, <b>nj\u00eb analog unik i server\u00ebve entry-level q\u00eb e kemi shpikur p\u00ebr Ju:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/347386\/\">E gjith\u00eb e v\u00ebrteta n\u00eb lidhje me VPS (KVM) E5-2697 v3 (6 B\u00ebrthama) 10GB DDR4 480GB SSD 1Gbps nga $19 ose si ta ndajm\u00eb sakt\u00ebsisht serverin?<\/a><\/noindex> (opcionet me RAID1 dhe RAID10, deri n\u00eb 24 b\u00ebrthama dhe deri n\u00eb 40GB DDR4 jan\u00eb t\u00eb disponueshme).<\/p>\n<p><b>Dell R730xd dyfish m\u00eb i lir\u00eb n\u00eb qend\u00ebr t\u00eb t\u00eb dh\u00ebnave Equinix Tier IV n\u00eb Amsterdam?<\/b> Vet\u00ebm te ne <b><noindex><a rel=\"nofollow\" href=\"https:\/\/ua-hosting.company\/serversnl\">2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TB nga $199<\/a><\/noindex> n\u00eb Holand\u00eb! <b>Dell R420 \u2014 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB \u2014 nga $99!<\/b><\/b> Lexoni rreth <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/company\/ua-hosting\/blog\/329618\/\">Si t\u00eb nd\u00ebrtoni nj\u00eb infrastruktur\u00eb t\u00eb klas\u00ebs korporative me p\u00ebrdorimin e server\u00ebve Dell R730xd E5-2650 v4 me \u00e7mim 9000 euro p\u00ebr pak para?<\/a><\/noindex><br \/>\n<br \/>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ua-hosting\/blog\/502614\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f Kubernetes \u0441 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e\u043c \u0438\u043c\u0435\u043d \u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0436\u0438\u0437\u043d\u0435\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 Kubernetes \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0435\u0441\u0442\u043e\u0432 Readiness \u0438 Liveness \u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430 Kubernetes \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u2014 Requests \u0438 Limits. \u041f\u0435\u0440\u0432\u043e\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u043d\u0430\u043b\u0438\u0447\u0438\u044e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0443\u0437\u043b\u0430, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0438\u043b\u0438 \u043f\u043e\u0434\u0430, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":82921,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-82920","post","type-post","status-publish","format-standard","has-post-thumbnail","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=\"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.\" \/>\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\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov\" \/>\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\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043b\u0438\u043c\u0438\u0442\u043e\u0432 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov\" \/>\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-05-26T11:42:37+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-05-26T11:42:37+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\udd47Praktikat m\u00eb t\u00eb mira t\u00eb Kubernetes. Konfigurimi i k\u00ebrkesave dhe kufizimeve t\u00eb burimeve | ProHoster","description":"Practikat m\u00eb t\u00eb mira t\u00eb Kubernetes.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","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\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0438 \u043b\u0438\u043c\u0438\u0442\u043e\u0432 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 | ProHoster","og:description":"\u041b\u0443\u0447\u0448\u0438\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 Kubernetes.","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/luchshie-praktiki-kubernetes-nastrojka-zaprosov-i-limitov-resursov","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-05-26T11:42:37+00:00","article:modified_time":"2020-05-26T11:42:37+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"82920","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 15:28:37","updated":"2022-09-28 05:48:38","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\/82920","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=82920"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/82920\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/82921"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=82920"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=82920"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=82920"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}