Konteinerite ja Kubernetese käitamise parimad tavad ja tavad tootmiskeskkondades

Konteinerite ja Kubernetese käitamise parimad tavad ja tavad tootmiskeskkondades
Konteineristamise ökosüsteem areneb ja muutub kiiresti, seega on selles valdkonnas head tavad puudu. Kubernetes'i ja konteinereid kasutatakse aga üha enam – nii pärandrakenduste kaasajastamiseks kui ka moodsate pilvepõhiste rakenduste arendamiseks. 

Meeskond Kubernetes aaS saidilt Mail.ru Oleme koostanud turuliidrite prognoosid, nõuanded ja parimad tavad Gartnerilt, 451 Researchilt, StacxRoх-lt ja teistelt. Need aitavad tagada ja kiirendada konteinerite juurutamist tootmiskeskkondades.

Kuidas teada saada, kas teie ettevõte on valmis konteinereid tootmiskeskkonnas juurutama

Gartneri andmetel2022. aastaks kasutab üle 75% organisatsioonidest tootmiskeskkonnas konteinerdatud rakendusi. See on oluliselt kõrgem kui praegune näitaja, kus selliseid rakendusi kasutab alla 30% ettevõtetest. 

Vastavalt 451 ResearchKonteinertehnoloogia rakenduste prognoositav turg 2022. aastal on 4,3 miljardit dollarit, mis on enam kui kaks korda rohkem kui 2019. aastal prognoositud maht, mis tähendab 30% turu kasvumäära.

В Portworxi ja Aqua Security uuring 87% vastanutest ütles, et nad kasutavad praegu konteinertehnoloogiaid, võrreldes 55%-ga 2017. aastal. 

Vaatamata konteinerite kasvavale huvile ja kasutuselevõtule nõuab nende juurutamine tootmiskeskkonda õppimiskõverat tehnoloogilise ebaküpsuse ja oskusteabe puudumise tõttu. Organisatsioonid peavad realistlikult hindama äriprotsesse, mis nõuavad rakenduste konteineriseerimist. IT-juhid peaksid hindama, kas neil on edasiliikumiseks vajalikud oskused, arvestades kiire õppimise vajadust. 

Gartneri eksperdid Usun, et alloleval joonisel olevad küsimused aitavad teil aru saada, kas olete valmis konteinereid tootmiskeskkonnas juurutama:

Konteinerite ja Kubernetese käitamise parimad tavad ja tavad tootmiskeskkondades

Kõige levinumad vead konteinerite kasutamisel tootmises

Organisatsioonid alahindavad sageli konteinerite tootmises käitamiseks vajalikke pingutusi. Gartner leidis Siin on mõned levinud vead, mida kliendid tootmiskeskkondades konteinerite kasutamisel teevad:

Konteinerite ja Kubernetese käitamise parimad tavad ja tavad tootmiskeskkondades

Kuidas tagada konteineri turvalisus

Turvalisus ei saa olla teisejärguline mõte. See tuleb DevOps protsessi sisse ehitada, mis on viinud spetsiaalse termini DevSecOps tekkimiseni. Organisatsioonid peavad planeerima konteineri keskkonna kaitse kogu arendustsükli vältel, mis hõlmab rakenduse ehitus- ja arendusprotsessi, juurutamist ja käivitamist.

Gartneri soovitused

  1. Integreerige rakenduste kujutiste haavatavuste skannimine oma pideva integreerimise/pideva edastamise (CI/CD) protsessi. Rakendusi skannitakse nii loomise kui ka käitamise etapis. Rõhutage vajadust skannida ja tuvastada avatud lähtekoodiga komponente, teeke ja raamistikke. Vanade ja haavatavate versioonide kasutamine arendajate poolt on üks peamisi konteinerite haavatavuste põhjuseid.
  2. Täiustage oma konfiguratsiooni Interneti-turvalisuse keskuse testidega (SRÜ), mis on saadaval nii Dockeri kui ka Kubernetesi jaoks.
  3. Kindlasti rakendage juurdepääsukontrolli, tagage ülesannete lahusus ja salajaste andmete haldamise poliitika. Tundlik teave, näiteks turvasoklite kihi (SSL) võtmed või andmebaasi identimisteabe andmed, krüpteeritakse orkestraatori või kolmanda osapoole haldusteenuste poolt ja avalikustatakse käitusajal.
  4. Turvapoliitika halduse kaudu kõrgendatud õigustega konteinerite vältimine vähendab võimalikke häkkimisriske.
  5. Pahatahtliku tegevuse vältimiseks kasutage turvatööriistu, mis pakuvad valget nimekirja, käitumise jälgimist ja anomaaliate tuvastamist.

