Praktikat më të mira dhe praktikat më të mira për drejtimin e kontejnerëve dhe Kubernetes në mjediset e prodhimit

Praktikat më të mira dhe praktikat më të mira për drejtimin e kontejnerëve dhe Kubernetes në mjediset e prodhimit
Ekosistemi i teknologjisë së kontejnerizimit po evoluon dhe ndryshon me shpejtësi, ndaj mungojnë praktikat e mira të punës në këtë fushë. Sidoqoftë, Kubernetes dhe kontejnerët po përdoren gjithnjë e më shumë, si për modernizimin e aplikacioneve të vjetra, ashtu edhe për zhvillimin e aplikacioneve moderne të cloud. 

Ekip Kubernetes aaS nga Mail.ru mblodhi parashikime, këshilla dhe praktika më të mira për liderët e tregut nga Gartner, 451 Research, StacxRoх dhe të tjerë. Ato do të mundësojnë dhe përshpejtojnë vendosjen e kontejnerëve në mjediset e prodhimit.

Si të dini nëse kompania juaj është e gatshme të vendosë kontejnerë në një mjedis prodhimi

Sipas Gartner, në vitin 2022, më shumë se 75% e organizatave do të përdorin aplikacione të kontejnerizuara në prodhim. Kjo është dukshëm më shumë se aktualisht, kur më pak se 30% e kompanive përdorin aplikacione të tilla. 

Sipas Research 451Tregu i parashikuar për aplikimet e teknologjisë së kontejnerëve në vitin 2022 do të jetë 4,3 miliardë dollarë. Kjo është më shumë se dyfishi i shumës së parashikuar në 2019, me një normë rritjeje tregu prej 30%.

В Sondazhi i Portworx dhe Aqua Security 87% e të anketuarve thanë se aktualisht përdorin teknologji të kontejnerëve. Për krahasim, në vitin 2017 kishte 55% të të anketuarve të tillë. 

Megjithë interesin në rritje dhe adoptimin e kontejnerëve, futja e tyre në prodhim kërkon një kurbë mësimi për shkak të papjekurisë teknologjike dhe mungesës së njohurive. Organizatat duhet të jenë realiste në lidhje me proceset e biznesit që kërkojnë kontejnerizimin e aplikacioneve. Udhëheqësit e TI-së duhet të vlerësojnë nëse kanë aftësitë e vendosura për të ecur përpara me nevojën për mësim të shpejtë. 

Ekspertët e Gartner Ne mendojmë se pyetjet në imazhin më poshtë do t'ju ndihmojnë të përcaktoni nëse jeni gati të vendosni kontejnerë në prodhim:

Praktikat më të mira dhe praktikat më të mira për drejtimin e kontejnerëve dhe Kubernetes në mjediset e prodhimit

Gabimet më të zakonshme gjatë përdorimit të kontejnerëve në prodhim

Organizatat shpesh nënvlerësojnë përpjekjet e nevojshme për të operuar kontejnerët në prodhim. Gartner zbuloi Disa gabime të zakonshme në skenarët e klientëve kur përdorni kontejnerë në mjediset e prodhimit:

Praktikat më të mira dhe praktikat më të mira për drejtimin e kontejnerëve dhe Kubernetes në mjediset e prodhimit

Si t'i mbani të sigurt kontejnerët

Siguria nuk mund të trajtohet "më vonë". Duhet të ndërtohet në procesin DevOps, prandaj ekziston edhe një term i veçantë - DevSecOps. Organizatat duhet të planifikojnë duke mbrojtur mjedisin e kontejnerit tuaj gjatë gjithë ciklit jetësor të zhvillimit, i cili përfshin procesin e ndërtimit dhe zhvillimit, vendosjen dhe lëshimin e aplikacionit.

Rekomandime nga Gartner

  1. Integroni procesin e skanimit të imazheve të aplikacionit për dobësi në tubacionin tuaj të integrimit të vazhdueshëm/dorëzimit të vazhdueshëm (CI/CD). Aplikacionet skanohen në fazat e ndërtimit dhe lëshimit të softuerit. Theksoni nevojën për të skanuar dhe identifikuar komponentët, bibliotekat dhe kornizat me burim të hapur. Zhvilluesit që përdorin versione të vjetra dhe të cenueshme është një nga shkaqet kryesore të dobësive të kontejnerëve.
  2. Përmirësoni konfigurimin tuaj me testet e Qendrës për Sigurinë në Internet (CIS), të cilat janë të disponueshme si për Docker ashtu edhe për Kubernetes.
  3. Sigurohuni që të zbatoni kontrollet e aksesit, të siguroni ndarjen e detyrave dhe të zbatoni një politikë të menaxhimit të sekreteve. Informacioni i ndjeshëm, si çelësat Secure Sockets Layer (SSL) ose kredencialet e bazës së të dhënave, kodohen nga orkestratori ose shërbimet e menaxhimit të palëve të treta dhe ekspozohen në kohën e ekzekutimit
  4. Shmangni kontejnerët e ngritur duke menaxhuar politikat e sigurisë për të zvogëluar rreziqet e mundshme të shkeljes.
  5. Përdorni mjete sigurie që ofrojnë listën e bardhë, monitorimin e sjelljes dhe zbulimin e anomalive për të parandaluar aktivitetin keqdashës.

