Paraugprakse un labākā prakse konteineru un Kubernetes darbināŔanai ražoÅ”anas vidēs

Paraugprakse un labākā prakse konteineru un Kubernetes darbināŔanai ražoÅ”anas vidēs
Konteineru tehnoloÄ£iju ekosistēma strauji attÄ«stās un mainās, tāpēc Å”ajā jomā trÅ«kst labas darba prakses. Tomēr Kubernetes un konteineri tiek izmantoti arvien vairāk gan mantoto lietojumprogrammu modernizÄ“Å”anai, gan modernu mākoņa lietojumprogrammu izstrādei. 

Komanda Kubernetes aaS no Mail.ru apkopoja prognozes, padomus un labāko praksi tirgus lÄ«deriem no Gartner, 451 Research, StacxRoх un citiem. Tie ļaus un paātrinās konteineru izvietoÅ”anu ražoÅ”anas vidēs.

Kā uzzināt, vai jÅ«su uzņēmums ir gatavs izvietot konteinerus ražoÅ”anas vidē

Pēc Gartnera domām, 2022. gadā vairāk nekā 75% organizāciju ražoÅ”anā izmantos konteinerizētās lietojumprogrammas. Tas ir ievērojami vairāk nekā paÅ”laik, kad Ŕādas aplikācijas izmanto mazāk nekā 30% uzņēmumu. 

Saskaņā ar 451 ResearchParedzamais konteineru tehnoloģiju lietojumu tirgus 2022. gadā būs 4,3 miljardi ASV dolāru. Tas ir vairāk nekā divas reizes vairāk nekā 2019. gadā prognozētais, un tirgus pieauguma temps būs 30%.

Š’ Portworx un Aqua Security aptauja 87% respondentu teica, ka paÅ”laik izmanto konteineru tehnoloÄ£ijas. SalÄ«dzinājumam, 2017. gadā Ŕādu respondentu bija 55%. 

Neskatoties uz pieaugoÅ”o interesi un konteineru pieņemÅ”anu, to ievieÅ”anai ražoÅ”anā ir nepiecieÅ”ama mācÄ«Å”anās lÄ«kne tehnoloÄ£iju nenobrieduma un zināŔanu trÅ«kuma dēļ. Organizācijām ir jābÅ«t reālistiskām attiecÄ«bā uz biznesa procesiem, kuriem nepiecieÅ”ama lietojumprogrammu konteinerizācija. IT vadÄ«tājiem ir jānovērtē, vai viņiem ir nepiecieÅ”amās prasmes, lai ātri mācÄ«tos. 

Gartner eksperti Mēs domājam, ka tālāk esoÅ”ajā attēlā redzamie jautājumi palÄ«dzēs jums noteikt, vai esat gatavs izvietot konteinerus ražoÅ”anā.

Paraugprakse un labākā prakse konteineru un Kubernetes darbināŔanai ražoÅ”anas vidēs

Biežākās kļūdas, izmantojot konteinerus ražoŔanā

Organizācijas bieži vien nepietiekami novērtē pÅ«les, kas nepiecieÅ”amas konteineru ekspluatācijai ražoÅ”anā. Gartner atklāja Dažas izplatÄ«tas kļūdas klientu scenārijos, izmantojot konteinerus ražoÅ”anas vidēs:

Paraugprakse un labākā prakse konteineru un Kubernetes darbināŔanai ražoÅ”anas vidēs

Kā glabāt konteinerus droŔībā

Ar droŔību nevar nodarboties ā€œvēlākā€. Tam jābÅ«t iebÅ«vētam DevOps procesā, tāpēc ir pat Ä«paÅ”s termins - DevSecOps. Organizācijām ir jāplāno konteinera vides aizsardzÄ«ba visā izstrādes dzÄ«ves ciklā, kas ietver lietojumprogrammas izveides un izstrādes procesu, izvietoÅ”anu un palaiÅ”anu.