StacxRoxi soovitused:

  1. Kasutage Kubernetes'i sisseehitatud võimalusi. Konfigureerige kasutajate juurdepääsu rollide abil. Veenduge, et te ei annaks üksikutele üksustele ebavajalikke õigusi, isegi kui minimaalsete vajalike õiguste kaalumine võib võtta aega. Klastri administraatorile laiaulatuslike õiguste andmine võib olla ahvatlev, kuna see säästab alguses aega. Igasugune turvalisuse rikkumine või kontovead võivad aga hiljem kaasa tuua laastavaid tagajärgi. 
  2. Väldi juurdepääsuõiguste dubleerimist. Kuigi erinevate rollide kattumine võib olla kasulik, võib see õiguste eemaldamisel kaasa tuua operatiivseid probleeme ja luua "surnud tsoone". Samuti on oluline eemaldada kasutamata ja mitteaktiivsed rollid.
  3. Määrake võrgupoliitikad: isoleerige moodulid, et piirata neile juurdepääsu; lubage selgesõnaliselt internetiühendus nende moodulitega, mis seda vajavad, siltide abil; lubage selgesõnaliselt suhtlus nende moodulite vahel, mis peavad omavahel suhtlema. 

Kuidas korraldada konteinerite ja nende sees olevate teenuste jälgimist

Turvalisus ja jälgimine - ettevõtete peamised probleemid Kubernetes klastrite juurutamisel. Arendajad keskenduvad alati rohkem arendatavate rakenduste funktsioonidele kui aspektidele nende rakenduste jälgimine

Gartneri soovitused:

  1. Proovige jälgida konteinerite või neis olevate teenuste olekut koos hostsüsteemide jälgimisega.
  2. Eelista müüjaid ja tööriistu, millel on sügav integratsioon konteinerorkestreerimisse, eriti Kubernetes.
  3. Valige tööriistad, mis pakuvad üksikasjalikku logimist, automaatset teenuste avastamist ja reaalajas soovitusi analüütika ja/või masinõppe abil.

SolarWindsi ajaveeb soovitab:

  1. Kasutage tööriistu konteineri mõõdikute automaatseks avastamiseks ja jälgimiseks, korreleerides jõudlusmõõdikuid (nt protsessori, mälu ja tööaja).
  2. Tagage optimaalne mahutavuse planeerimine, ennustades mahutavuse ammendumise aegu konteineri jälgimismõõdikute põhjal.
  3. Jälgige konteinerdatud rakenduste kättesaadavust ja jõudlust, mis on kasulik nii mahutavuse planeerimiseks kui ka jõudlusprobleemide tõrkeotsinguks.
  4. Automatiseerige töövooge, pakkudes konteinerite ja nende hostimiskeskkondade haldus- ja skaleerimistuge.
  5. Automatiseerige juurdepääsu kontroll oma kasutajaskonna jälgimiseks, keelake aegunud ja külaliskontod ning eemaldage ebavajalikud õigused.
  6. Veenduge, et teie tööriistakomplekt suudab jälgida neid konteinereid ja rakendusi erinevates keskkondades (pilves, kohapeal või hübriidkeskkonnas), et visualiseerida ja korreleerida jõudlust infrastruktuuri, võrgu, süsteemide ja rakenduste lõikes.

Kuidas andmeid salvestada ja nende turvalisust tagada

