Parimad tavad ja soovitused konteinerite ja Kubernetes'i kÀitamiseks tootmiskeskkondades

Parimad tavad ja soovitused konteinerite ja Kubernetes'i kÀitamiseks tootmiskeskkondades
Konteineritehnoloogia ökosĂŒsteem areneb ja muutub kiiresti, seega puuduvad selles valdkonnas head tööpraktikad. Sellegipoolest kasutatakse Kubernetes'i ja konteinerite lahendusi ĂŒha enam - nii vanade rakenduste moderniseerimiseks kui ka uute pilverakenduste arendamiseks. 

Meeskond Kubernetes aaS Mail.ru-lt kogus kokku prognoosid, nĂ”uanded ja parimad tavad turuliidritelt Gartner, 451 Research, StacxRoх ja teised. Need aitavad tagada ja kiirendada konteinerite juurutamist tootmiskeskkondades.

Kuidas mÔista, kas teie ettevÔte on valmis konteinerite juurutamiseks tootmiskeskkonnas

Gartneri andmetel, 2022. aastal kasutab enam kui 75% organisatsioonidest tootmises konteineriseeritud rakendusi. See on oluliselt rohkem kui praegu, kui selliseid rakendusi kasutab alla 30% ettevÔtetest. 

Vastavalt 451 Research, prognoositav turg konteineritehnoloogia kasutamiseks 2022. aastal ulatub 4,3 miljardi dollarini. See on enam kui kahekordne summa vÔrreldes 2019. aasta prognoosidega, turu kasvumÀÀr on 30%.

Uues Portworxi ja Aqua Security uuringus 87% vastanutest teatas, et nad kasutavad praegu konteerimisvÔimalusi. VÔrdluseks, 2017. aastal oli selliseid vastajaid 55%. 

Hoolimata suurenevast huvi ja konteinerite juurutamise kasvust, nĂ”uab nende tootmisele viimine koolitust tehnoloogilise kĂŒpsuse ja oskuste puudumise tĂ”ttu. Organisatsioonid peaksid realistlikult vaatama Ă€ritegevuse protsesse, mis nĂ”uavad rakenduste konteerimist. IT-juhtidel on oluline hinnata, kas neil on vajalikud oskused edaspidiseks arendamiseks, arvestades kiirete Ă”ppimisvajaduste olemasolu. 

Gartneri eksperdid usuvad, et alljĂ€rgnevad kĂŒsimused aitavad mĂ”ista, kas olete valmis konteinerite juurutamiseks tootmises:

Parimad tavad ja soovitused konteinerite ja Kubernetes'i kÀitamiseks tootmiskeskkondades

KÔige levinumad vead konteinerite kasutamisel tootmises

Organisatsioonid alahindavad sageli pingutusi, mis on vajalikud konteinerite tootmises toimimiseks. Gartner on avastanud mitmeid levinud vigu klientide stsenaariumides, kui konteineritehnoloogiat rakendatakse tootmises:

Parimad tavad ja soovitused konteinerite ja Kubernetes'i kÀitamiseks tootmiskeskkondades

Kuidas tagada konteinerite turvalisus

Turvalisusega ei saa tegeleda "hiljem". See peab olema sisseehitatud DevOpsi protsessi, mistĂ”ttu on tekkinud isegi eraldi termin - DevSecOps. Organisatsioonid peavad plaanima konteinerikeskkonna kaitset kogu arenduse elutsĂŒkli vĂ€ltel, mis hĂ”lmab rakenduse koostamise ja arendamise, juurutamise ja kĂ€ivitamise protsessi.

Gartneri soovitused: 

  1. Integreerige rakenduse piltide skaneerimise protsess haavatavuste leidmiseks pideva integreerimise/pideva toimetamise (CI/CD) protsessi. Rakendusi skaneeritakse tarkvara koostamise ja kĂ€ivitamise etappidel. RĂ”hutage vajadust skaneerida ja tuvastada avatud lĂ€htekoodiga komponente, teeke ja raamistikke. Arendajate vanade haavatavate versioonide kasutamine on ĂŒks peamisi konteinerite haavatavuste pĂ”hjuseid.
  2. Parandage konfiguratsiooni Center for Internet Security (CIS), testide abil, mis on saadaval nii Dockerile kui ka Kubernetesile.
  3. Kasutage kindlasti juurdepÀÀsukontrolli, tagage ĂŒlesannete eraldamine ja rakendage salajaste haldamise poliitika. Konfidentsiaalne teave, nagu Secure Sockets Layer (SSL) vĂ”tmed vĂ”i andmebaasi mandaadid, krĂŒpteeritakse orkestri vĂ”i kolmandate osapoolte haldusteenuste abil ja antakse vĂ€lja kĂ€itamise ajal.
  4. VĂ€ltige ĂŒlbe Ă”igustega konteinerite kasutamist, rakendades turvapoliitikate haldust, et vĂ€hendada vĂ”imalikke hĂ€kkimisriske.
  5. Kasutage turbeltööriistu, mis pakuvad valgeid nimesid, kÀitumisennetust ja anomaaliate tuvastamist pahatahtlike tegevuste ennetamiseks.