Gartner ieteikumi

  1. Integrējiet lietojumprogrammu attēlu skenÄ“Å”anas procesu ievainojamÄ«bu noteikÅ”anai savā nepārtrauktās integrācijas/nepārtrauktās piegādes (CI/CD) konveijerā. Lietojumprogrammas tiek skenētas programmatÅ«ras izveides un palaiÅ”anas stadijā. Uzsveriet nepiecieÅ”amÄ«bu skenēt un identificēt atvērtā pirmkoda komponentus, bibliotēkas un ietvarus. Izstrādātāji, kuri izmanto vecas, neaizsargātas versijas, ir viens no galvenajiem konteineru ievainojamÄ«bu cēloņiem.
  2. Uzlabojiet savu konfigurāciju, izmantojot Center for Internet Security testus (NVS), kas ir pieejami gan Docker, gan Kubernetes.
  3. Noteikti ieviesiet piekļuves kontroli, nodroÅ”iniet pienākumu nodalÄ«Å”anu un ieviesiet noslēpumu pārvaldÄ«bas politiku. SensitÄ«vu informāciju, piemēram, droÅ”ligzdu slāņa (SSL) atslēgas vai datu bāzes akreditācijas datus, Å”ifrē orÄ·estrētājs vai treŔās puses pārvaldÄ«bas pakalpojumi, un tā tiek atklāta izpildlaikā.
  4. Izvairieties no paaugstinātiem konteineriem, pārvaldot droŔības politikas, lai samazinātu iespējamos pārkāpumu riskus.
  5. Izmantojiet droŔības rÄ«kus, kas nodroÅ”ina iekļauÅ”anu baltajā sarakstā, uzvedÄ«bas uzraudzÄ«bu un anomāliju noteikÅ”anu, lai novērstu ļaunprātÄ«gas darbÄ«bas.

StacxRox ieteikumi:

  1. Izmantojiet Kubernetes iebÅ«vētās iespējas. Iestatiet piekļuvi lietotājiem, kuri izmanto lomas. NepieŔķiriet nevajadzÄ«gas atļaujas atseviŔķām entÄ«tijām, lai gan var bÅ«t nepiecieÅ”ams zināms laiks, lai pārdomātu minimālās nepiecieÅ”amās atļaujas. Var bÅ«t vilinoÅ”i pieŔķirt klastera administratoram plaÅ”as privilēģijas, jo tas sākotnēji ietaupa laiku. Tomēr jebkurÅ” kompromiss vai kļūdas kontā vēlāk var izraisÄ«t postoÅ”as ā€‹ā€‹sekas. 
  2. Izvairieties no piekļuves atļauju dublikātiem. Dažkārt var būt noderīgi, ja dažādas lomas pārklājas, taču tas var radīt darbības problēmas un arī radīt aklās zonas, noņemot atļaujas. Ir svarīgi arī noņemt neizmantotās un neaktīvās lomas.
  3. Iestatiet tÄ«kla politikas: izolējiet moduļus, lai ierobežotu piekļuvi tiem; skaidri atļaut piekļuvi internetam tiem moduļiem, kuriem tas ir nepiecieÅ”ams, izmantojot tagus; Skaidri atļaujiet saziņu starp tiem moduļiem, kuriem ir jāsazinās vienam ar otru. 

Kā organizēt konteineru uzraudzÄ«bu un tajos esoÅ”os pakalpojumus

DroŔība un uzraudzÄ«ba - uzņēmumu galvenās problēmas izvietojot Kubernetes klasterus. Izstrādātāji vienmēr vairāk koncentrējas uz izstrādāto lietojumprogrammu funkcijām, nevis aspektiem uzraudzÄ«t Ŕīs lietojumprogrammas

Gartner ieteikumi:

  1. Mēģiniet pārraudzÄ«t tajos esoÅ”o konteineru vai pakalpojumu stāvokli kopā ar resursdatoru sistēmu pārraudzÄ«bu.
  2. Meklējiet piegādātājus un rÄ«kus ar dziļu integrāciju konteineru orÄ·estrÄ“Å”anā, Ä«paÅ”i Kubernetes.
  3. Izvēlieties rÄ«kus, kas nodroÅ”ina detalizētu reÄ£istrÄ“Å”anu, automātisku pakalpojumu atraÅ”anu un reāllaika ieteikumus, izmantojot analÄ«zi un/vai maŔīnmācÄ«Å”anos.