Rekomandime nga StacxRox:

  1. Përdorni aftësitë e integruara të Kubernetes. Vendosni aksesin për përdoruesit që përdorin role. Sigurohuni që të mos u jepni leje të panevojshme subjekteve individuale, edhe pse mund të duhet pak kohë për të menduar për lejet minimale të kërkuara. Mund të jetë joshëse t'i jepni administratorit të grupit privilegje të gjera pasi kjo kursen kohë fillimisht. Sidoqoftë, çdo kompromis ose gabim në llogari mund të çojë në pasoja shkatërruese më vonë. 
  2. Shmangni lejet e dyfishta të aksesit. Ndonjëherë mund të jetë e dobishme që rolet e ndryshme të mbivendosen, por kjo mund të çojë në probleme operacionale dhe gjithashtu të krijojë pika qorre kur heqni lejet. Është gjithashtu e rëndësishme të hiqni rolet e papërdorura dhe joaktive.
  3. Përcaktoni politikat e rrjetit: izoloni modulet për të kufizuar aksesin në to; të lejojë në mënyrë të qartë aksesin në internet në ato module që kanë nevojë për të duke përdorur etiketa; Lejoni në mënyrë të qartë komunikimin midis atyre moduleve që duhet të komunikojnë me njëri-tjetrin. 

Si të organizohet monitorimi i kontejnerëve dhe shërbimeve në to

Siguria dhe Monitorimi - problemet kryesore të kompanive gjatë vendosjes së grupimeve të Kubernetes. Zhvilluesit janë gjithmonë më të fokusuar në veçoritë e aplikacioneve që zhvillojnë sesa në aspektet monitorimin e këtyre aplikacioneve

Rekomandime nga Gartner:

  1. Mundohuni të monitoroni gjendjen e kontejnerëve ose shërbimeve në to në lidhje me monitorimin e sistemeve pritës.
  2. Kërkoni shitës dhe mjete me integrim të thellë në orkestrimin e kontejnerëve, veçanërisht Kubernetes.
  3. Zgjidhni mjete që ofrojnë regjistrime të detajuara, zbulim automatik të shërbimit dhe rekomandime në kohë reale duke përdorur analitikën dhe/ose mësimin e makinerive.

Blogu SolarWinds këshillon:

  1. Përdorni mjete për të zbuluar dhe gjurmuar automatikisht metrikat e kontejnerëve, duke ndërlidhur metrikat e performancës si CPU, memoria dhe koha e funksionimit.
  2. Siguroni planifikim optimal të kapacitetit duke parashikuar datat e zbrazjes së kapacitetit bazuar në metrikat e monitorimit të kontejnerëve.
  3. Monitoroni aplikacionet me kontejnerë për disponueshmërinë dhe performancën, të dobishme si për planifikimin e kapacitetit ashtu edhe për zgjidhjen e problemeve të performancës.
  4. Automatizoni rrjedhat e punës duke ofruar mbështetje për menaxhimin dhe shkallëzimin për kontejnerët dhe mjediset e tyre të pritjes.
  5. Automatizoni kontrollin e aksesit për të monitoruar bazën tuaj të përdoruesve, çaktivizoni llogaritë e vjetruara dhe të vizitorëve dhe hiqni privilegjet e panevojshme.
  6. Sigurohuni që grupi juaj i mjeteve të mund t'i monitorojë këto kontejnerë dhe aplikacione nëpër mjedise të shumta (cloud, në ambiente ose hibride) për të vizualizuar dhe vlerësuar performancën në infrastrukturë, rrjet, sisteme dhe aplikacione.

Si të ruani të dhënat dhe të siguroni sigurinë e tyre

Me rritjen e kontejnerëve të punonjësve me status, klientët duhet të marrin në konsideratë praninë e të dhënave jashtë hostit dhe nevojën për t'i mbrojtur ato të dhëna. 