Kuna olekuga konteinerite arv suureneb, peavad kliendid kaaluma, kus andmed väljaspool hosti asuvad ja kuidas neid andmeid kaitsta. 

Vastavalt Portworxi ja Aqua Security uuring, on andmeturve enamiku vastanute (61%) nimetatud turvaprobleemide loendis esikohal. 

Andmete krüptimine on peamine turvastrateegia (64%), kuid vastajad kasutavad ka käitusaja jälgimist

(49%), registrite haavatavuste skannimine (49%), CI/CD torujuhtmete haavatavuste skannimine (49%) ja anomaaliate blokeerimine käitusaja kaitse kaudu (48%).

Gartneri soovitused:

  1. Valige põhimõtetele tuginevad hoiulahendused mikroteenuste arhitektuurParim on valida need, mis vastavad konteinerteenuste andmesalvestusnõuetele, on riistvarast sõltumatud, API-põhised, hajutatud arhitektuuriga ning toetavad nii kohapealset kui ka avalikku pilve juurutamist.
  2. Väldi patenteeritud pluginaid ja liideseid. Vali müüjad, kes integreeruvad Kubernetesega ja toetavad standardseid liideseid, näiteks CSI-d (Container Storage Interfaces).

Kuidas võrkudega töötada

Traditsiooniline ettevõtte võrgumudel, kus IT-spetsialistid loovad iga projekti jaoks võrgukeskkonnad arenduse, testimise, kvaliteedi tagamise ja tootmise jaoks, ei sobi alati hästi kokku pideva arendustöövooga. Lisaks hõlmavad konteinervõrgud mitut kihti.

В Magalixi ajaveeb kogutud klastri-võrgu lahenduse rakendamine peab vastama järgmistele kõrgetasemelistele reeglitele:

  1. Samale sõlmele ajastatud pod'id peavad suutma teiste pod'idega suhelda ilma NAT-i (võrguaadresside teisendamist) kasutamata.
  2. Kõik antud sõlmel töötavad süsteemideemonid (taustaprotsessid, näiteks kubelet) saavad suhelda samal sõlmel töötavate podidega.
  3. Podide kasutamine hostvõrk, peaks suutma suhelda kõigi teiste podidega kõigil teistel sõlmedel ilma NAT-i kasutamata. Pange tähele, et hostvõrgustamine on toetatud ainult Linuxi hostidel.

Võrgulahendused peavad olema tihedalt integreeritud Kubernetes'i primitiivide ja poliitikatega. IT-juhid peavad püüdlema võrgu automatiseerimise kõrge taseme poole, pakkuma arendajatele sobivaid tööriistu ja piisavat paindlikkust.

Gartneri soovitused:

  1. Uurige välja, kas teie CaaS (konteiner teenusena) või SDN (tarkvaraliselt määratletud võrk) toetab Kubernetes võrgustamist. Kui ei või kui tugi on ebapiisav, kasutage oma konteinerite jaoks konteinervõrgu liidest (CNI), mis toetab vajalikku funktsionaalsust ja poliitikaid.
  2. Veenduge, et teie CaaS või PaaS (platvorm teenusena) toetab siseneva liikluse jaotamiseks klastri sõlmede vahel siseneva kontrollerite ja/või koormuse tasakaalustajate loomist. Kui see pole võimalik, kaaluge kolmandate osapoolte puhverserverite või teenusevõrgu mehhanismide kasutamist.
  3. Koolita oma võrguinsenerid Linuxi võrgustamise ja võrgu automatiseerimise tööriistade alal, et vähendada oskuste puudujääki ja suurendada paindlikkust.

Kuidas hallata rakenduse elutsüklit

Rakenduste automatiseeritud ja sujuva edastamise tagamiseks tuleb konteinerorkestreerimist täiendada teiste automatiseerimistööriistadega, näiteks infrastruktuuri-koodina (IaC) toodetega. Nende hulka kuuluvad Chef, Puppet, Ansible ja Terraform. 

