Meta toħloq cluster Kubernetes, jistgħu jinqalgħu mistoqsijiet: kemm-il nodi tal-ħaddiema għandhom jiġu kkonfigurati u liema tip? X'inhu aħjar għal cluster fuq il-post: tixtri diversi servers b'saħħithom jew uża tużżana magni qodma fiċ-ċentru tad-dejta tiegħek? Huwa aħjar li tieħu tmien istanzi single-core jew żewġ quad-core fil-cloud?
It-tweġibiet għal dawn il-mistoqsijiet jinsabu fl-artiklu.
Kapaċità tal-cluster
B'mod ġenerali, cluster Kubernetes jista 'jitqies bħala "supernode" kbir. Il-qawwa totali tal-kompjuter tagħha hija s-somma tas-setgħat tan-nodi kostitwenti kollha tagħha.
Hemm diversi modi kif tikseb il-mira tal-kapaċità tal-cluster mixtieq tiegħek. Pereżempju, għandna bżonn cluster b'kapaċità totali ta '8 cores tal-proċessur u 32 GB ta' RAM minħabba li sett ta 'applikazzjonijiet jeħtieġ tant riżorsi. Imbagħad tista 'tinstalla żewġ nodi b'16 GB ta' memorja jew erba' nodi bi 8 GB ta 'memorja, żewġ proċessuri quad-core jew erba' dawk dual-core.
Hawn huma biss żewġ modi possibbli biex toħloq cluster:
Iż-żewġ għażliet jipproduċu raggruppament bl-istess kapaċità, iżda l-konfigurazzjoni ta 'isfel għandha erba' nodi iżgħar u l-konfigurazzjoni ta 'fuq għandha żewġ nodi akbar.
Liema għażla hija aħjar?
Biex twieġeb din il-mistoqsija, ejja nħarsu lejn il-vantaġġi taż-żewġ għażliet. Aħna ġabarhom fil-qosor f'tabella.
Diversi nodi kbar
Ħafna nodi żgħar
Ġestjoni tal-clusters aktar faċli (jekk ikun fuq il-post)
Autoscaling bla xkiel
Orħos (jekk fuq il-post)
Il-prezz huwa ftit differenti (fil-sħaba)
Jista 'jmexxi applikazzjonijiet li jużaw ħafna riżorsi
Replikazzjoni sħiħa
Ir-riżorsi jintużaw b'mod aktar effiċjenti (inqas overhead fuq id-daemons tas-sistema
Tolleranza ogħla ta 'ħsarat ta' cluster
Jekk jogħġbok innota li qed nitkellmu biss dwar nodi tal-ħaddiema. L-għażla tan-numru u d-daqs tan-nodi prinċipali hija suġġett kompletament differenti.
Allura, ejja niddiskutu kull punt mit-tabella f'aktar dettall.
L-ewwel għażla: diversi nodi kbar
L-iktar għażla estrema hija nodu wieħed tal-ħaddiema għall-kapaċità sħiħa tal-cluster. Fl-eżempju ta 'hawn fuq, dan ikun node ta' ħaddiem wieħed b'16 CPU core u 16 GB RAM.
Pros
Plus Nru 1. Ġestjoni aktar faċli
Huwa aktar faċli li timmaniġġja ftit magni milli flotta sħiħa. Huwa aktar mgħaġġla li jinxtegħlu aġġornamenti u soluzzjonijiet, u huwa aktar faċli li tissinkronizza. In-numru ta 'fallimenti f'numri assoluti huwa wkoll inqas.
Jekk jogħġbok innota li dak kollu t'hawn fuq japplika għall-ħardwer tiegħek, is-servers tiegħek, u mhux għall-istanzi tal-cloud.
Is-sitwazzjoni hija differenti fis-sħaba. Hemmhekk, il-ġestjoni hija mmaniġġjata mill-fornitur tas-servizz tal-cloud. Għalhekk, il-ġestjoni ta 'għaxar nodi fis-sħaba mhix wisq differenti mill-ġestjoni ta' nodu wieħed.
Rotot tat-traffiku u distribuzzjoni tat-tagħbija bejn il-miżwed fis-sħab
Pro #2: Inqas spiża għal kull node
Karozza qawwija tiswa aktar, iżda ż-żieda fil-prezz mhix neċessarjament lineari. Fi kliem ieħor, server wieħed b'għaxar qalba b'10 GB ta 'memorja huwa ġeneralment irħas minn għaxar servers b'qalba waħda bl-istess ammont ta' memorja.
Imma innota li din ir-regola normalment ma taħdimx fis-servizzi tal-cloud. Fl-iskemi attwali tal-prezzijiet tal-fornituri ewlenin kollha tal-cloud, il-prezzijiet jiżdiedu b'mod lineari mal-kapaċità.
Għalhekk, fis-sħab normalment ma tistax tiffranka fuq servers aktar qawwija.
Pro #3: Tista' tmexxi applikazzjonijiet li jużaw ħafna riżorsi
Xi applikazzjonijiet jeħtieġu servers b'saħħithom fi cluster. Pereżempju, jekk sistema ta 'tagħlim tal-magni teħtieġ 8 GB ta' memorja, ma tkunx tista 'tħaddem fuq nodi ta' 1 GB, iżda biss b'mill-inqas nodu wieħed kbir ta 'ħaddiem.
Cons
Żvantaġġ Nru 1. Ħafna miżwed għal kull node
Jekk l-istess kompitu jitwettaq fuq inqas nodi, allura kull wieħed minnhom naturalment ikollu aktar imżiewed.
Din tista' tkun problema.
Ir-raġuni hija li kull modulu jintroduċi xi overhead għar-runtime tal-kontenitur (eż. Docker), kif ukoll il-kubelet u cAdvisor.
Pereżempju, kubelet jistħarreġ regolarment il-kontenituri kollha fuq node għas-sopravivenza—aktar kontenituri, aktar xogħol irid jagħmel il-kubelet.
CAdvisor jiġbor statistika dwar l-użu tar-riżorsi għall-kontenituri kollha fuq node, u kubelet regolarment jistaqsi din l-informazzjoni u jipprovdiha permezz ta’ API. Għal darb'oħra, aktar kontenituri jfisser aktar xogħol kemm għall-cAdvisor kif ukoll għall-kubelet.
Jekk in-numru ta 'moduli jiżdied, jista' jrażżan is-sistema u anke jimmina l-affidabbiltà tagħha.
Fir-repożitorju Kubernetes xi wħud
Għal din ir-raġuni Kubernetes
Żvantaġġ Nru 2. Limitazzjoni fuq ir-replikazzjoni
Ftit wisq nodi jillimitaw il-firxa effettiva tar-replikazzjoni tal-applikazzjoni. Pereżempju, jekk għandek applikazzjoni ta' disponibbiltà għolja b'ħames repliki iżda żewġ nodi biss, allura l-grad effettiv ta' replikazzjoni tal-applikazzjoni jitnaqqas għal tnejn.
Ħames repliki jistgħu jitqassmu biss fuq żewġ nodi, u jekk waħda minnhom tfalli, se tneħħi repliki multipli f'daqqa.
Jekk għandek ħames nodi jew aktar, kull replika se taħdem fuq nodu separat, u l-falliment ta 'nodu wieħed se tneħħi l-aktar replika waħda.
Għalhekk, rekwiżiti ta 'disponibbiltà għolja jistgħu jeħtieġu ċertu numru minimu ta' nodi fil-cluster.
Żvantaġġ Nru 3. Konsegwenzi agħar ta 'falliment
B'numru żgħir ta 'nodi, kull falliment għandu konsegwenzi aktar serji. Per eżempju, jekk għandek biss żewġ nodi u wieħed minnhom ifalli, nofs il-moduli tiegħek jisparixxu immedjatament.
Naturalment, Kubernetes se jemigra l-ammont ta 'xogħol min-nodu fallut għal oħrajn. Imma jekk hemm ftit minnhom, allura jista 'ma jkunx hemm biżżejjed kapaċità ħielsa. Bħala riżultat, xi wħud mill-applikazzjonijiet tiegħek ma jkunux disponibbli sakemm tqajjem in-nodu fallut.
Għalhekk, iktar ma jkun hemm nodi, inqas ikun l-impatt tal-ħsarat fil-ħardwer.
Żvantaġġ #4: Aktar passi ta' autoscaling
Kubernetes għandu sistema ta 'skala awtomatika tal-clusters għall-infrastruttura tal-cloud, li tippermettilek li żżid jew tneħħi awtomatikament nodi skont il-bżonnijiet attwali tiegħek. B'nodi akbar, l-autoscaling isir aktar f'daqqa u goff. Pereżempju, fuq żewġ nodi, iż-żieda ta 'nodu addizzjonali se żżid immedjatament il-kapaċità tal-cluster b'50%. U jkollok tħallas għal dawk ir-riżorsi, anke jekk m'għandekx bżonnhom.
Għalhekk, jekk qed tippjana li tuża l-iskala tar-raggruppamenti awtomatika, iktar ma jkunu żgħar in-nodi, iktar se tikseb skalar flessibbli u kost-effettiv.
Issa ejja nħarsu lejn il-vantaġġi u l-iżvantaġġi ta 'numru kbir ta' nodi żgħar.
It-tieni għażla: ħafna nodi żgħar
Il-vantaġġi ta 'dan l-approċċ essenzjalment joħorġu mill-iżvantaġġi tal-għażla opposta b'diversi nodi kbar.
Pros
Pro #1: Inqas impatt tal-falliment
Aktar ma jkun hemm nodi, inqas imżiewed fuq kull nodu. Pereżempju, jekk għandek mitt modulu għal kull għaxar nodi, allura kull nodu jkollu medja ta 'għaxar moduli.
B'dan il-mod, jekk wieħed min-nodi jfalli, titlef biss 10% tal-piż tax-xogħol. Iċ-ċansijiet huma li numru żgħir biss ta' repliki jiġu affettwati u l-applikazzjoni ġenerali tibqa' operattiva.
Barra minn hekk, in-nodi li fadal x'aktarx se jkollhom biżżejjed riżorsi ħielsa biex jimmaniġġjaw l-ammont ta 'xogħol tan-node fallut, sabiex Kubernetes jista' liberament jiskeda mill-ġdid il-miżwed u l-applikazzjonijiet tiegħek jerġgħu lura għal stat funzjonali relattivament malajr.
Pro #2: Replikazzjoni tajba
Jekk ikun hemm biżżejjed nodi, l-iskeder ta 'Kubernetes jista' jassenja nodi differenti għar-repliki kollha. B'dan il-mod, jekk node ifalli, se tiġi affettwata replika waħda biss u l-applikazzjoni tibqa' disponibbli.
Cons
Żvantaġġ Nru 1. Diffiċli biex tikkontrolla
Numru kbir ta 'nodi huma aktar diffiċli biex jiġu mmaniġġjati. Pereżempju, kull node Kubernetes għandu jikkomunika ma 'l-oħrajn kollha, jiġifieri, in-numru ta' konnessjonijiet jikber b'mod kwadratiku, u dawn il-konnessjonijiet kollha jeħtieġ li jiġu ssorveljati.
Il-kontrollur tan-nodi fil-Maniġer tal-Kontrollur ta 'Kubernetes jgħaddi regolarment min-nodi kollha fil-cluster biex jiċċekkja s-saħħa - aktar nodi, aktar tagħbija fuq il-kontrollur.
It-tagħbija fuq id-database etcd qed tikber ukoll - kull sejħiet kubelet u kube-proxy
B'mod ġenerali, kull nodu tal-ħaddiem jimponi tagħbija addizzjonali fuq il-komponenti tas-sistema tan-nodi prinċipali.
Kubernetes jappoġġja uffiċjalment clusters ma
Biex timmaniġġja numru kbir ta 'nodi tal-ħaddiema, għandek tagħżel nodi prinċipali aktar qawwija. Per eżempju, kube-up
Biex issolvi dawn il-problemi speċifiċi hemm żviluppi speċjali, bħal
Żvantaġġ #2: Aktar spejjeż ġenerali.
Fuq kull node tal-ħaddiem, Kubernetes imexxi sett ta' daemons tas-sistema - dawn jinkludu r-runtime tal-kontenitur (bħal Docker), kube-proxy u kubelet, inkluż cAdvisor. Flimkien jikkunsmaw ċertu ammont fiss ta’ riżorsi.
Jekk għandek ħafna nodi żgħar, il-proporzjon ta 'dan l-overhead fuq kull node huwa akbar. Pereżempju, immaġina li d-daemons tas-sistema kollha fuq nodu wieħed flimkien jużaw 0,1 CPU cores u 0,1 GB ta 'memorja. Jekk għandek nodu wieħed b'għaxar qalba b'10 GB ta 'memorja, allura d-daemons jikkunsmaw 1% tal-kapaċità tal-cluster. Min-naħa l-oħra, fuq għaxar nodi single-core b'1 GB ta 'memorja, id-daemons se jieħdu 10% tal-kapaċità tal-cluster.
Għalhekk, l-inqas nodi, l-aktar effiċjenti tintuża l-infrastruttura.
Żvantaġġ Nru 3. Użu ineffiċjenti tar-riżorsi
Fuq nodi żgħar, jista 'jkun li l-biċċiet tar-riżorsi li jifdal huma żgħar wisq biex jassenjaw xi tagħbija tax-xogħol, u għalhekk jibqgħu mhux użati.
Pereżempju, kull pod jeħtieġ 0,75 GB ta 'memorja. Jekk għandek għaxar nodi, kull wieħed b'1GB ta 'memorja, tista' tmexxi għaxar imżiewed, u tħalli kull nodu b'0,25GB ta 'memorja mhux użata.
Dan ifisser li 25% tal-memorja tal-cluster kollu tinħela.
Fuq nodu kbir b'10 GB ta 'memorja, tista' tmexxi 13 minn dawn il-moduli - u se jkun hemm framment wieħed biss mhux użat ta '0,25 GB.
F'dan il-każ, 2,5% biss tal-memorja tinħela.
Għalhekk, ir-riżorsi jintużaw bl-aħjar mod fuq nodi akbar.
Diversi nodi kbar jew ħafna żgħar?
Allura, li huwa aħjar: ftit nodi kbar f'grupp jew ħafna żgħar? Bħal dejjem, m'hemm l-ebda tweġiba ċara. Jiddependi ħafna fuq it-tip ta 'applikazzjoni.
Pereżempju, jekk applikazzjoni teħtieġ 10 GB ta 'memorja, nodi akbar huma għażla ovvja. U jekk l-applikazzjoni teħtieġ replikazzjoni għaxar darbiet għal disponibbiltà għolja, ma tantx jiswa r-riskju li jitqiegħdu repliki fuq żewġ nodi biss - għandu jkun hemm minimu ta 'għaxar nodi fil-cluster.
F'sitwazzjonijiet intermedji, agħmel għażla bbażata fuq il-vantaġġi u l-iżvantaġġi ta 'kull għażla. Forsi xi argumenti huma aktar rilevanti għas-sitwazzjoni tiegħek minn oħrajn.
U mhu meħtieġ li n-nodi kollha jsiru l-istess daqs. Xejn ma jipprevjenik milli tesperimenta l-ewwel b'nodi tal-istess daqs, imbagħad iżżid nodi ta 'daqs differenti magħhom, u tgħaqqadhom fi cluster. Nodi tal-ħaddiema fi cluster Kubernetes jistgħu jkunu kompletament eteroġenji. Allura tista 'tipprova tgħaqqad il-vantaġġi taż-żewġ approċċi.
M'hemm l-ebda riċetta waħda, u kull sitwazzjoni għandha sfumaturi tagħha stess, u l-produzzjoni biss se turi l-verità.
Traduzzjoni ppreparata mit-tim tal-pjattaforma tal-cloud
Aktar dwar Kubernetes:
Sors: www.habr.com