SolarWinds emuārs iesaka:

  1. Izmantojiet rīkus, lai automātiski atklātu un izsekotu konteineru metriku, korelējot veiktspējas metriku, piemēram, centrālo procesoru, atmiņu un darbspējas laiku.
  2. NodroÅ”iniet optimālu jaudas plānoÅ”anu, prognozējot jaudas izsÄ«kuma datumus, pamatojoties uz konteineru uzraudzÄ«bas metriku.
  3. Pārraugiet konteineru lietojumprogrammu pieejamÄ«bu un veiktspēju, kas noder gan jaudas plānoÅ”anai, gan veiktspējas problēmu novērÅ”anai.
  4. Automatizējiet darbplÅ«smas, nodroÅ”inot pārvaldÄ«bas un mērogoÅ”anas atbalstu konteineriem un to mitināŔanas vidēm.
  5. Automatizējiet piekļuves kontroli, lai pārraudzÄ«tu savu lietotāju bāzi, atspējotu novecojuÅ”us un viesu kontus un noņemtu nevajadzÄ«gas privilēģijas.
  6. NodroÅ”iniet, lai jÅ«su rÄ«ku kopa varētu pārraudzÄ«t Å”os konteinerus un lietojumprogrammas vairākās vidēs (mākonis, lokālā vai hibrÄ«dā), lai vizualizētu un salÄ«dzinātu veiktspēju visā infrastruktÅ«rā, tÄ«klā, sistēmās un lietojumprogrammās.

Kā uzglabāt datus un nodroŔināt to droŔību

Pieaugot statusu saturoÅ”u darbinieku konteineriem, klientiem ir jāņem vērā datu klātbÅ«tne ārpus resursdatora un nepiecieÅ”amÄ«ba aizsargāt Å”os datus. 

Saskaņā ar Portworx un Aqua Security aptauja, datu droŔība ieņem pirmo vietu droŔības problēmu sarakstā, ko minēja lielākā daļa respondentu (61%). 

Datu Å”ifrÄ“Å”ana ir galvenā droŔības stratēģija (64%), taču respondenti izmanto arÄ« izpildlaika uzraudzÄ«bu

(49%), reÄ£istru skenÄ“Å”ana, lai noteiktu ievainojamÄ«bas (49%), CI/CD konveijeru ievainojamÄ«bu skenÄ“Å”ana (49%) un anomāliju bloÄ·Ä“Å”ana, izmantojot izpildlaika aizsardzÄ«bu (48%).

Gartner ieteikumi:

  1. Izvēlieties uz principiem balstÄ«tus uzglabāŔanas risinājumus mikropakalpojumu arhitektÅ«ra. Labāk ir koncentrēties uz tiem, kas atbilst konteinerpakalpojumu datu uzglabāŔanas prasÄ«bām, ir neatkarÄ«gi no aparatÅ«ras, ir API vadÄ«ti, tiem ir sadalÄ«ta arhitektÅ«ra, kas atbalsta vietējo izvietoÅ”anu un izvietoÅ”anu publiskajā mākonÄ«.
  2. Izvairieties no patentētiem spraudņiem un saskarnēm. Izvēlieties pārdevējus, kas nodroÅ”ina Kubernetes integrāciju un atbalsta standarta saskarnes, piemēram, CSI (konteineru glabāŔanas interfeisus).

Kā strādāt ar tīkliem

Tradicionālais uzņēmuma tÄ«kla modelis, kurā IT komandas katram projektam izveido tÄ«kla izstrādes, testÄ“Å”anas, kvalitātes nodroÅ”ināŔanas un ražoÅ”anas vidi, ne vienmēr labi iederas nepārtrauktās izstrādes darbplÅ«smā. Turklāt konteineru tÄ«kli aptver vairākus slāņus.

Š’ emuārs Magalix savākts augsta lÄ«meņa noteikumi, kuriem jāatbilst klasteru tÄ«kla risinājuma ievieÅ”anai:

  1. Vienā mezglā ieplānotajiem apvidiem ir jāspēj sazināties ar citiem apvidiem, neizmantojot NAT (tÄ«kla adreÅ”u tulkoÅ”anu).
  2. Visi sistēmas dēmoni (fona procesi, piemēram, kubelet), kas darbojas noteiktā mezglā, var sazināties ar podiem, kas darbojas tajā paŔā mezglā.
  3. Pākstis, izmantojot resursdatora tīkls, jāspēj sazināties ar visiem pārējiem podiem visos pārējos mezglos, neizmantojot NAT. Lūdzu, ņemiet vērā, ka resursdatora tīkls tiek atbalstīts tikai Linux resursdatoros.