Samuti on vaja tööriistu rakenduste kokkupaneku ja juurutamise automatiseerimiseks (vt "Rakenduste väljalaske orkestreerimise maagiline kvadrant"). Konteinerid pakuvad ka laiendatavusvõimalusi, mis on sarnased virtuaalmasinate (VM) juurutustega. Seetõttu peaksid IT-juhid olema konteineri elutsükli haldustööriistad.

Gartneri soovitused:

  1. Kehtestage baaskonteineri kujutiste standardid, mis käsitlevad suurust, litsentsimist ja arendajate paindlikkust komponentide lisamisel.
  2. Kasutage konteineri elutsükli haldamiseks konfiguratsioonihaldussüsteeme, mis kihistavad konfiguratsiooni avalikes või privaatsetes hoidlates talletatud baaskujutistele tuginedes.
  3. Integreerige oma CaaS-platvorm automatiseerimistööriistadega, et automatiseerida kogu rakenduse töövoog.

Kuidas konteinereid orkestraatorite abil hallata

Konteinerite juurutamise põhifunktsioonid on tagatud orkestreerimis- ja ajastamiskihtidel. Ajastamise ajal paigutatakse konteinerid klastri kõige optimaalsematele hostidele vastavalt orkestreerimiskihi nõuetele. 

Kubernetesest on saanud aktiivse kogukonnaga de facto konteinerite orkestreerimise standard ja seda toetavad enamik juhtivaid kommertstarkvara müüjaid. 

Gartneri soovitused:

  1. Tuvastage turvakontrollide, jälgimise, poliitikate haldamise, andmete säilitamise, võrgustamise ja konteineri elutsükli haldamise baasnõuded.
  2. Nende nõuete põhjal valige tööriist, mis sobib kõige paremini teie vajaduste ja kasutusjuhtudega.
  3. Kasutage Gartneri uuringuid (vt "Kuidas valida Kubernetes'i juurutamismudelit"), et mõista erinevate Kubernetes'i juurutamismudelite eeliseid ja puudusi ning valida endale kõige sobivam.
  4. Valige pakkuja, kes pakub hübriidorkestreerimist tootmiskonteineritele mitmes keskkonnas, millel on tihe integratsioon taustsüsteemidega, ühised haldusplaanid ja järjepidevad hinnamudelid.

Kuidas pilveteenuse pakkujate võimalusi ära kasutada

Gartner usub, et, et huvi konteinerite juurutamise vastu avalikus pilves IaaS-is kasvab tänu valmis CaaS-pakkumiste kättesaadavusele ja nende pakkumiste tihedale integreerimisele teiste pilveteenuse pakkujate toodetega.

IaaS-pilved pakuvad nõudmisel ressursikasutust, kiiret skaleeritavust ja teenuse juhtimine, mis aitab kaotada vajaduse infrastruktuuri ja selle hoolduse põhjalike teadmiste järele. Enamik pilveteenuse pakkujaid pakub konteinerite haldusteenuseid ja mõned pakuvad mitut orkestreerimisvõimalust. 

Peamised pilveteenuste pakkujad on esitatud tabelis: 

Pilveteenuse pakkuja
Teenuse tüüp
Toode/teenus

Alibaba
Natiivne pilveteenus
Alibaba pilvekonteineriteenus, Alibaba pilvekonteineriteenus Kubernetesile

Amazon Web Services (AWS)
Natiivne pilveteenus
Amazon Elastic Container Services (ECS), Amazon ECS Kubernetesile (EKS), AWS Fargate

Hiiglaslik parv
MSP
Giant Swarmi hallatav Kubernetesi infrastruktuur

Google
Natiivne pilveteenus
Google'i konteinerimootor (GKE)

IBM
Natiivne pilveteenus
IBM Cloud Kubernetesi teenus

Microsoft
Natiivne pilveteenus
Azure Kubernetesi teenus, Azure'i teenusekangas

Oraakel
Natiivne pilveteenus
OCI konteinermootor Kubernetesile

Platvorm9
MSP
Haldab Kubernetes

