{"id":56259,"date":"2020-02-08T00:00:00","date_gmt":"2020-02-07T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/rabochie-uzly-kubernetes-mnogo-malenkih-ili-neskolko-bolshih"},"modified":"2020-02-18T14:04:30","modified_gmt":"2020-02-18T11:04:30","slug":"rabochie-uzly-kubernetes-mnogo-malenkih-ili-neskolko-bolshih","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rabochie-uzly-kubernetes-mnogo-malenkih-ili-neskolko-bolshih","title":{"rendered":"Kubernetes'i t\u00f6\u00f6node: palju v\u00e4ikesi v\u00f5i m\u00f5ned suured?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Kubernetes&#039;i t\u00f6\u00f6node: palju v\u00e4ikesi v\u00f5i m\u00f5ned suured?\" src=\"\/wp-content\/uploads\/2020\/02\/f3b0d071dc6f09002c1d6165317e7998.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nKubernetes klastrit luues v\u00f5ivad tekkida k\u00fcsimused: kui palju t\u00f6\u00f6kohti ja millist t\u00fc\u00fcpi seadmeid seadistada? Mis on parem on-premise klastrile: osta mitu v\u00f5imsat serverit v\u00f5i kasutada k\u00fcmmet vana masinat oma andmekeskuses? Ja pilves on parem juuda kahe neljatuumalise instantsi v\u00f5i kaheksa \u00fchetuumalist? <\/p>\n<p>Nendele k\u00fcsimustele leiate vastused artiklist <noindex><a rel=\"nofollow\" href=\"https:\/\/learnk8s.io\/kubernetes-node-size\">Daniel Wybel, insener ja \u00f5petaja \u00f5ppeprojektis Learnk8s<\/a><\/noindex> t\u00f5lgib meeskond <noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/containers\/\">Kubernetes aaS Mail.ru-lt<\/a><\/noindex>.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Klastri v\u00f5imekus<\/h2>\n<p>\n\u00dcldiselt v\u00f5ib Kubernetes klastrit pidada suureks \"super-s\u00f5lmeks\". Selle kogu arvutusv\u00f5imsus on k\u00f5ikide komponentide s\u00f5lmede v\u00f5imsuste summa. <\/p>\n<p>On mitmeid viise soovitud klastriv\u00f5imekuse saavutamiseks. N\u00e4iteks, kui me vajame klastrit, mille koguv\u00f5imsus on 8 protsessorituuma ja 32 GB RAM-i, kuna rakenduste komplekt n\u00f5uab selliseid ressursse. Siis v\u00f5iksime paigaldada kaks s\u00f5lme, millel on 16 GB m\u00e4lu, v\u00f5i neli s\u00f5lme, millel on 8 GB m\u00e4lu, kaks neljatuumalist protsessorit v\u00f5i neli kahetuumalist.<\/p>\n<p>Siin on ainult kaks v\u00f5imalikku viisi klastri loomiseks:<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes&#039;i t\u00f6\u00f6node: palju v\u00e4ikesi v\u00f5i m\u00f5ned suured?\" src=\"\/wp-content\/uploads\/2020\/02\/bf616be424b2b25204490f8f09eea436.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nM\u00f5lemad valikud annavad sama v\u00f5imekusega klastrit, kuid allosas on neli v\u00e4iksemat s\u00f5lme, samas kui \u00fclalosas on kaks suuremat. <\/p>\n<h3>Milline variant on parem?<\/h3>\n<p>\nK\u00fcsimuse vastamiseks vaatame m\u00f5lema variandi eeliseid. Oleme need kokku pannud tabelisse.<\/p>\n<p>Mitu suurt s\u00f5lme<\/p>\n<p>Palju v\u00e4ikseid s\u00f5lme<\/p>\n<p>Klastri haldamine on lihtsam (kui see on on-premise)<\/p>\n<p>Suumimine on sujuvam<\/p>\n<p>Odavam (kui see on on-premise) <\/p>\n<p>Hind ei erine palju (pilves) <\/p>\n<p>V\u00f5ib k\u00e4itada ressursin\u00f5udlikke rakendusi <\/p>\n<p>T\u00e4ielik replikatsioon<\/p>\n<p>Ressursse kasutatakse efektiivsemalt (v\u00e4hem \u00fcleliigset s\u00fcsteemide demonite peale)<br \/>\nKlastri talitlusp\u00fcsivus on k\u00f5rgem<\/p>\n<p>Pange t\u00e4hele, et r\u00e4\u00e4gime ainult t\u00f6\u00f6kohti. Pea-s\u00f5lmede arvu ja suuruse valimine on t\u00e4iesti teine teema.<\/p>\n<p>Nii et arutame iga punkti tabelist l\u00e4hemalt.<\/p>\n<h2>Esimene variant: mitu suurt s\u00f5lme<\/h2>\n<p>\nK\u00f5ige ekstreemsem variant on \u00fcks t\u00f6\u00f6kohta kogu klastriv\u00f5imekuse jaoks. \u00dclaltoodud n\u00e4ites oleks see \u00fcks t\u00f6\u00f6kohta, millel on 16 protsessori tuuma ja 16 GB RAM-i.<\/p>\n<h3>Plussid <\/h3>\n<p>\n<b>Pluss \u2116 1. Halduse lihtsus<\/b><br \/>\nMitme masina juhtimine on lihtsam kui terve pargi. Kiiremini on v\u00f5imalik rakendada uuendusi ja parandusi, lihtsam on s\u00fcnkroniseerida. Absoluutarvudes on ka t\u00f5rkeid v\u00e4hem.<\/p>\n<blockquote><p>Pange t\u00e4hele, et k\u00f5ik eelnevalt \u00f6eldu kehtib teie riistvara, teie serverite kohta, mitte pilveinstantside kohta.<\/p><\/blockquote>\n<p>\nPilves on olukord teine. Seal tegeleb haldusega pilveteenuse pakkuja. Seega ei erine k\u00fcmne s\u00f5lme haldamine pilves eriti \u00fche s\u00f5lme haldamisest.<\/p>\n<p>Liiklustee suunamine ja koormuse jaotamine pod'ide vahel pilves <noindex><a rel=\"nofollow\" href=\"https:\/\/learnk8s.io\/blog\/kubernetes-chaos-engineering-lessons-learned\">toimub automaatselt<\/a><\/noindex>: internetist tulev liiklus suunatakse peamise koormuse tasakaalustajani, mis suunab liikluse \u00fche s\u00f5lme pordile (NodePort teenus m\u00e4\u00e4rab pordi vahemikus 30000-32767 igas klastri s\u00f5lmest). Kube-proxy'de seadistatud reeglid suunavad liikluse s\u00f5lmest pod'i. Nii n\u00e4eb see v\u00e4lja k\u00fcmne pod'i jaoks kahes s\u00f5lmes:<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes&#039;i t\u00f6\u00f6node: palju v\u00e4ikesi v\u00f5i m\u00f5ned suured?\" src=\"\/wp-content\/uploads\/2020\/02\/bdcd025d1315997df52017d68e38447f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<b>Pluss \u2116 2. V\u00e4hem kulutusi s\u00f5lme kohta<\/b><br \/>\nV\u00f5imas masin on kallim, kuid hinna t\u00f5us ei ole tingimata lineaarne. Teisis\u00f5nu, \u00fcks k\u00fcmne tuumaga server, millel on 10 GB m\u00e4lu, on tavaliselt odavam kui k\u00fcmme \u00fches\u00fcdamikku, millel on sama palju m\u00e4lu.<\/p>\n<blockquote><p>Kuid pidage meeles, et see reegel ei kehti tavaliselt pilveteenustes. Aktuaalsetes hinnakujundusskeemides t\u00f5usevad k\u00f5ikide peamiste pilveteenuse pakkujate hinnad lineaarsete hindadega koos mahutavuse suurendamisega.<\/p><\/blockquote>\n<p>\nSeega ei saa pilves tavaliselt s\u00e4\u00e4sta v\u00f5imsamate serverite arvelt.<\/p>\n<p><b>Pluss \u2116 3. Saate k\u00e4ivitada ressursimahukaid rakendusi<\/b><br \/>\nM\u00f5ned rakendused vajavad klastris v\u00f5imsaid servereid. N\u00e4iteks kui masin\u00f5ppe s\u00fcsteem vajab 8 GB m\u00e4lu, ei saa te seda k\u00e4ivitada 1 GB s\u00f5lmedes, vaid ainult siis, kui teil on v\u00e4hemalt \u00fcks suur t\u00f6\u00f6 s\u00f5lm.<\/p>\n<h3>Miinused <\/h3>\n<p>\n<b>\u041c\u0438\u043d\u0443\u0441 \u2116 1. \u041c\u043d\u043e\u0433\u043e pod&#8217;\u043e\u0432 \u043d\u0430 \u0443\u0437\u0435\u043b<\/b><br \/>\n\u0415\u0441\u043b\u0438 \u043e\u0434\u043d\u0430 \u0438 \u0442\u0430 \u0436\u0435 \u0437\u0430\u0434\u0430\u0447\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u043c\u0435\u043d\u044c\u0448\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 \u0443\u0437\u043b\u043e\u0432, \u0442\u043e \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0438\u0437 \u043d\u0438\u0445, \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 pod&#8217;\u043e\u0432.<\/p>\n<p>See v\u00f5ib muutuda probleemiks.<\/p>\n<p>P\u00f5hjus on selles, et iga moodul toob kaasa teatud kulud konteinerite t\u00f6\u00f6tluskeskkonnale (n\u00e4iteks Docker), samuti kubelet'ile ja cAdvisor'ile.<\/p>\n<p>N\u00e4iteks uurib kubelet regulaarselt k\u00f5iki s\u00f5lmes olevaid konteinerite eluj\u00f5ulisust \u2014 mida rohkem konteinerid, seda rohkem t\u00f6\u00f6d on kubelet'il.<\/p>\n<p>CAdvisor kogub ressursside kasutamise statistikat k\u00f5ikide konteinerite kohta s\u00f5lmes, samas kui kubelet k\u00fcsib regulaarselt neid andmeid ning p\u00f5hipunktena edastab selle l\u00e4bi API. J\u00e4llegi, mida rohkem on konteinerite, seda rohkem t\u00f6\u00f6d on nii cAdvisoril kui kubelet'il.<\/p>\n<p>Kui moodulite arv suureneb, v\u00f5ib see pidurdada s\u00fcsteemi ja isegi v\u00e4hendada selle usaldusv\u00e4\u00e4rsust.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes&#039;i t\u00f6\u00f6node: palju v\u00e4ikesi v\u00f5i m\u00f5ned suured?\" src=\"\/wp-content\/uploads\/2020\/02\/8acef8172ad22eb5b9668df8ce4139f8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nKubernetes'e repositooriumis on m\u00f5ned <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/kubernetes\/kubernetes\/issues\/45419\">kaebanud<\/a><\/noindex>, et s\u00f5lmed h\u00fcppavad Ready\/NotReady staatuste vahel, kuna kubelet'i regulaarne kontrollimine k\u00f5igi s\u00f5lmes olevate konteinerite \u00fcle v\u00f5tab liiga palju aega. <br \/>\nSel p\u00f5hjusel soovitab Kubernetes <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/setup\/best-practices\/cluster-large\/\">\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 110 pod&#8217;\u043e\u0432 \u043d\u0430 \u0443\u0437\u0435\u043b<\/a><\/noindex>. S\u00f5lme j\u00f5udlusest s\u00f5ltuvalt v\u00f5ite s\u00f5lmes k\u00e4itada rohkem pod'e, kuid on raske ennustada, kas tekivad probleemid v\u00f5i k\u00f5ik t\u00f6\u00f6tab h\u00e4sti. Soovitav on eelnevalt testida t\u00f6\u00f6protsessi. <\/p>\n<p><b>Miinus nr 2. Replikatsiooni piirang<\/b><br \/>\nLiiga v\u00e4ike s\u00f5lmede arv piirab rakenduste t\u00f5husat replikatsiooni. N\u00e4iteks kui teil on k\u00f5rge k\u00e4ttesaadavuse rakendus viie replikaga, kuid ainult kaks s\u00f5lme, siis rakenduse t\u00f5hus replikatsiooni m\u00e4\u00e4r v\u00e4heneb kaheks.<\/p>\n<p>Viit replikat saab jaotada ainult kahele s\u00f5lmeks ja kui \u00fcks neist ei t\u00f6\u00f6ta, h\u00e4vitab see korraga mitu replikat.<\/p>\n<p>Kui teil on viis v\u00f5i enam s\u00f5lme, siis igat replikat t\u00f6\u00f6tatakse eraldi s\u00f5lmes, ja \u00fche s\u00f5lme rike eemaldab maksimaalselt \u00fche replikat.<\/p>\n<p>Seega v\u00f5ivad k\u00f5rge k\u00e4ttesaadavuse n\u00f5uded vajada klastris teatud minimaalset s\u00f5lmede arvu.<\/p>\n<p><b>Miinus nr 3. Paigaldamise tagaj\u00e4rjed halvenevad<\/b><br \/>\nV\u00e4ikese s\u00f5lmede arvu puhul toob iga rike kaasa t\u00f5sisemaid tagaj\u00e4rgi. N\u00e4iteks kui teil on ainult kaks s\u00f5lme ja \u00fcks neist eba\u00f5nnestub, kaob korraga pool teie moodulitest.<\/p>\n<p>Loomulikult viib Kubernetes t\u00f6\u00f6koormuse eba\u00f5nnestunud s\u00f5lmest \u00fcle teistele. Kuid kui neid on v\u00e4he, ei pruugi piisavat vaba mahtu olla. Selle tulemusena j\u00e4\u00e4vad m\u00f5ned teie rakendustest k\u00e4ttesaamatuks, kuni te ei k\u00e4ivita eba\u00f5nnestunud s\u00f5lme.<\/p>\n<p>Nii et mida rohkem s\u00f5lmesid on, seda v\u00e4hem on riistvara rikete m\u00f5ju.<\/p>\n<p><b>Miinus nr 4. Rohkem sammude automaatne skaleerimine<\/b><br \/>\nKubernetes'is t\u00f6\u00f6tab automaatne klastrite skaleerimise s\u00fcsteem pilveinfrastruktuuris, mis v\u00f5imaldab automaatselt lisada v\u00f5i eemaldada s\u00f5lmi vastavalt hetke vajadustele. Suuremate s\u00f5lmede puhul muutub skaleerimine j\u00e4rsemaks ja kohmakamaks. N\u00e4iteks kahe s\u00f5lmega, lisades \u00fche lisas\u00f5lme, suurendatakse klastrimahtu kohe 50% v\u00f5rra. Ja peate nende ressursside eest maksma, isegi kui need teile ei ole vajalikud.<\/p>\n<p>Seega, kui plaanite kasutada klastrite automaatset skaleerimist, siis mida v\u00e4iksemad on s\u00f5lmed, seda paindlikum ja \u00f6konoomsem skaleerimine te saavutate.<\/p>\n<p>N\u00fc\u00fcd vaatame \u00fcles v\u00e4ikeste s\u00f5lmede arvu eeliseid ja puudusi.<\/p>\n<h2>Teine variant: hulk v\u00e4ikeseid s\u00f5lmi<\/h2>\n<p>\nSelle l\u00e4henemise eelised tulenevad p\u00f5him\u00f5tteliselt vastupidise variandi, st v\u00e4heste suurte s\u00f5lmede, puudustest.<\/p>\n<h3>Plussid<\/h3>\n<p>\n<b>Plusspunkt \u2116 1. V\u00e4hem katkestamise tagaj\u00e4rgi<\/b><br \/>\n\u0427\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0435 \u0443\u0437\u043b\u043e\u0432, \u0442\u0435\u043c \u043c\u0435\u043d\u044c\u0448\u0435 pod&#8217;\u043e\u0432 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0443\u0437\u043b\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0441\u0442\u043e \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043d\u0430 \u0434\u0435\u0441\u044f\u0442\u044c \u0443\u0437\u043b\u043e\u0432, \u0442\u043e \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0443\u0437\u043b\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432 \u0441\u0440\u0435\u0434\u043d\u0435\u043c \u043f\u043e \u0434\u0435\u0441\u044f\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u0435\u0439.<\/p>\n<p>Seega, kui \u00fcks s\u00f5lm eba\u00f5nnestub, kaotate vaid 10% t\u00f6\u00f6koormusest. On t\u00f5en\u00e4oline, et m\u00f5jutatud on vaid v\u00e4ike arv replikaate ja rakendused j\u00e4\u00e4vad \u00fcldiselt t\u00f6\u00f6kindlaks.<\/p>\n<p>\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043d\u0430 \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0445\u0441\u044f \u0443\u0437\u043b\u0430\u0445, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0445\u0432\u0430\u0442\u0438\u0442 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043e\u0442\u043a\u0430\u0437\u0430\u0432\u0448\u0435\u0433\u043e \u0443\u0437\u043b\u0430, \u0442\u0430\u043a \u0447\u0442\u043e Kubernetes \u043c\u043e\u0436\u0435\u0442 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u043f\u0435\u0440\u0435\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c pod&#8217;\u044b, \u0438 \u0432\u0430\u0448\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u0441\u044f \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435.<\/p>\n<p><b>Plusspunkt \u2116 2. Hea replikatsioon<\/b><br \/>\nKui on piisavalt s\u00f5lmi, siis Kubernetes'i ajakava saab m\u00e4\u00e4rata k\u00f5igile replikatele erinevad s\u00f5lmed. Seega, kui s\u00f5lm eba\u00f5nnestub, m\u00f5jutatakse vaid \u00fcht replikat ja rakendus j\u00e4\u00e4b kergesti k\u00e4tte saadavaks.<\/p>\n<h3>Miinused <\/h3>\n<p>\n<b>Miinuspunkt \u2116 1. Raskem juhtimine<\/b><br \/>\nSuure hulga s\u00f5lmede haldamine on keerulisem. N\u00e4iteks peab iga Kubernetes'i s\u00f5lm suhtlema k\u00f5igi teistega, seega kasvab seoste arv ruudus ja k\u00f5ik need seosed tuleb j\u00e4lgida.<\/p>\n<p>S\u00f5lme kontrollija Kubernetes'i kontrollijate halduris kontrollib regulaarselt k\u00f5iki klastris oleva s\u00f5lmi nende toimivuse kontrollimiseks \u2014 mida rohkem s\u00f5lmi, seda suurem on koormus kontrollijale.<\/p>\n<p>Koormus suurendab ka andmebaasi etcd \u2014 iga kubelet ja kube-proxy kutsub <noindex><a rel=\"nofollow\" href=\"https:\/\/etcd.io\/docs\/v3.3.12\/dev-guide\/interacting_v3\/#watch-key-changes\">watcher<\/a><\/noindex> etcd (API kaudu), millele etcd peab objekti v\u00e4rskendusi edastama.<\/p>\n<p>\u00dcldiselt koormab iga t\u00f6\u00f6node s\u00fcsteemikomponente peamistel nodidel.<\/p>\n<p><img decoding=\"async\" alt=\"Kubernetes&#039;i t\u00f6\u00f6node: palju v\u00e4ikesi v\u00f5i m\u00f5ned suured?\" src=\"\/wp-content\/uploads\/2020\/02\/4613483255747856e5d04fab429565cd.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nAmetlikult toetab Kubernetes klastreid, millel on <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/setup\/best-practices\/cluster-large\/\">kuni 5000 nodi.<\/a><\/noindex>Praktiliselt v\u00f5ivad aga juba 500 nodi <noindex><a rel=\"nofollow\" href=\"https:\/\/events19.linuxfoundation.cn\/wp-content\/uploads\/2017\/11\/BoF_-Not-One-Size-Fits-All-How-to-Size-Kubernetes-Clusters_Guang-Ya-Liu-_-Sahdev-Zala.pdf\">tekitada mitte\u00adtriviaalsetes probleemides.<\/a><\/noindex>.<\/p>\n<p>Suurte t\u00f6\u00f6node arvu haldamiseks tuleks valida v\u00f5imekamad peanodid. N\u00e4iteks kube-up <noindex><a rel=\"nofollow\" href=\"https:\/\/kubernetes.io\/docs\/setup\/best-practices\/cluster-large\/#size-of-master-and-master-components\">paigaldab automaatselt<\/a><\/noindex> \u00f5ige VM suuruse peanodile s\u00f5ltuvalt t\u00f6\u00f6node arvust. See t\u00e4hendab, et mida rohkem on t\u00f6\u00f6node, seda v\u00f5imekamad peanodid peavad olema. <\/p>\n<p>Nende spetsiifiliste probleemide lahendamiseks on olemas spetsiaalsed lahendused, nagu <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=v9cwYvuzROs\">Virtual Kubelet.<\/a><\/noindex>See s\u00fcsteem v\u00f5imaldab m\u00f6\u00f6da minna piirangutest ja luua klastreid, millel on tohutu hulk t\u00f6\u00f6node.<\/p>\n<p><b>Miinus nr 2. Suurem \u00fclekandeteenus.<\/b><br \/>\nIgal t\u00f6\u00f6node'l k\u00e4ivitab Kubernetes komplekti s\u00fcsteemideemoone - nende hulka kuuluvad konteinerite t\u00f6\u00f6tluskeskkond (nt Docker), kube-proxy ja kubelet, sealhulgas cAdvisor. Koos tarbivad nad teatud fikseeritud hulga ressursse.<\/p>\n<p>Kui teil on palju v\u00e4ikeseid node, on iga nodi \u00fclekandeteenuse osakaal suurem. N\u00e4iteks kujutage ette, et k\u00f5ik \u00fche nodi s\u00fcsteemi demonid koos kasutavad 0,1 CPU tuumat ja 0,1 GB m\u00e4lu. Kui teil on \u00fcks k\u00fcmne tuumaga node, millel on 10 GB m\u00e4lu, siis demonid tarbivad 1% klastri mahust. Teisest k\u00fcljest, k\u00fcmnel \u00fche tuumaga nodil, millel on 1 GB m\u00e4lu, v\u00f5tavad demonid 10% klastri mahust.<\/p>\n<p>Seega, mida v\u00e4hem nodi, seda t\u00f5husamalt kasutatakse infrastruktuuri.<\/p>\n<p><b>Miinus nr 3. Ebaefektiivne ressursside kasutamine.<\/b><br \/>\nV\u00e4ikestes node'ides v\u00f5ib tekkida olukord, kus allesj\u00e4\u00e4nud ressursifragmendid on liiga v\u00e4ikesed, et neile mingit koormust m\u00e4\u00e4rata, seega j\u00e4\u00e4vad nad kasutamata.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u0430\u0436\u0434\u044b\u0439 pod \u0442\u0440\u0435\u0431\u0443\u0435\u0442 0,75 \u0413\u0411 \u043f\u0430\u043c\u044f\u0442\u0438. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0434\u0435\u0441\u044f\u0442\u044c \u0443\u0437\u043b\u043e\u0432, \u0438 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u043f\u043e 1 \u0413\u0411 \u043f\u0430\u043c\u044f\u0442\u0438, \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0434\u0435\u0441\u044f\u0442\u044c pod&#8217;\u043e\u0432 \u2014 \u0432 \u0438\u0442\u043e\u0433\u0435 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0443\u0437\u043b\u0435 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f 0,25 \u0413\u0411 \u043d\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n<p>See t\u00e4hendab, et 25% kogu klastri m\u00e4lust l\u00e4heb raisku.<\/p>\n<p>Suuril nodil, millel on 10 GB m\u00e4lu, saate k\u00e4ivitada 13 sellist moodulit - ja j\u00e4\u00e4b alles vaid \u00fcks 0,25 GB kasutamata fragment.<\/p>\n<p>Sel juhul kulu on ainult 2,5% m\u00e4lu.<\/p>\n<p>Seega, suurte s\u00f5lmede puhul jaotatakse ressursse optimaalsemalt.<\/p>\n<h2>M\u00f5ned suured s\u00f5lmed v\u00f5i palju v\u00e4ikeseid?<\/h2>\n<p>\nNii et mis on parem: mitu suurt s\u00f5lme klastris v\u00f5i palju v\u00e4ikeseid? Nagu alati, \u00fcheselt vastust ei ole. Palju s\u00f5ltub rakenduse t\u00fc\u00fcbist.<\/p>\n<p>N\u00e4iteks, kui rakendusel on vaja 10 GB m\u00e4lu, on selge valik suurte s\u00f5lmede kasuks. Kui aga rakendus vajab k\u00fcmnekordset kopeerimist k\u00f5rge k\u00e4ttesaadavuse tagamiseks, oleks riskantne paigutada koopiad vaid kahele s\u00f5lmele \u2014 klastries peab olema v\u00e4hemalt k\u00fcmme s\u00f5lme.<\/p>\n<p>Vahepealsetes olukordades tehke valik, l\u00e4htudes iga variandi eelistest ja puudustest. V\u00f5ib-olla on m\u00f5ned argumendid teie olukorra jaoks aktuaalsemad kui teised.<\/p>\n<p>Ja pole sugugi kohustuslik, et k\u00f5ik s\u00f5lmed oleksid sama suurusega. Miski ei takista teil alguses eksperimenteerida s\u00f5lmedega, mis on sama suurusega, seej\u00e4rel lisada neile erineva suurusega s\u00f5lmed, kombineerides neid klastris. Kubernetes'e t\u00f6\u00f6ks m\u00f5eldud s\u00f5lmed v\u00f5ivad olla t\u00e4iesti heterogeensed. Seega, v\u00f5ite proovida m\u00f5lema l\u00e4henemise eeliseid.<\/p>\n<p>\u00dchtegi kindlat retsepti ei ole, iga olukord on unikaalne ning ainult tootmisprotsess n\u00e4itab t\u00f5de.<\/p>\n<p><i>T\u00f5lge on koostanud pilveteenuse meeskond <noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/\">Mail.ru Pilve Lahendused<\/a><\/noindex>.<\/i><\/p>\n<p>Veel Kubernetes'est: <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/425343\/\">25 kasulikku t\u00f6\u00f6riista klastrite haldamiseks ja juurutamiseks<\/a><\/noindex>.<\/p>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/484334\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 Kubernetes \u043c\u043e\u0433\u0443\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441\u044b: \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0443\u0437\u043b\u043e\u0432 \u0438 \u043a\u0430\u043a\u043e\u0433\u043e \u0442\u0438\u043f\u0430? \u0427\u0442\u043e \u043b\u0443\u0447\u0448\u0435 \u0434\u043b\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 on-premise: \u043a\u0443\u043f\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u043e\u0449\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438\u043b\u0438 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0434\u0435\u0441\u044f\u0442\u043e\u043a \u0441\u0442\u0430\u0440\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0432 \u0432\u0430\u0448\u0435\u043c \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0435? \u0410 \u0432 \u043e\u0431\u043b\u0430\u043a\u0435 \u043b\u0443\u0447\u0448\u0435 \u0432\u0437\u044f\u0442\u044c \u0432\u043e\u0441\u0435\u043c\u044c \u043e\u0434\u043d\u043e\u044f\u0434\u0435\u0440\u043d\u044b\u0445 \u0438\u043b\u0438 \u0434\u0432\u0430 \u0447\u0435\u0442\u044b\u0440\u0435\u0445\u044a\u044f\u0434\u0435\u0440\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0430? \u041e\u0442\u0432\u0435\u0442\u044b \u043d\u0430 \u044d\u0442\u0438 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u2014 \u0432 \u0441\u0442\u0430\u0442\u044c\u0435 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0412\u0430\u0439\u0431\u0435\u043b\u044f, \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430 \u0438 \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0435\u0433\u043e [&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-56259","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430.\" \/>\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\/et\/blog\/administrirovanie\/rabochie-uzly-kubernetes-mnogo-malenkih-ili-neskolko-bolshih\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\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\u0420\u0430\u0431\u043e\u0447\u0438\u0435 \u0443\u0437\u043b\u044b Kubernetes: \u043c\u043d\u043e\u0433\u043e \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0445? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rabochie-uzly-kubernetes-mnogo-malenkih-ili-neskolko-bolshih\" \/>\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-02-07T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:04:30+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\udd47Kubernetes'e t\u00f6\u00f6ks m\u00f5eldud s\u00f5lmed: palju v\u00e4ikeseid v\u00f5i m\u00f5ned suured? | ProHoster","description":"Klastri loomisel.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rabochie-uzly-kubernetes-mnogo-malenkih-ili-neskolko-bolshih","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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\u0420\u0430\u0431\u043e\u0447\u0438\u0435 \u0443\u0437\u043b\u044b Kubernetes: \u043c\u043d\u043e\u0433\u043e \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445 \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0445? | ProHoster","og:description":"\u041f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430.","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/rabochie-uzly-kubernetes-mnogo-malenkih-ili-neskolko-bolshih","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-02-07T21:00:00+00:00","article:modified_time":"2020-02-18T11:04:30+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"56259","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:28:23","updated":"2022-10-03 08:08:38","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/56259","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=56259"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/56259\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=56259"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=56259"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=56259"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}