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:

Plej bonaj Praktikoj kaj Plej Bonaj Praktikoj por Kurado de Ujoj kaj Kubernetes en Produktaj Medioj

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:

Plej bonaj Praktikoj kaj Plej Bonaj Praktikoj por Kurado de Ujoj kaj Kubernetes en Produktaj Medioj

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.

Rekomendoj de Gartner

  1. 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.
  2. Plibonigu vian agordon per Testoj de Centro por Interreta Sekureco (KSŜ), kiuj estas disponeblaj por kaj Docker kaj Kubernetes.
  3. 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.
  4. Evitu altigitajn ujojn administrante sekurecpolitikojn por redukti eblajn romporiskojn.
  5. Uzu sekurecajn ilojn, kiuj provizas blankan liston, kondutisman monitoradon kaj detekton de anomalioj por malhelpi malican agadon.

Rekomendoj de StacxRox:

  1. 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. 
  2. 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.
  3. 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

Sekureco kaj Monitorado - ĉefaj problemoj de kompanioj dum deplojado de Kubernetes-aretoj. Programistoj ĉiam pli koncentriĝas pri la trajtoj de la aplikaĵoj, kiujn ili disvolvas, ol la aspektoj monitorante ĉi tiujn aplikojn

Rekomendoj de Gartner:

  1. Provu kontroli la staton de ujoj aŭ servoj en ili kune kun monitorado de gastigaj sistemoj.
  2. Serĉu vendistojn kaj ilojn kun profunda integriĝo en ujran instrumentadon, precipe Kubernetes.
  3. Elektu ilojn, kiuj provizas detalan registradon, aŭtomatan servan malkovron kaj realtempajn rekomendojn uzante analizojn kaj/aŭ maŝinlernadon.

La blogo de SolarWinds konsilas:

  1. Uzu ilojn por aŭtomate malkovri kaj spuri ujajn metrikojn, korelaciante rendimentajn metrikojn kiel CPU, memoro kaj funkciado.
  2. Certigu optimuman kapacitan planadon antaŭdirante kapacitajn datojn bazitajn sur kontenera monitora metriko.
  3. Monitoru konteneritajn aplikojn por havebleco kaj efikeco, utilaj por kaj kapacita planado kaj solvi problemojn pri rendimento.
  4. Aŭtomatigu laborfluojn provizante administradon kaj skalan subtenon por ujoj kaj iliaj gastigaj medioj.
  5. Aŭtomatigu alirkontrolon por kontroli vian uzantbazon, malŝalti malnoviĝintajn kaj gastokontojn kaj forigi nenecesajn privilegiojn.
  6. 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. 

Laŭ Enketo de Portworx kaj Aqua Security, datumsekureco superas la liston de sekurecaj zorgoj cititaj de la plimulto de respondantoj (61%). 

Datuma ĉifrado estas la ĉefa sekureca strategio (64%), sed respondantoj ankaŭ uzas rultempan monitoradon

(49%), skanante registrojn por vundeblecoj (49%), skanante por vundeblecoj en CI/KD-duktoj (49%), kaj blokante anomaliojn per rultempa protekto (48%).

Rekomendoj de Gartner:

  1. 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.
  2. 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:

  1. Pods planitaj sur la sama nodo devas povi komuniki kun aliaj pods sen uzi NAT (Network Address Translation).
  2. Ĉiuj sistemaj demonoj (fonprocezoj kiel kubelet) kurantaj sur aparta nodo povas komuniki kun podoj kurantaj sur la sama nodo.
  3. 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.

Rekomendoj de Gartner:

  1. 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.
  2. 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.
  3. 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. 

Aŭtomatigaj iloj por konstrui kaj lanĉi aplikaĵojn ankaŭ estas bezonataj (vidu "Magia Kvadranto por Aplikaĵo-Eldon-Orkestrado"). Ujoj ankaŭ disponigas etendeblajn kapablojn similajn al tiuj haveblaj dum deplojado de virtualaj maŝinoj (VM). Tial, IT-gvidantoj devas havi iloj pri administrado de vivciklo de ujoj.

Rekomendoj de Gartner:

  1. Fiksu normojn por bazaj ujbildoj bazitaj sur grandeco, licencado kaj fleksebleco por programistoj por aldoni komponantojn.
  2. Uzu agordajn administradsistemojn por administri la vivociklon de ujoj kiuj tavoligas agordon bazitan sur bazaj bildoj situantaj en publikaj aŭ privataj deponejoj.
  3. 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. 

Rekomendoj de Gartner:

  1. Difinu bazajn postulojn por sekurecaj kontroloj, monitorado, politika administrado, datumpersistemo, retoj kaj kontenera vivciklo-administrado.
  2. Surbaze de ĉi tiuj postuloj, elektu la ilon, kiu plej taŭgas por viaj postuloj kaj uzkazoj.
  3. 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.
  4. 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

Amazonaj Servoj (AWS)
Denaska Nuba Servo
Amazon Elastic Container Services (ECS), Amazon ECS por Kubernetes (EKS), AWS Fargate

Giganta Svarmo
MSP
Giganta Svarmo Administrita Kubernetes Infrastrukturo

google
Denaska Nuba Servo
Google Container Engine (GKE)

IBM
Denaska Nuba Servo
IBM Cloud Kubernetes Servo

microsoft
Denaska Nuba Servo
Azure Kubernetes Service, Azure Service Fabric

plejsanktejo
Denaska Nuba Servo
OCI Container Engine por Kubernetes

PlatformoNumx
MSP
Administrita Kubernetes

ruĝa Ĉapelo
Gastigita Servo
OpenShift Dediĉita & Enreta

VMware
Gastigita Servo
Cloud PKS (Betao)

Mail.ru Cloud Solutions*
Denaska Nuba Servo
Mail.ru Nubaj Ujoj

* 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. 

Rekomendoj de Gartner:

  1. Objektive taksu la kapablon de via organizo disfaldi kaj administri taŭgajn ilojn, kaj konsideru alternativajn nubajn ujadministrajn servojn.
  2. Elektu programaron zorge, uzu malferman fonton kie eble.
  3. 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.

Kelkaj konsiletoj por elekti Kubernetes aaS-provizanton de la Replex-blogo:

  1. 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.
  2. 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. 
  3. 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. 
  4. 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.
  5. 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:

Plej bonaj Praktikoj kaj Plej Bonaj Praktikoj por Kurado de Ujoj kaj Kubernetes en Produktaj Medioj
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. 

Artikolo preparita de la teamo de nuba platformo Mail.ru Cloud Solutions.

Kion alian legi pri la temo:

  1. DevOps Plej Bonaj Praktikoj: DORA Raporto.
  2. Kubernetes en la spirito de piratado kun ŝablono por efektivigo.
  3. 25 Utilaj Iloj por Kubernetes Deplojo kaj Adopto.

fonto: www.habr.com

Aldoni komenton