Sipas Sondazhi i Portworx dhe Aqua Security, siguria e të dhënave kryeson listën e shqetësimeve të sigurisë të cituar nga shumica e të anketuarve (61%). 

Kriptimi i të dhënave është strategjia kryesore e sigurisë (64%), por të anketuarit përdorin gjithashtu monitorimin e kohës së funksionimit

(49%), skanimi i regjistrave për dobësi (49%), skanimi për dobësi në tubacionet CI/CD (49%) dhe bllokimi i anomalive përmes mbrojtjes në kohën e ekzekutimit (48%).

Rekomandime nga Gartner:

  1. Zgjidhni zgjidhjet e ruajtjes të ndërtuara mbi parime Arkitektura e mikroshërbimeve. Është më mirë të fokusohemi në ato që plotësojnë kërkesat e ruajtjes së të dhënave për shërbimet e kontejnerëve, janë të pavarura nga hardueri, të drejtuara nga API, kanë një arkitekturë të shpërndarë, mbështesin vendosjen dhe vendosjen lokale në renë publike.
  2. Shmangni shtojcat dhe ndërfaqet e pronarit. Zgjidhni shitësit që ofrojnë integrimin e Kubernetes dhe mbështesin ndërfaqe standarde si CSI (Ndërfaqet e ruajtjes së kontejnerëve).

Si të punoni me rrjete

Modeli tradicional i rrjetit të ndërmarrjeve, ku ekipet e TI-së krijojnë mjedise të zhvillimit, testimit, sigurimit të cilësisë dhe prodhimit në rrjet për çdo projekt, nuk përshtatet gjithmonë mirë me rrjedhën e punës së zhvillimit të vazhdueshëm. Për më tepër, rrjetet e kontejnerëve përfshijnë shtresa të shumta.

В blog Magalix mbledhur rregullat e nivelit të lartë që zbatimi i një zgjidhjeje të rrjetit të grupimeve duhet të përputhet me:

  1. Pod-et e planifikuara në të njëjtën nyje duhet të jenë në gjendje të komunikojnë me pods të tjerë pa përdorur NAT (Network Address Translation).
  2. Të gjithë demonët e sistemit (proceset e sfondit si kubelet) që funksionojnë në një nyje të caktuar mund të komunikojnë me pods që funksionojnë në të njëjtën nyje.
  3. Pods duke përdorur rrjeti pritës, duhet të jetë në gjendje të komunikojë me të gjitha podet e tjera në të gjitha nyjet e tjera pa përdorur NAT. Ju lutemi vini re se rrjeti i hostit mbështetet vetëm në hostet Linux.

Zgjidhjet e rrjetit duhet të integrohen fort me primitivët dhe politikat e Kubernetes. Drejtuesit e TI-së duhet të përpiqen për një shkallë të lartë të automatizimit të rrjetit dhe t'u ofrojnë zhvilluesve mjetet e duhura dhe fleksibilitet të mjaftueshëm.

Rekomandime nga Gartner:

  1. Zbuloni nëse CaaS juaj (kontejneri si shërbim) ose SDN juaj (Rrjeti i përcaktuar me softuer) mbështet rrjetet Kubernetes. Nëse jo ose mbështetja është e pamjaftueshme, përdorni ndërfaqen e rrjetit CNI (Container Network Interface) për kontejnerët tuaj, e cila mbështet funksionalitetin dhe politikat e nevojshme.
  2. Sigurohuni që CaaS ose PaaS juaj (platforma si shërbim) të mbështesë krijimin e kontrolluesve të hyrjes dhe/ose balancuesve të ngarkesës që shpërndajnë trafikun në hyrje midis nyjeve të grupimit. Nëse ky nuk është një opsion, eksploroni duke përdorur proxies të palëve të treta ose rrjeta shërbimi.
  3. Trajnoni inxhinierët e rrjetit tuaj në rrjetet Linux dhe mjetet e automatizimit të rrjetit për të zvogëluar boshllëkun e aftësive dhe për të rritur shkathtësinë.

Si të menaxhoni ciklin e jetës së aplikacionit

Për dërgimin e aplikacioneve të automatizuara dhe pa probleme, duhet të plotësoni orkestrimin e kontejnerëve me mjete të tjera automatizimi, të tilla si produktet e infrastrukturës si kod (IaC). Këto përfshijnë Chef, Puppet, Ansible dhe Terraform. 