StacxRox soovitused:

  1. Kasutage Kubernetes'i sisseehitatud funktsioone. Konfigureerige kasutajate juurdepÀÀs rollide kaudu. Veenduge, et te ei konaerita ĂŒksikutele isikutele, kellele see ei ole vajalik, isegi kui minimaalsete vajalike Ă”iguste kaalumine vĂ”ib vĂ”tta aega. Kuigi vĂ”ib tunduda ahvatlev andida klastrihaldurile laiad Ă”igused, kuna see sÀÀstab algusfaasis aega. Siiski vĂ”ivad kompromissid vĂ”i kontode vead hiljem kaasa tuua hĂ€vitavaid tagajĂ€rgi. 
  2. VÀltige juurdepÀÀsuÔiguste dubleerimist. MÔnikord vÔib olla kasulik, et erinevad rollid kattuksid, kuid see vÔib tekitada kÀitamisprobleeme ning luua 'surmaalasid' Ôiguste eemaldamise korral. Lisaks sellele on oluline eemaldada kasutamata ja passiivsed rollid.
  3. Seadke vÔrgu poliitikad: isoleerige moodulid, et piirata nende ligipÀÀsu; lubage interneti juurdepÀÀs neile moodulitele, kellele see on vajalik, kasutades silte; lubage selgesÔnaliselt side nende moodulite vahel, kes peavad omavahel suhtlema. 

Kuidas korraldada konteinerite ja nende teenuste jÀlgimist

Turvalisus ja jĂ€lgimine — peamised probleemid ettevĂ”tetele Kubernetes klastrite juurutamisel. Arendajad keskenduvad alati rohkem rakenduste funktsioonidele, mida nad arendavad, kui nende rakenduste jĂ€lgimise aspektidele.. 

Gartneri soovitused:

  1. PĂŒĂŒdke jĂ€lgida konteinerite vĂ”i nende teenuste olekuid koos host-sĂŒsteemide jĂ€lgimisega.
  2. Eelistage tootjaid ja tööriistu, mis on tugevalt integreeritud konteinerite orkestreerimisega, eriti Kubernetesega.
  3. Valige tööriistu, mis pakuvad pĂ”hjalikku logimist, automaatset teenuste avastamist ja reaalaja soovitusi analĂŒĂŒsi ja/vĂ”i masinĂ”ppe abil.

SolarWinds blogis soovitatakse:

  1. kasutada tööriistu automaatseks avastamiseks ja konteineri mÔÔdikute jÀlgimiseks, nagu protsessori, mÀlu ja töökindluse aeg.
  2. Tagada optimeeritud pÀringute planeerimine, prognoosides mahutuse ammendumise tÀhtaegu konteinerite jÀlgimise mÔÔdikute pÔhjal.
  3. Korraldada rakenduste jÀlgimine, mis on paigutatud konteineritesse, nende kÀttesaadavuse ja jÔudluse parameetrite jÀrgi, mis on kasulik kapatsiteedi planeerimiseks ja jÔudlusprobleemide lahendamiseks.
  4. Automatiseerige tööprotsessid, pakkudes haldamise ja skaleerimise toetust konteineritele ja nende loomise keskkondadele.
  5. Automatiseerige juurdepÀÀsu kontroll, et jĂ€lgida kasutajabaasi, keelata aegunud ja kĂŒlalistĂ€hted, eemaldada liigsed Ă”igused.
  6. Veenduge, et teie tööriistade komplekt suudab jĂ€lgida neid konteinereid ja rakendusi erinevates keskkondades (pilves, lokaalsetes vĂ”i hĂŒbriidsetes), et visualiseerida ja vĂ”rrelda jĂ”udlust infrastruktuuris, vĂ”rgus, sĂŒsteemides ja rakendustes.

