ProHoster > Блог > Administrado > Plej bonaj Praktikoj kaj Plej Bonaj Praktikoj por Kurado de Ujoj kaj Kubernetes en Produktaj Medioj
Plej bonaj Praktikoj kaj Plej Bonaj Praktikoj por Kurado de Ujoj kaj Kubernetes en Produktaj Medioj
La konteniga teknologia ekosistemo rapide evoluas kaj ŝanĝiĝas, do mankas bonaj laborpraktikoj en ĉi tiu areo. Tamen, Kubernetes kaj ujoj estas uzataj ĉiam pli, kaj por modernigi heredaĵajn aplikojn kaj por disvolvi modernajn nubajn aplikojn.
teamo Kubernetes aaS de Mail.ru kolektis antaŭvidojn, konsilojn kaj plej bonajn praktikojn por merkataj gvidantoj de Gartner, 451 Research, StacxRoх kaj aliaj. Ili ebligos kaj akcelos la deplojon de ujoj en produktadmedioj.
Kiel Scii ĉu Via Kompanio estas Preta Disfaldi Ujojn en Produktadmedio
Laŭ Gartner, en 2022, pli ol 75% de organizoj uzos konteneritajn aplikojn en produktado. Ĉi tio estas signife pli ol nuntempe, kiam malpli ol 30% de kompanioj uzas tiajn aplikojn.
Laŭ 451 EsploroLa projektita merkato por ujteknologiaj aplikoj en 2022 estos $ 4,3 miliardoj. Ĉi tio estas pli ol duoblo de la kvanto projektita en 2019, kun merkata kreskorapideco de 30%.
В Enketo pri Portworx kaj Aqua Security 87% de respondantoj diris, ke ili nuntempe uzas ujajn teknologiojn. Por komparo, en 2017 estis 55% de tiaj respondantoj.
Malgraŭ la kreskanta intereso kaj adopto de ujoj, enigi ilin en produktadon postulas lernkurbon pro teknologia nematureco kaj manko de scipovo. Organizoj devas esti realismaj pri komercaj procezoj, kiuj postulas aplikaĵan kontenerigon. IT-gvidantoj devus taksi ĉu ili havas la lertecon por antaŭeniri kun la bezono lerni rapide.
Gartner-spertoj Ni pensas, ke la demandoj en la bildo sube helpos vin determini ĉu vi pretas disfaldi ujojn en produktado:
La plej oftaj eraroj dum uzado de ujoj en produktado
Organizoj ofte subtaksas la fortostreĉon postulatan por funkciigi ujojn en produktado. Gartner malkovris Kelkaj oftaj eraroj en klientscenaroj dum uzado de ujoj en produktadmedioj:
Kiel konservi ujojn sekuraj
Sekureco ne povas esti traktita "poste". Ĝi devas esti enkonstruita en la procezon DevOps, tial ekzistas eĉ speciala termino - DevSecOps. Organizoj devas plani protektante vian ujan medion tra la disvolva vivociklo, kiu inkluzivas la konstruan kaj evoluan procezon, deplojon kaj lanĉon de la aplikaĵo.
Integri la procezon de skanado de aplikaĵbildoj por vundeblecoj en vian kontinuan integriĝon/kontinuan liveraĵon (CI/KD). Aplikoj estas skanitaj ĉe la programaro-konstruo kaj lanĉaj stadioj. Emfazu la bezonon skani kaj identigi malfermfontajn komponentojn, bibliotekojn kaj kadrojn. Programistoj uzantaj malnovajn, vundeblajn versiojn estas unu el la ĉefaj kaŭzoj de uj vundeblecoj.
Plibonigu vian agordon per Testoj de Centro por Interreta Sekureco (KSŜ), kiuj estas disponeblaj por kaj Docker kaj Kubernetes.
Nepre plenumi alirkontrolojn, certigi disigon de devoj kaj efektivigi sekretajn administradpolitikon. Sentemaj informoj, kiel ekzemple Secure Sockets Layer (SSL) ŝlosiloj aŭ datumbazaj akreditaĵoj, estas ĉifritaj fare de la orkestranto aŭ triaj administradservoj kaj elmontritaj ĉe rultempo.
Evitu altigitajn ujojn administrante sekurecpolitikojn por redukti eblajn romporiskojn.
Uzu sekurecajn ilojn, kiuj provizas blankan liston, kondutisman monitoradon kaj detekton de anomalioj por malhelpi malican agadon.
Utiligu la enkonstruitajn kapablojn de Kubernetes. Agordu aliron por uzantoj uzante rolojn. Certigu, ke vi ne donas nenecesajn permesojn al individuaj estaĵoj, kvankam eble necesas iom da tempo por pripensi la minimumajn permesojn necesajn. Povas esti tente doni al la administranto de la cluster larĝajn privilegiojn ĉar tio ŝparas tempon komence. Tamen, ajna kompromiso aŭ eraroj en la konto povas konduki al ruinigaj sekvoj poste.
Evitu duplikatajn alirpermesojn. Povas foje esti utile havi malsamajn rolojn interkovri, sed ĉi tio povas konduki al funkciaj problemoj kaj ankaŭ krei blindajn punktojn kiam oni forigas permesojn. Ankaŭ gravas forigi neuzatajn kaj neaktivajn rolojn.
Agordu retajn politikojn: izoli modulojn por limigi aliron al ili; eksplicite permesi Interretan aliron al tiuj moduloj kiuj bezonas ĝin uzante etikedojn; Eksplicite permesi komunikadon inter tiuj moduloj kiuj bezonas komuniki inter si.
Kiel organizi monitoradon de ujoj kaj servoj en ili
Monitoru konteneritajn aplikojn por havebleco kaj efikeco, utilaj por kaj kapacita planado kaj solvi problemojn pri rendimento.
Aŭtomatigu laborfluojn provizante administradon kaj skalan subtenon por ujoj kaj iliaj gastigaj medioj.
Aŭtomatigu alirkontrolon por kontroli vian uzantbazon, malŝalti malnoviĝintajn kaj gastokontojn kaj forigi nenecesajn privilegiojn.
Certigu, ke via ilaro povas monitori ĉi tiujn ujojn kaj aplikaĵojn tra pluraj medioj (nubo, surloka aŭ hibrida) por bildigi kaj komparmarki rendimenton tra infrastrukturo, reto, sistemoj kaj aplikoj.
Kiel konservi datumojn kaj certigi ĝian sekurecon
Kun la pliiĝo de ŝtataj laboristaj ujoj, klientoj devas konsideri la ĉeeston de datumoj ekster la gastiganto kaj la bezonon protekti tiujn datumojn.
Elektu stokajn solvojn konstruitajn sur principoj mikroserva arkitekturo. Estas pli bone koncentriĝi sur tiuj, kiuj plenumas la postulojn pri konservado de datumoj por ujservoj, estas sendependaj aparataro, API-movitaj, havas distribuitan arkitekturon, subtenas lokan disfaldiĝon kaj disfaldiĝon en la publika nubo.
Evitu proprietajn kromaĵojn kaj interfacojn. Elektu vendistojn, kiuj provizas Kubernetes-integriĝon kaj subtenas normajn interfacojn kiel CSI (Container Storage Interfaces).
Kiel labori kun retoj
La tradicia entreprena reto-modelo, kie IT-teamoj kreas interkonektitajn disvolvadon, testadon, kvalitan certigon kaj produktadmediojn por ĉiu projekto, ne ĉiam kongruas bone kun la kontinua disvolva laborfluo. Krome, kontenerretoj ampleksas plurajn tavolojn.
В blogo Magalix kolektis altnivelaj reguloj, kiujn la efektivigo de cluster-reta solvo devas observi:
Pods planitaj sur la sama nodo devas povi komuniki kun aliaj pods sen uzi NAT (Network Address Translation).
Ĉiuj sistemaj demonoj (fonprocezoj kiel kubelet) kurantaj sur aparta nodo povas komuniki kun podoj kurantaj sur la sama nodo.
Pods uzante gastiga reto, devas povi komuniki kun ĉiuj aliaj podoj sur ĉiuj aliaj nodoj sen uzi NAT. Bonvolu noti, ke gastiga retoj estas nur subtenata en Linuksaj gastigantoj.
Retaj solvoj devas esti forte integritaj kun primitivuloj kaj politikoj de Kubernetes. IT-gvidantoj devas strebi al alta grado de reto-aŭtomatigo kaj provizi programistojn per la ĝustaj iloj kaj sufiĉa fleksebleco.
Eksciu ĉu via CaaS (ujo kiel servo) aŭ via SDN (Software Defined Network) subtenas Kubernetes-retojn. Se ne aŭ la subteno estas nesufiĉa, uzu la retan interfacon CNI (Container Network Interface) por viaj ujoj, kiu subtenas la necesajn funkciojn kaj politikojn.
Certigu, ke via CaaS aŭ PaaS (platformo kiel servo) subtenas la kreadon de enirregiloj kaj/aŭ ŝarĝbalanciloj, kiuj distribuas envenantan trafikon inter grapolnodoj. Se ĉi tio ne estas eblo, esploru per triaj prokuriloj aŭ servaj retoj.
Trejnu viajn retajn inĝenierojn pri Linukso-retoj kaj retaj aŭtomatigaj iloj por redukti la mankon de kapabloj kaj pliigi lertecon.
Kiel administri la aplikaĵan vivociklon
Por aŭtomatigita kaj senjunta aplikaĵa livero, vi devas kompletigi ujran instrumentadon per aliaj aŭtomatigaj iloj, kiel infrastrukturo kiel kodo (IaC) produktoj. Ĉi tiuj inkluzivas Chef, Puppet, Ansible kaj Terraform.
Fiksu normojn por bazaj ujbildoj bazitaj sur grandeco, licencado kaj fleksebleco por programistoj por aldoni komponantojn.
Uzu agordajn administradsistemojn por administri la vivociklon de ujoj kiuj tavoligas agordon bazitan sur bazaj bildoj situantaj en publikaj aŭ privataj deponejoj.
Integri vian CaaS-platformon kun aŭtomatigaj iloj por aŭtomatigi vian tutan aplikaĵan laborfluon.
Kiel administri ujojn kun orkestroj
La kerna funkcieco por deploji ujojn estas disponigita ĉe la instrumentaj kaj planaj tavoloj. Dum planado, ujoj estas metitaj sur la plej optimumajn gastigantojn en la areto, kiel diktitaj de la instrumentaj tavolpostuloj.
Kubernetes fariĝis la fakta ujo orkestra normo kun aktiva komunumo kaj estas subtenata de la plej multaj ĉefaj komercaj vendistoj.
Difinu bazajn postulojn por sekurecaj kontroloj, monitorado, politika administrado, datumpersistemo, retoj kaj kontenera vivciklo-administrado.
Surbaze de ĉi tiuj postuloj, elektu la ilon, kiu plej taŭgas por viaj postuloj kaj uzkazoj.
Uzu Gartner-esploron (vidu "Kiel elekti Kubernetes-deplojan modelon") por kompreni la avantaĝojn kaj malavantaĝojn de malsamaj Kubernetes-deplojmodeloj kaj elekti la plej bonan por via aplikaĵo.
Elektu provizanton, kiu povas provizi hibridan instrumentadon por laborujoj tra pluraj medioj kun strikta backend integriĝo, oftaj administradplanoj kaj konsekvencaj prezaj modeloj.
Kiel uzi la kapablojn de nubaj provizantoj
Gartner kredastiu intereso pri deplojado de ujoj sur publika nubo IaaS kreskas pro la havebleco de pretaj CaaS-proponoj, same kiel la strikta integriĝo de ĉi tiuj proponoj kun aliaj produktoj ofertitaj de nubaj provizantoj.
IaaS-nuboj ofertas laŭpetan konsumadon de rimedoj, rapidan skaleblon kaj administrado de servo, kiu helpos eviti la bezonon de profunda scio pri la infrastrukturo kaj ĝia prizorgado. Plej multaj nubaj provizantoj ofertas konteneron-administran servon, kaj iuj ofertas plurajn instrumentajn opciojn.
Ŝlosilnubaj administritaj servaj provizantoj estas prezentitaj en la tabelo:
Nuba provizanto Servotipo Produkto/servo
alibaba
Denaska Nuba Servo
Alibaba Cloud Container Service, Alibaba Cloud Container Service por Kubernetes
* Ni ne kaŝos ĝin, ni aldonis nin ĉi tie dum la traduko :)
Publikaj nubaj provizantoj ankaŭ aldonas novajn kapablojn kaj liberigas surlokajn produktojn. En proksima estonteco, nubaj provizantoj disvolvos subtenon por hibridaj nuboj kaj plurnubaj medioj.
Objektive taksu la kapablon de via organizo disfaldi kaj administri taŭgajn ilojn, kaj konsideru alternativajn nubajn ujadministrajn servojn.
Elektu programaron zorge, uzu malferman fonton kie eble.
Elektu provizantojn kun oftaj operaciaj modeloj en hibridaj medioj, kiuj ofertas ununuran vitran administradon de federaciaj aretoj, kaj ankaŭ provizantojn, kiuj faciligas mem-gastigi IaaS.
Indas serĉi distribuojn, kiuj subtenas altan haveblecon el la skatolo. Ĉi tio inkluzivas subtenon por pluraj ĉefaj arkitekturoj, tre haveblaj etcd-komponentoj kaj sekurkopio kaj reakiro.
Por certigi moviĝeblon en viaj Kubernetes-medioj, plej bone estas elekti nubajn provizantojn, kiuj subtenas ampleksan gamon de disfaldaj modeloj, de surlokaj ĝis hibridaj ĝis plurnubaj.
Provizoproponoj ankaŭ devas esti taksitaj surbaze de facileco de aranĝo, instalado kaj kreado de aretoj, same kiel ĝisdatigoj, monitorado kaj solvo de problemoj. La baza postulo estas subteni plene aŭtomatigitajn grapolajn ĝisdatigojn kun nula malfunkcio. La solvo, kiun vi elektas, devus ankaŭ permesi al vi ruli ĝisdatigojn permane.
Identeca kaj aliradministrado estas grava de kaj sekureco kaj administradperspektivo. Certigu, ke la Kubernetes-distribuo, kiun vi elektas, subtenas integriĝon kun la aŭtentigaj kaj rajtigaj iloj, kiujn vi uzas interne. RBAC kaj fajngrajna alirkontrolo ankaŭ estas gravaj funkcioj.
La distribuo, kiun vi elektas, devas aŭ havi denaskan programar-difinitan interkonektan solvon, kiu kovras larĝan gamon de malsamaj aplikaĵoj aŭ infrastrukturaj postuloj, aŭ subtenas unu el la popularaj CNI-bazitaj retaj efektivigoj, inkluzive de Flannel, Calico, kube-router aŭ OVN.
La enkonduko de ujoj en produktadon fariĝas la ĉefa direkto, kiel pruvas la rezultoj de enketo farita sur Gartner-sesioj pri infrastrukturo, operacioj kaj nubaj strategioj (IOCS) en decembro 2018:
Kiel vi povas vidi, 27% de respondintoj jam uzas ujojn en sia laboro, kaj 63% planas fari tion.
В Enketo pri Portworx kaj Aqua Security 24% de respondantoj raportis investi pli ol duonan milionon da dolaroj jare en ujteknologioj, kaj 17% de respondantoj elspezis pli ol milionon da dolaroj jare por ili.