TÄ«kla risinājumiem jābÅ«t cieÅ”i integrētiem ar Kubernetes primitÄ«vām un politikām. IT vadÄ«tājiem jātiecas uz augstu tÄ«kla automatizācijas pakāpi un jānodroÅ”ina izstrādātāji ar pareiziem rÄ«kiem un pietiekamu elastÄ«bu.

Gartner ieteikumi:

  1. Uzziniet, vai jÅ«su CaaS (konteiners kā pakalpojums) vai jÅ«su SDN (programmatÅ«ras noteiktais tÄ«kls) tÄ«kls atbalsta Kubernetes tÄ«klus. Ja nē vai atbalsts ir nepietiekams, izmantojiet CNI (Container Network Interface) tÄ«kla saskarni saviem konteineriem, kas atbalsta nepiecieÅ”amo funkcionalitāti un politikas.
  2. Pārliecinieties, vai jÅ«su CaaS vai PaaS (platforma kā pakalpojums) atbalsta ieejas kontrolleru un/vai slodzes balansētāju izveidi, kas sadala ienākoÅ”o trafiku starp klasteru mezgliem. Ja tas nav iespējams, izpētiet, izmantojot treŔās puses starpniekserverus vai pakalpojumu tÄ«klus.
  3. Apmāciet savus tīkla inženierus par Linux tīkliem un tīkla automatizācijas rīkiem, lai samazinātu prasmju trūkumu un palielinātu veiklību.

Kā pārvaldīt lietojumprogrammas dzīves ciklu

Lai nodroÅ”inātu automatizētu un netraucētu lietojumprogrammu piegādi, konteineru orÄ·estrÄ“Å”ana ir jāpapildina ar citiem automatizācijas rÄ«kiem, piemēram, infrastruktÅ«ru kā koda (IaC) produktiem. Tie ietver Chef, Puppet, Ansible un Terraform. 