Kuidas andmeid talletada ja nende turvalisus tagada

Töötavate konteinerite arvu suurenedes peavad kliendid arvestama andmete paiknemisega vÀljaspool hosti ning ka nende andmete kaitsmise vajadusega. 

Andmete kohaselt Portworx ja Aqua Security kĂŒsitlus, andmete turvalisus on enamikus vastajate (61%) mĂ€rkmete seas esikohal olev probleem. 

Andmete krĂŒpteerimine on peamine turvalisuse strateegia (64%), kuid vastajad kasutavad ka tĂ€itmisaja jĂ€lgimist

(49%), haavatavuste skaneerimist registrites (49%), haavatavuste skaneerimist CI/CD pipeline'is (49%) ja hÀirete blokeerimist tÀitmisaja kaitse kaudu (48%).

Gartneri soovitused:

  1. Valige andmete salvestamise lahendused, mis pÔhinevad mikroteenuste arhitektuuril. Eelistage neid, mis vastavad andmete salvestamise nÔuetele konteinerite teenuste jaoks, on riistvarast sÔltumatud, hallatavad API kaudu, on jagatud arhitektuuriga, toetavad kohalikke ja avalikke pilvevÔimekusi.
  2. VÀltige omandiÔigust omavaid pluginaid ja liideseid. Valige tootjad, kes tagavad integreerimise Kubernetesega ja toetavad standardseid liideseid, nagu CSI (Container Storage Interfaces).

Kuidas töötada vÔrkudega

Traditsiooniline ettevÔtte vÔrgumudel, kus IT-spetsialistid loovad iga projekti jaoks arendus-, testimis-, kvaliteedikontrolli ja tootmisvÔrgukeskkondi, ei sobi alati pideva arenduse töövoogu. Lisaks ulatuvad konteineritest vÔrgud mitmele tasemele.

Uues Magalix'i blogis on kokku kogutud ĂŒlevaated kĂ”rge taseme reeglite kohta, millega klastrivĂ”rgu lahenduste rakendamine peab vastama:

  1. Sama sÔlme planeeritud podid peavad suutma jagada andmeid teiste moodulitega ilma NAT-ta (vÔrguaadresside tÔlked).
  2. KĂ”ik sĂŒsteemi demonid (taustaprotsessid, nagu kubelet), mis töötavad mÀÀratud sĂ”lmel, saavad suhtleda sama sĂ”lme podidega.
  3. Podid, mis kasutavad hosti vÔrgus, peavad suutma suhelda kÔikide teiste podidega kÔigil teistel sÔlmedel ilma NAT-ta. Pange tÀhele, et hostivÔrkude tugi on saadaval ainult Linuxi hostidel.

VĂ”rgulahendused peavad olema tihedalt integreeritud Kubernetes'e primitiividega ja poliitikatega. IT-juhid peaksid pĂŒĂŒdlema kĂ”rge automatiseerimise taseme poole, pakkuma arendajatele vajalikke tööriistu ja piisavalt paindlikkust.

Gartneri soovitused:

  1. Selgitage vÀlja, kas teie CaaS (konteiner kui teenus) vÔi teie SDN (tarkvara mÀÀratud vÔrk) toetab Kubernetes'e vÔrke. Kui ei vÔi toetus on ebapiisav, kasutage oma konteinerite jaoks CNI (Container Network Interface) vÔrguliidest, mis toetab vajalikku funktsionaalsust ja poliitikaid.
  2. Veenduge, et teie CaaS vÔi PaaS (platvorm kui teenus) toetab sisenemiskontrollerite ja/vÔi koormuse tasakaalustajate loomist, mis jaotavad sissetulevat liiklust klastrite sÔlmede vahel. Kui seda vÔimalust ei ole, uurige kolmandate osapoolte vahetus- vÔi teenuse mesh-mehhanismide kasutamist.
  3. Koolitage oma vÔrguinsenere töötama Linuxi vÔrkude ja vÔrgu automatiseerimise tööriistadega, et vÀhendada oskuste lÔhet ja tÔsta paindlikkust.

Kuidas hallata rakenduste elutsĂŒklit

Rakenduste automatiseeritud ja katkematuks kohaletoimetamiseks tuleb konteinerite orkestreerimist tÀiendada teiste automatiseerimise tööriistadega, nÀiteks infrastruktuuri kui koodi (IaC) toodetega. Nendeks on Chef, Puppet, Ansible ja Terraform. 