Kërkohen gjithashtu mjete automatizimi për ndërtimin dhe nxjerrjen e aplikacioneve (shih "Kuadranti magjik për orkestrimin e lëshimit të aplikacionit"). Kontejnerët ofrojnë gjithashtu aftësi zgjerimi të ngjashme me ato të disponueshme kur vendosen makina virtuale (VM). Prandaj, drejtuesit e IT duhet të kenë mjetet e menaxhimit të ciklit jetësor të kontejnerëve.

Rekomandime nga Gartner:

  1. Vendosni standarde për imazhet e kontejnerëve bazë bazuar në madhësinë, licencimin dhe fleksibilitetin që zhvilluesit të shtojnë komponentë.
  2. Përdorni sistemet e menaxhimit të konfigurimit për të menaxhuar ciklin e jetës së kontejnerëve që konfigurojnë shtresa bazuar në imazhet bazë të vendosura në depo publike ose private.
  3. Integroni platformën tuaj CaaS me mjete automatizimi për të automatizuar të gjithë rrjedhën e punës së aplikacionit tuaj.

Si të menaxhoni kontejnerët me orkestruesit

Funksionaliteti kryesor për vendosjen e kontejnerëve ofrohet në shtresat e orkestrimit dhe planifikimit. Gjatë planifikimit, kontejnerët vendosen në hostet më optimale në grup, siç diktohet nga kërkesat e shtresës së orkestrimit. 

Kubernetes është bërë standardi de facto i orkestrimit të kontejnerëve me një komunitet aktiv dhe mbështetet nga shumica e shitësve kryesorë komercialë. 

Rekomandime nga Gartner:

  1. Përcaktoni kërkesat themelore për kontrollet e sigurisë, monitorimin, menaxhimin e politikave, qëndrueshmërinë e të dhënave, rrjetëzimin dhe menaxhimin e ciklit të jetës së kontejnerëve.
  2. Bazuar në këto kërkesa, zgjidhni mjetin që i përshtatet më së miri kërkesave tuaja dhe rasteve të përdorimit.
  3. Përdorni hulumtimin Gartner (shih "Si të zgjidhni një model vendosjeje Kubernetes") për të kuptuar të mirat dhe të këqijat e modeleve të ndryshme të vendosjes së Kubernetes dhe zgjidhni më të mirën për aplikacionin tuaj.
  4. Zgjidhni një ofrues që mund të ofrojë orkestrim hibrid për kontejnerët e punës nëpër mjedise të shumta me integrim të ngushtë në fund, plane të zakonshme menaxhimi dhe modele çmimesh të qëndrueshme.

Si të përdorni aftësitë e ofruesve të cloud

Gartner besonse interesi për vendosjen e kontejnerëve në renë publike IaaS po rritet për shkak të disponueshmërisë së ofertave të gatshme të CaaS, si dhe integrimit të ngushtë të këtyre ofertave me produkte të tjera të ofruara nga ofruesit e cloud.

Retë IaaS ofrojnë konsum të burimeve sipas kërkesës, shkallëzim të shpejtë dhe menaxhimin e shërbimit, e cila do të ndihmojë në shmangien e nevojës për njohuri të thelluara të infrastrukturës dhe mirëmbajtjes së saj. Shumica e ofruesve të cloud ofrojnë një shërbim të menaxhimit të kontejnerëve dhe disa ofrojnë opsione të shumta orkestrimi. 

Ofruesit kryesorë të shërbimeve të menaxhuara në renë kompjuterike janë paraqitur në tabelë: 

Ofruesi i resë kompjuterike
Lloji i shërbimit
Produkt/shërbim

Alibaba
Shërbimi Native Cloud
Shërbimi i kontejnerëve në renë kompjuterike Alibaba, Shërbimi i kontejnerëve në renë kompjuterike Alibaba për Kubernetes

Shërbimet Web Amazon (AWS)
Shërbimi Native Cloud
Shërbimet e kontejnerëve elastikë të Amazon (ECS), Amazon ECS për Kubernetes (EKS), AWS Fargate

Tufa gjigante
MSP
Infrastruktura Kubernetes e menaxhuar nga Swarm Giant

Google
Shërbimi Native Cloud
Motori i kontejnerëve të Google (GKE)

IBM
Shërbimi Native Cloud
Shërbimi IBM Cloud Kubernetes

microsoft
Shërbimi Native Cloud
Shërbimi Azure Kubernetes, Pëlhurë Shërbimi Azure

Orakull
Shërbimi Native Cloud
Motori i kontejnerëve OCI për Kubernetes

Platform9
MSP
Menaxhuar Kubernetes

Red Hat
Shërbimi i pritur
OpenShift Dedikuar & Online