NepiecieÅ”ami arÄ« automatizācijas rÄ«ki lietojumprogrammu izveidei un ievieÅ”anai (sk.Burvju kvadrants lietojumprogrammu izlaiÅ”anas orÄ·estrÄ“Å”anai"). Konteineri nodroÅ”ina arÄ« paplaÅ”ināŔanas iespējas, kas ir lÄ«dzÄ«gas tām, kas ir pieejamas, izvietojot virtuālās maŔīnas (VM). Tāpēc IT vadÄ«tājiem ir jābÅ«t konteineru dzÄ«ves cikla pārvaldÄ«bas rÄ«ki.

Gartner ieteikumi:

  1. Iestatiet standarta konteinera attēlu standartus, pamatojoties uz izmēru, licencÄ“Å”anu un elastÄ«bu, lai izstrādātāji varētu pievienot komponentus.
  2. Izmantojiet konfigurācijas pārvaldības sistēmas, lai pārvaldītu konteineru dzīves ciklu, kas veido konfigurācijas slāni, pamatojoties uz bāzes attēliem, kas atrodas publiskās vai privātās krātuvēs.
  3. Integrējiet savu CaaS platformu ar automatizācijas rīkiem, lai automatizētu visu lietojumprogrammu darbplūsmu.

Kā pārvaldīt konteinerus ar orķestrantiem

Galvenā funkcionalitāte konteineru izvietoÅ”anai tiek nodroÅ”ināta orÄ·estrÄ“Å”anas un plānoÅ”anas slāņos. PlānoÅ”anas laikā konteineri tiek novietoti klastera optimālākajos saimniekdatoros, kā to nosaka orÄ·estrācijas slāņa prasÄ«bas. 

Kubernetes ir kļuvis par de facto konteineru orÄ·estrÄ“Å”anas standartu ar aktÄ«vu kopienu, un to atbalsta lielākā daļa vadoÅ”o komerciālo pārdevēju. 

Gartner ieteikumi:

  1. Definējiet pamatprasÄ«bas droŔības kontrolei, uzraudzÄ«bai, politikas pārvaldÄ«bai, datu noturÄ«bai, tÄ«kla izveidei un konteineru dzÄ«ves cikla pārvaldÄ«bai.
  2. Pamatojoties uz Ŕīm prasÄ«bām, izvēlieties rÄ«ku, kas vislabāk atbilst jÅ«su prasÄ«bām un lietoÅ”anas gadÄ«jumiem.
  3. Izmantojiet Gartner pētÄ«jumu (sk.Kā izvēlēties Kubernetes izvietoÅ”anas modeli"), lai izprastu dažādu Kubernetes izvietoÅ”anas modeļu priekÅ”rocÄ«bas un mÄ«nusus un izvēlētos savai lietojumprogrammai piemērotāko.
  4. Atlasiet pakalpojumu sniedzēju, kas var nodroÅ”ināt hibrÄ«da orÄ·estrÄ“Å”anu darba konteineriem vairākās vidēs ar cieÅ”u aizmugursistēmas integrāciju, kopÄ«giem pārvaldÄ«bas plāniem un konsekventiem cenu modeļiem.

Kā izmantot mākoņpakalpojumu sniedzēju iespējas

Gartners uzskataka interese par konteineru izvietoÅ”anu publiskajā mākoņa IaaS pieaug, pateicoties gatavu CaaS piedāvājumu pieejamÄ«bai, kā arÄ« Å”o piedāvājumu cieÅ”ai integrācijai ar citiem mākoņpakalpojumu sniedzēju piedāvātajiem produktiem.

IaaS mākoņi piedāvā resursu patēriņu pēc pieprasÄ«juma, ātru mērogojamÄ«bu un pakalpojumu vadÄ«ba, kas palÄ«dzēs izvairÄ«ties no nepiecieÅ”amÄ«bas pēc padziļinātām zināŔanām par infrastruktÅ«ru un tās uzturÄ“Å”anu. Lielākā daļa mākoņpakalpojumu sniedzēju piedāvā konteineru pārvaldÄ«bas pakalpojumu, un daži piedāvā vairākas orÄ·estrÄ“Å”anas iespējas. 

Galvenie mākoņa pārvaldÄ«to pakalpojumu sniedzēji ir parādÄ«ti tabulā: 

Mākoņu nodroÅ”inātājs
Pakalpojuma veids
Produkts/pakalpojums

Alibaba
Vietējais mākoņpakalpojums
Alibaba Cloud Container Service, Alibaba Cloud Container Service Kubernetes

Amazon Web Services (AWS)
Vietējais mākoņpakalpojums
Amazon Elastic Container Services (ECS), Amazon ECS Kubernetes (EKS), AWS Fargate

Milzu bars
MSP
Milzu spieta pārvaldītā Kubernetes infrastruktūra

google
Vietējais mākoņpakalpojums
Google Container Engine (GKE)

IBM
Vietējais mākoņpakalpojums
IBM Cloud Kubernetes pakalpojums

microsoft
Vietējais mākoņpakalpojums
Azure Kubernetes pakalpojums, Azure Service Fabric

Orākuls
Vietējais mākoņpakalpojums
OCI konteineru dzinējs Kubernetes

Platform9
MSP
Pārvalda Kubernetes

Red Hat
Hosted Service
OpenShift Dedicated & Online

VMware
Hosted Service
Cloud PKS (beta)

Mail.ru Cloud Solutions*
Vietējais mākoņpakalpojums
Mail.ru Mākoņu konteineri

* Mēs to neslēpsim, mēs pievienojām sevi tulkoÅ”anas laikā :)

Publiskie mākoņdatoÅ”anas pakalpojumu sniedzēji arÄ« pievieno jaunas iespējas un izlaiž lokālos produktus. Tuvākajā nākotnē mākoņpakalpojumu sniedzēji izstrādās atbalstu hibrÄ«dmākoņiem un vairāku mākoņu vidēm. 

Gartnera ieteikumi:

  1. ObjektÄ«vi novērtējiet savas organizācijas spēju izvietot un pārvaldÄ«t atbilstoÅ”us rÄ«kus un apsveriet alternatÄ«vus mākoņa konteineru pārvaldÄ«bas pakalpojumus.
  2. Rūpīgi izvēlieties programmatūru, ja iespējams, izmantojiet atvērto avotu.
  3. Izvēlieties pakalpojumu sniedzējus ar izplatÄ«tiem darbÄ«bas modeļiem hibrÄ«da vidēs, kas piedāvā vienotu apvienoto klasteru stikla pārvaldÄ«bu, kā arÄ« pakalpojumu sniedzējus, kas atvieglo IaaS paÅ”mitināŔanu.

Daži padomi, kā izvēlēties Kubernetes aaS nodroÅ”inātāju no Replex emuāra:

  1. Ir vērts meklēt izplatÄ«jumus, kas atbalsta augstu pieejamÄ«bu jau no kastes. Tas ietver atbalstu vairākām galvenajām arhitektÅ«rām, ļoti pieejamus etcd komponentus, kā arÄ« dublÄ“Å”anu un atkopÅ”anu.
  2. Lai nodroÅ”inātu mobilitāti savās Kubernetes vidēs, vislabāk ir izvēlēties mākoņpakalpojumu sniedzējus, kas atbalsta plaÅ”u izvietoÅ”anas modeļu klāstu ā€” no lokālajiem lÄ«dz hibrÄ«diem un vairākiem mākoņiem. 
  3. Pakalpojumu sniedzēju piedāvājumi ir arÄ« jānovērtē, pamatojoties uz iestatÄ«Å”anas, instalÄ“Å”anas un klasteru izveides vienkārŔību, kā arÄ« atjauninājumiem, uzraudzÄ«bu un problēmu novērÅ”anu. PamatprasÄ«ba ir atbalstÄ«t pilnÄ«bā automatizētus klasteru atjauninājumus bez dÄ«kstāves. Izvēlētajam risinājumam ir jāļauj arÄ« manuāli palaist atjauninājumus. 
  4. Identitātes un piekļuves pārvaldÄ«ba ir svarÄ«ga gan no droŔības, gan pārvaldÄ«bas viedokļa. Pārliecinieties, vai jÅ«su izvēlētais Kubernetes izplatÄ«jums atbalsta integrāciju ar iekŔēji izmantotajiem autentifikācijas un autorizācijas rÄ«kiem. RBAC un precÄ«za piekļuves kontrole ir arÄ« svarÄ«gas funkciju kopas.
  5. Izvēlētajam izplatÄ«Å”anai ir jābÅ«t vai nu vietējam programmatÅ«ras definētam tÄ«kla risinājumam, kas aptver plaÅ”u dažādu lietojumprogrammu vai infrastruktÅ«ras prasÄ«bu klāstu, vai arÄ« jāatbalsta kāda no populārajām uz CNI balstÄ«tajām tÄ«kla ievieÅ”anām, tostarp Flannel, Calico, kube-router vai OVN.

Par galveno virzienu kļūst konteineru ievieÅ”ana ražoÅ”anā, par ko liecina gada veiktās aptaujas rezultāti Gartnera sesijas par infrastruktÅ«ru, darbÄ«bām un mākoņa stratēģijām (IOCS) 2018. gada decembrÄ«:

Paraugprakse un labākā prakse konteineru un Kubernetes darbināŔanai ražoÅ”anas vidēs
Kā redzams, konteinerus savā darbā jau izmanto 27% aptaujāto un plāno to darīt 63%.

Š’ Portworx un Aqua Security aptauja 24% respondentu ziņoja, ka konteineru tehnoloÄ£ijās iegulda vairāk nekā pusmiljonu dolāru gadā, un 17% respondentu tām iztērēja vairāk nekā miljonu dolāru gadā. 

Rakstu sagatavojusi mākoņa platformas komanda Mail.ru mākoņa risinājumi.

Ko vēl lasīt par tēmu:

  1. DevOps paraugprakse: DORA ziņojums.
  2. Kubernetes pirātisma garā ar veidni ievieŔanai.
  3. 25 NoderÄ«gi rÄ«ki Kubernetes izvietoÅ”anai un pieņemÅ”anai.

Avots: www.habr.com

Pievieno komentāru