Samuti on vajalikud rakenduste koostamise ja juurutamise automatiseerimise vahendid (vt "Kvantide maagiline ruut rakenduste juurutamise orkestreerimise jaoks"). Konteinerid pakuvad ka laiendamise vĂ”imalusi, sarnaseid nendele, mis eksisteerisid virtuaalmasinate (VM) juurutamisel. Seega peavad IT-juhid olema konteinerite elutsĂŒkli haldustööriistad.

Gartneri soovitused:

  1. Kehtestage konteinerite pÔhisisendite standardid, arvestades suurust, litsentsimist ja paindlikkust arendajate komponentide lisamiseks.
  2. Kasutage konfigureerimissemanageerimise sĂŒsteeme konteinerite elutsĂŒkli haldamiseks, mis salvestavad konfiguratsiooni kihtidena pĂ”hisisendite pĂ”hjal, mis asuvad avalikes vĂ”i privaatsetes hoidlatest.
  3. Integreerige CaaS-platvorm automatiseerimistööriistadega, et automatiseerida kogu rakenduse töövoogu.

Kuidas hallata konteinerite kaudu orkestratoreid

PÔhifunktsioonid konteinerite rakendamiseks on saadaval orkestreerimise ja planeerimise tasanditel. Planeerimise kÀigus paigutatakse konteinerid klastris kÔige optimaalsematele hostidele, nagu on ette nÀhtud orkestreerimise taseme nÔudmistega. 

Kubernetes on de facto konteinerite orkestreerimise standard, millel on aktiivne kogukond ja mida toetavad enamik juhtivaid kommertsliidri pakkujaid. 

Gartneri soovitused:

  1. MÀÀrake kindlaks pĂ”hivajadused turvahalduse, jĂ€lgimise, poliitikate haldamise, andmete sĂ€ilitamise, vĂ”rguhalduse ja konteinerite elutsĂŒkli osas.
  2. Nende nÔudmiste pÔhjal valige tööriist, mis vastab kÔige paremini teie vajadustele ja kasutusstsenaariumidele.
  3. Kasutage Gartneri uuringuid (vt "Kuidas valida Kubernetes'i rakendamise mudel"), et mĂ”ista erinevate Kubernetes'i rakendamise mudelite eeliseid ja puudusi ning valida oma ĂŒlesande jaoks kĂ”ige sobivam.
  4. Valige pakkuja, kes suudab tagada hĂŒbriidorkestreerimise mitmesugustes keskkondades, tiheda integreerimise tagasitulekudega, jagatud juhtimiskavadega ja ĂŒhtlaste hinnamudelitega.

Kuidas kasutada pilveteenuse pakkujate vÔimalusi

Gartneri arvates, kasvab huvi konteinerite rakendamise ĂŒle avalikus pilves IaaS, kuna CaaS-i valmislahenduste kĂ€ttesaadavus ning nende lahenduste tihe integreerimine muude pilveteenuse pakkujate poolt pakutavate toodetega.

IaaS pilved pakuvad nĂ”udmisel ressursikasutust, kiiret skaleerimist ja teenuste haldust, mis aitab vĂ€ltida sĂŒgavate teadmisel infrastruktuurist ja selle hooldamisest. Enamik pilveteenuse pakkujatest pakub konteinerite haldusteenust, mĂ”ned aga mitu orkestreerimise varianti. 

Peamised hallatud teenuste pilvepakkujad on esitatud tabelis: 

Pilveteenuse pakkuja
Teenuse tĂŒĂŒp
Toode/teenus

Alibaba
Native Cloud Service
Alibaba Cloud Container Service, Alibaba Cloud Container Service for Kubernetes

Amazon Web Services (AWS)
Native Cloud Service
Amazon Elastic Container Services (ECS), Amazon ECS for Kubernetes (EKS), AWS Fargate

Giant Swarm
MSP
Giant Swarm Managed Kubernetes Infrastructure

Google
Native Cloud Service
Google Container Engine (GKE)

IBM
Native Cloud Service
IBM Cloud Kubernetes Service

Microsoft
Native Cloud Service
Azure Kubernetes Service, Azure Service Fabric

Oracle
Native Cloud Service
OCI Container Engine for Kubernetes

Platform9
MSP
Managed Kubernetes

Red Hat
Hosted Service
OpenShift Dedicated & Online