Red Hat
Majutatud teenus
OpenShifti pühendunud ja veebipõhine

VMware
Majutatud teenus
Pilve PKS (beetaversioon)

Mail.ru pilvelahendused*
Natiivne pilveteenus
Mail.ru Pilvekonteinerid

* Me ei varja seda, lisasime end siia tõlkimise ajal 🙂

Avaliku pilve pakkujad lisavad samuti uusi võimalusi ja toovad turule kohapealseid tooteid. Lähitulevikus laiendavad pilveteenuse pakkujad oma tuge hübriidpilvedele ja mitme pilve keskkondadele. 

Gartneri soovitused:

  1. Hinnake objektiivselt oma organisatsiooni võimekust asjakohaseid tööriistu juurutada ja hallata ning kaaluge alternatiivseid pilvekonteinerite haldusteenuseid.
  2. Vali tarkvara hoolikalt, võimalusel kasuta avatud lähtekoodiga tarkvara.
  3. Valige pakkujad, kellel on hübriidkeskkondades ühtsed tegevusmudelid, mis võimaldavad föderatiivsete klastrite haldamist ühelt paneelilt, ning pakkujad, kes muudavad iseteenindusliku IaaS-i lihtsaks.

Mõned näpunäited Kubernetes aaS-teenuse pakkuja valimiseks Replexi ajaveebist:

  1. Tasub otsida distributsioone, mis toetavad koheselt kõrget käideldavust. See hõlmab tuge mitmele suuremale arhitektuurile, kõrge käideldavusega etcd komponentidele ning varundamise ja taastamise funktsioonidele.
  2. Kubernetes keskkondade mobiilsuse tagamiseks on kõige parem valida pilveteenuse pakkujad, kes toetavad laia valikut juurutusmudeleid: alates kohapealsetest kuni hübriid- ja mitmepilveni. 
  3. Pakkujate pakkumisi tuleks hinnata ka seadistamise, installimise ja klastri loomise lihtsuse, samuti värskenduste, jälgimise ja tõrkeotsingu lihtsuse põhjal. Põhinõue on täisautomaatsete klastri värskenduste tugi ilma seisakuteta. Valitud lahendus peaks võimaldama ka käsitsi värskendusi. 
  4. Identiteedi- ja juurdepääsuhaldus on olulised nii turvalisuse kui ka haldamise seisukohast. Veenduge, et teie valitud Kubernetes'i jaotus toetab integratsiooni teie ettevõtte autentimis- ja autoriseerimistööriistadega. RBAC ja detailne juurdepääsukontroll on samuti olulised funktsioonid.
  5. Valitud distributsioonil peaks olema kas oma tarkvarapõhine võrgulahendus, mis katab laia valikut erinevate rakenduste või infrastruktuuri nõudeid, või toetama ühte populaarsetest CNI-põhistest võrgurakendustest, sealhulgas Flannel, Calico, Kube-Router või OVN.

Konteinerite kasutuselevõtt tootmises on muutumas peavoolu trendiks, mida tõendavad ka läbi viidud uuringu tulemused. Gartneri sessioonid Taristu, operatsioonide ja pilvestrateegia (IOCS) 2018. aasta detsembris:

Konteinerite ja Kubernetese käitamise parimad tavad ja tavad tootmiskeskkondades
Nagu näeme, kasutab 27% vastanutest juba oma töös konteinereid ja 63% plaanib seda teha.

В Portworxi ja Aqua Security uuring 24% vastanutest teatas, et investeerib konteinertehnoloogiatesse aastas üle poole miljoni dollari ja 17% kulutab neile aastas üle miljoni dollari. 

Selle artikli koostas pilveplatvormi meeskond. Mail.ru pilvelahendused.

Mida muud selle teema kohta lugeda:

  1. DevOpsi parimad tavad: DORA aruanne.
  2. Kubernetes piraatluse vaimus koos rakenduse malliga.
  3. 25 kasulikku tööriista Kubernetes'i juurutamiseks ja rakendamiseks.

Allikas: www.habr.com