VMware
Shërbimi i pritur
Cloud PKS (Beta)

Mail.ru Cloud Solutions*
Shërbimi Native Cloud
Mail.ru Cloud Containers

* Nuk do ta fshehim, e shtuam veten këtu gjatë përkthimit :)

Ofruesit publikë të reve kompjuterike po shtojnë gjithashtu aftësi të reja dhe po lëshojnë produkte brenda ambienteve. Në të ardhmen e afërt, ofruesit e reve kompjuterike do të zhvillojnë mbështetje për retë hibride dhe mjediset me shumë re. 

Rekomandimet e Gartner:

  1. Vlerësoni në mënyrë objektive aftësinë e organizatës suaj për të vendosur dhe menaxhuar mjetet e duhura dhe merrni parasysh shërbimet alternative të menaxhimit të kontejnerëve në renë kompjuterike.
  2. Zgjidhni softuerin me kujdes, përdorni burim të hapur ku është e mundur.
  3. Zgjidhni ofruesit me modele të zakonshme operimi në mjedise hibride që ofrojnë panel të vetëm të menaxhimit të xhamit të grupimeve të federuara, si dhe ofrues që e bëjnë të lehtë vetë-shërbimin IaaS.

Disa këshilla për zgjedhjen e një ofruesi Kubernetes aaS nga blogu Replex:

  1. Vlen të kërkoni shpërndarje që mbështesin disponueshmërinë e lartë jashtë kutisë. Kjo përfshin mbështetjen për arkitektura të shumta kryesore, komponentë etcd shumë të disponueshme, si dhe kopje rezervë dhe rikuperim.
  2. Për të siguruar lëvizshmërinë në mjediset tuaja Kubernetes, është më mirë të zgjidhni ofruesit e reve kompjuterike që mbështesin një gamë të gjerë modelesh vendosjeje, nga brenda ambienteve, tek hibridët në multi-cloud. 
  3. Ofertat e ofruesve duhet gjithashtu të vlerësohen bazuar në lehtësinë e konfigurimit, instalimit dhe krijimit të grupimeve, si dhe përditësimet, monitorimin dhe zgjidhjen e problemeve. Kërkesa bazë është të mbështesni përditësimet plotësisht të automatizuara të grupimeve me kohë joproduktive. Zgjidhja që zgjidhni duhet t'ju lejojë gjithashtu të ekzekutoni përditësimet manualisht. 
  4. Menaxhimi i identitetit dhe aksesit është i rëndësishëm si nga perspektiva e sigurisë ashtu edhe nga ajo e qeverisjes. Sigurohuni që shpërndarja Kubernetes që zgjidhni të mbështesë integrimin me veglat e vërtetimit dhe autorizimit që përdorni brenda. RBAC dhe kontrolli i aksesit me grimca të imta janë gjithashtu grupe të rëndësishme funksionesh.
  5. Shpërndarja që zgjidhni ose duhet të ketë një zgjidhje rrjeti të përcaktuar nga softueri që mbulon një gamë të gjerë kërkesash të ndryshme aplikacionesh ose infrastrukturë, ose të mbështesë një nga implementimet e rrjeteve të bazuara në CNI, duke përfshirë Flannel, Calico, kube-ruter ose OVN.

Futja e kontejnerëve në prodhim po bëhet drejtimi kryesor, siç dëshmohet nga rezultatet e një sondazhi të kryer në Seancat Gartner mbi infrastrukturën, operacionet dhe strategjitë e resë kompjuterike (IOCS) në dhjetor 2018:

Praktikat më të mira dhe praktikat më të mira për drejtimin e kontejnerëve dhe Kubernetes në mjediset e prodhimit
Siç mund ta shihni, 27% e të anketuarve tashmë përdorin kontejnerë në punën e tyre, dhe 63% po planifikojnë ta bëjnë këtë.

В Sondazhi i Portworx dhe Aqua Security 24% e të anketuarve raportuan se investonin më shumë se gjysmë milioni dollarë në vit në teknologjitë e kontejnerëve dhe 17% e të anketuarve shpenzonin më shumë se një milion dollarë në vit për to. 

Artikull i përgatitur nga ekipi i platformës cloud Mail.ru Cloud Solutions.

Çfarë tjetër për të lexuar në këtë temë:

  1. Praktikat më të mira të DevOps: Raporti DORA.
  2. Kubernetes në frymën e piraterisë me një shabllon për zbatim.
  3. 25 Mjete të dobishme për vendosjen dhe miratimin e Kubernetes.

Burimi: www.habr.com

Shto një koment