VMware
Hosted Service
Cloud PKS (Beta)

Mail.ru Pilveteenused*
Native Cloud Service
Mail.ru Pilvekonteinerid

* Me ei varja, me lisasime end siia tĂ”lke ajal 🙂

Avalike pilveteenuste pakkujad lisavad ka uusi vĂ”imalusi ja kĂ€ivitavad kohalikke tooteid. Tulevikus arendavad pilveteenuste pakkujad hĂŒbriidpilvede ja mitme pilve keskkondade tuge. 

Gartneri soovitused:

  1. Objektiivselt hinnake oma organisatsiooni vÔimalusi vastava tarkvara rakendamiseks ja haldamiseks ning kaaluge alternatiivseid pilvekonteinerite haldusteenuseid.
  2. Valige hoolikalt tarkvara, kasutage avatud lÀhtekoodi seal, kus see on vÔimalik.
  3. Valige pakkujad, kellel on ĂŒhtsed tegevusmudelid hĂŒbriidkeskkondades, mis pakuvad haldamist ĂŒhest paneelilt, samuti pakkujad, kes lihtsustavad IaaS-i iseteenindust.

MÔned nÀpunÀited Kubernetes aaS-i pakkuja valimiseks Replexi blogist:

  1. Tasub otsida jaotusi, mis toetavad kÔrget valmisolekut vÀlja pakutud vormis. See hÔlmab mitme peamise arhitektuuri toetust, kÔrge saadavusega etcd komponente, samuti varundamist ja taastamist.
  2. Kubernetes keskkondade liikuvuse tagamiseks on parem valida pilveteenuse pakkujad, kes toetavad laia valikut juurutusmudeleid: kohalikest, hĂŒbriidsetest kuni mitme pilve lahendusteni. 
  3. Pakkujate pakkumisi tasub hinnata, vÔttes arvesse seadistamise, paigaldamise ja klastrite loomise lihtsust, samuti uuendusi, monitooringut ja tÔrkeotsingut. PÔhinÔue on tÀielikult automatiseeritud klastrite uuenduste toetamine nullist jÀÀkaja ajal. Valitud lahendus peaks samuti vÔimaldama kÀsitsi uuenduste kÀivitamist. 
  4. Tuumik- ja juurdepÀÀsuhalduse tÀhtsus on nii turvaprobleemide kui ka haldamise seisukohalt. Veenduge, et valitud Kubernetes jaotamine toetab integreerimist ettevÔtte sisemiste autentimise ja autoriseerimise vahenditega. RBAC ja pÔhjalik juurdepÀÀsukontroll on samuti olulised funktsioonide kogumid.
  5. Valitud distributsioon peab kas olema oma vĂ”rgulahendus, mis on mÀÀratud tarkvara poolt ja katab mitmesuguseid erinevaid rakenduste vĂ”i infrastruktuuri nĂ”udmisi, vĂ”i toetama ĂŒhte tuntud CNI-pĂ”hist vĂ”rgu rakendust, sealhulgas Flannel, Calico, kube-router vĂ”i OVN.

Konteinerite kasutuselevĂ”tt tootmises muutub peamiseks suunaks, millest tĂ”endab kĂŒsitluse tulemus, mis viidi lĂ€bi Gartneri sessioonis infrastruktuuri, operatsioonide ja pilveteenuste strateegiate (IOCS) osas detsembris 2018:

Parimad tavad ja soovitused konteinerite ja Kubernetes'i kÀitamiseks tootmiskeskkondades
Nagu nĂ€eme, kasutab 27% kĂŒsitletutest juba konteinerite tehnoloogiat töös, samas kui 63% kavatseb seda teha.

Uues Portworxi ja Aqua Security uuringus 24% vastanutest teatas, et investeerib konteineritehnoloogiatele ĂŒle poole miljoni dollari aastas, ning 17% vastanutest kulutab neile ĂŒle miljoni dollari aastas. 

Artikkel on koostatud pilveplatvormi meeskonna poolt Mail.ru Pilve Lahendused.

Mida veel selle kohta lugeda:

  1. Parimad DevOps’i praktikad: DORA aruanne.
  2. đŸ„‡Kuidas rahulikult magada, kui teil on pilveteenus: peamised arhitektuuri nĂ”uanded | ProHoster.
  3. 25 kasulikku tööriista Kubernetes’e juurutamiseks ja kasutuselevĂ”tmiseks.

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster