
Konteineritehnoloogiate ökosüsteem areneb ja muutub kiiresti, mistõttu on selles valdkonnas häid tööpraktikaid vähe. Sellegipoolest kasutatakse Kubernetes't ja konteinereid üha enam — nii vanade rakenduste moderniseerimiseks kui ka uute pilverakenduste arendamiseks.
Meeskond kogus ennustusi, nõuandeid ja parimaid praktikaid turuliidritele Gartnerilt, 451 Researchilt, StacxRoXilt ja teistelt. Need aitavad tagada ja kiirendada konteinerite juurutamist tootmisringkondades.
Kuidas mõista, kas teie ettevõte on valmis konteineritootmiskeskkonnas juurutama?
, kasutab 2022. aastal üle 75% organisatsioonidest tootmises konteineriseeritud rakendusi. See on oluliselt rohkem kui praegu, kui selliseid rakendusi kasutab alla 30% ettevõtteid.
Vastavalt , prognoositav turg konteineritehnoloogiate rakendamiseks 2022. aastal ulatub 4,3 miljardi dollarini. See on enam kui kahekordne summa võrreldes 2019. aasta prognoosidega, turu kasvutempo on 30%.
V 87% vastanutest teatas, et nad kasutavad praegu konteineritehnoloogiaid. Võrdluseks — 2017. aastal oli selliseid vastajaid 55%.
Kuigi huvi ja konteinerite rakendamine kasvavad, nõuab nende tootmisse viimine koolitust tehnoloogilise küpsuse ja oskuste puudu tõttu. Organisatsioonid peavad realistlikult vaatama äri protsesside poole, mis nõuavad rakenduste konteineriseerimist. IT-juhid peaksid hindama, kas neil on oskuste komplekt, et edasi liikuda, arvestades kiire koolituse vajadust.
arvavad, et allolevad küsimused aitavad mõista, kas olete valmis konteinerite tootmisse rakendamiseks:

Kõige sagedasemad vead konteinerite tootmises rakendamisel
Organisatsioonid alahindavad sageli jõupingutusi, mis on vajalikud konteinerite tootmises toimimiseks. mitmeid levinud vigu kliendi stsenaariumites konteinerite kasutamisel tootmiskeskkondades:

Kuidas tagada konteinerite turvalisus
Turvalisusega ei saa tegeleda «hiljem». See peab olema integreeritud DevOpsi protsessi, mistõttu on isegi loodud spetsiaalne termin - DevSecOps. Organisatsioonid peavad planeerima kogu arenduse elutsükli vältel, mis hõlmab koostamise ja arendamise protsessi, rakenduse juurutamist ja käivitamist.
:
- Integreerige rakenduspiltide skaneerimisprotsess haavatavuste avastamiseks pideva integreerimise/pideva pakkumise (CI/CD) torustikku. Rakendusi skaneeritakse tarkvara koostamise ja käivitamise etappidel. Rõhutage komponentide, avatud lähtekoodiga teekide ja raamistikute skaneerimise ning tuvastamise vajadust. Arendajate poolt vanade haavatavate versioonide kasutamine on üks peamisi konteinerite haavatavuste põhjuseid.
- Parandage konfiguratsiooni Interneti Turvakeskuse (), mis on saadaval nii Dockerile kui ka Kubernetesile, testide abil.
- Kasutage kindlasti juurdepääsukontrolli, tagage ülesannete eristamine ja rakendage saladuste haldamise poliitika. Selliseid konfidentsiaalseid andmeid nagu Secure Sockets Layer (SSL) võtmed või andmebaasi mandaadid krüpteeritakse orkestreerija või kolmandate osapoolte haldusteenuste abil ning need antakse välja toimimise ajal.
- Vältige kõrgendatud õigustega konteinerite kasutamist turvapoliitika haldamise kaudu, mis vähendab võimalikke häkkimise riske.
- Kasutage turvatööriistu, mis pakuvad valgeid loendeid, käitumismonitorimist ja anomaaliate tuvastamist, et vältida pahatahtlikke tegevusi.
:
- Kasutage Kubernetes'i integreeritud funktsioone. Konfigureerige kasutajate juurdepääs rollide kaudu. Veenduge, et te ei annaks üksikutele isikutele liigseid õigusi, isegi kui minimaalsete vajalike õiguste üle mõtlemine võib võtta aega. Võib tunduda ahvatlev anda klastrihaldurile laiad õigused, kuna see säästab aega algfaasis. Kuid iga kompromiss või vale konto seadistus võib hiljem kaasa tuua tõsiseid tagajärgi.
- Vältige juurdepääsuõiguste dubleerimist. Mõnikord on kasulik teha nii, et erinevad rollid kattuvad, kuid see võib põhjustada kasutuseeskirjadega seotud probleeme ning luua "surmaalasid" õiguste eemaldamisel. Samuti on oluline eemaldada kasutamata ja mitteaktiivsed rollid.
- Seadke võrgu politiseerimine: isoleerige moodulid, et piirata juurdepääsu neile; lubage selgelt interneti juurdepääs neile moodulitele, kellel see vajalik on, kasutades silte; lubage selgelt suhtlus nende moodulite vahel, kes peavad omavahel suhtlema.
Kuidas korraldada konteinerite ja nende teenuste jälgimist
Turvalisus ja jälgimine — Kubernetes klastrite juurutamisel. Arendajad keskenduvad sageli rohkem rakenduste funktsioonidele, mida nad arendavad, kui .
:
- Püüdke jälgida konteinerite või teenuste seisukorda koos host-süsteemide jälgimisega.
- Eelistage tootjaid ja tööriistu, millel on süvaintegratsioon konteinerite orkestreerimisega, eriti Kubernetesega.
- Valige tööriistad, mis pakuvad detailset logimist, automaatset teenuste tuvastamist ja reaalajas soovitusi analüütika ja/või masinõppe abil.
:
- Kasutage tööriistu konteineri automaatseks tuvastamiseks ja jälgimiseks, jõudluse metrikate, nagu CPU, mälu ja tööaja seose jälgimiseks.
- Tagage optimaalne ressursiplaneerimine, prognoosides võime kahanemise tähtaegu konteinerite jälgimise näitajate põhjal.
- Organiseer rakenduste jälgimine konteinerites saadud kättesaadavuse ja jõudluse näitajate alusel, mis on kasulik nii mahutavuse planeerimiseks kui ka soorituse probleemide lahendamiseks.
- Automatiseerige tööprotsessid, pakkudes konteineritele ja nende rakenduskeskkondadele halduse ja laiendamise toetust.
- Automatiseerige juurdepääsu kontroll, et jälgida kasutajabaasi, keelata aegunud ja külalisarve, ning eemaldada liigsed õigused.
- Veenduge, et teie tööriistakogum suudab jälgida neid konteinerite ja rakendusi erinevates keskkondades (pilves, kohalikus või hübriidses) infrastruktuuri, võrgu, süsteemide ja rakenduste jõudluse visualiseerimiseks ja vastendamiseks.
Kuidas andmeid talletada ja nende turvalisust tagada
Konteinerite arvu suurenemisega, millel on olek, peavad kliendid arvestama andmete asukohta väljaspool hosti, samuti nende andmete kaitsmise vajadusega.
Portworxi ja Aqua Security uuringu andmetel Andmete turvalisus on enamikule vastanutest (61%) esitatud probleemide loetelus esikohal.
Andmete krüpteerimine on peamine turvalisuse strateegia (64%), kuid vastajad kasutavad ka käitusaja jälgimist (49%), registri haavatavuste skannimist (49%), CI/CD torude haavatavuste skannimist (49%) ja anomaaliate blokeerimist käitusaja kaitse abil (48%).
(49%), haavatavuse skaneerimine registrites (49%), haavatavuse skaneerimine CI/CD torudes (49%) ja anomaaliate blokeerimine käivitamise kaitse kaudu (48%).
:
- Valige andmete salvestamise lahendused, mis põhinevad Eelistage lahendusi, mis vastavad konteinerite teenuste andmete salvestamise nõuetele, on riistvarast sõltumatud, hallatavad API kaudu, omavad hajutatud arhitektuuri, toetavad kohalikke juurutusi ja avalikku pilve juurutusi.
- Vältige omandiõigusega pluginase ja liideseid. Valige tootjad, kes tagavad Kubernetes'e integreerimise ja toetavad standardseid liideseid nagu CSI (Container Storage Interfaces).
Kuidas töötada võrkudega.
Traditsiooniline ettevõttevõrgu mudel, kus IT-spetsialistid loovad arendus-, testimis-, kvaliteedi tagamise ja tootmisvõrgustikke iga projekti jaoks, ei pruugi alati kattuda pideva arenduse tööprotsessiga. Lisaks katab konteinerivõrk mitmeid tasandeid.
V üldised kõrgetasemelised põhimõtted, millele klastrite võrgulahenduse rakendamine peab vastama:
- Samal sõlmel planeeritud podid peavad saama andmeid vahetada teiste moodulitega ilma NAT-ta (võrguaadresside tõlkimine).
- Kõik süsteemi demonid (taustaprotsessid, nagu kubelet), mis töötavad teatud sõlmel, saavad suhelda samal sõlmel töötavate podidega.
- Podid, mis kasutavad peavad suutma suhelda kõigi teiste podidega kõigil teistel sõlmedel ilma NAT-ta. Pange tähele, et hosti võrku toetatakse ainult Linuxi hostides.
Võrgulahendused peavad olema tihedalt seotud Kubernetes'e primitiivide ja poliitikatega. IT-juhtidel on oluline püüelda kõrge automaatika poole, et pakkuda arendajatele vajalikke tööriistu ja piisavat paindlikkust.
:
- Uurige, kas teie CaaS (konteiner kui teenus) või teie SDN (tarkvara määratud võrk) toetab Kubernetes'e võrke. Kui ei või tugi on ebapiisav, kasutage oma konteinerite jaoks CNI (Container Network Interface) võrguinterfeisi, mis toetab vajalikku funktsionaalsust ja poliitikaid.
- Veenduge, et teie CaaS või PaaS (platvorm kui teenus) toetab sissetulevate kontrollerite ja/või koormuse tasakaalustajate loomist, mis jagavad sissetulevat liiklust klastrisõlmede vahel. Kui sellist võimalust ei ole, uurige kolmandate osapoolte proksi või teenuse mesh'i mehhanismide kasutamist.
- Koolitage oma võrginsenere Linuxi võrkude ja võrgu automatiseerimise tööriistade kasutamiseks, et vähendada oskuste lõhet ja suurendada paindlikkust.
Kuidas hallata rakenduste elutsüklit
Automatiseeritud ja katkematu rakenduste tarnimise jaoks tuleb konteinerite orkestreerimisele lisada teisi automatiseerimise tööriistu, nagu infrastruktuurikood (IaC) tooted. Nendeks on Chef, Puppet, Ansible ja Terraform.
Vajalikud on ka rakenduste loomise ja juurutamise automatiseerimise vahendid (vt „“). Konteinerid pakuvad ka laienemisvõimalusi, mis sarnanevad varasematele, mis eksisteerisid virtuaalmasinate (VM) juurutamisel. Seega peavad IT-juhtidel olema .
:
- Seadke konteinerite aluskuvajate standardid, arvesse võttes nende suurust, litsentseerimist ja arendajate lisa komponentide paindlikkust.
- Kasutage konfiguratsioonihaldussüsteeme konteinerite elutsükli haldamiseks, mis paigutavad konfiguratsiooni kihtidesse, lähtudes aluskuvajatest, mis on avalikes või privaatsetes hoidlatest.
- Integreerige CaaS platvorm automatiseerimise tööriistadega, et automatiseerida kogu rakenduse töövoog.
Kuidas hallata konteinerite orkestratoreid
Konteinerite juurutamiseks vajalikud põhifunktsioonid on saadaval orkestreerimise ja planeerimise tasanditel. Planeerimise käigus paigutatakse konteinerid klastris kõige optimaalsematesse hostidesse, vastavalt orkestreerimise tasandi nõuetele.
Kubernetes on de facto konteinerite orkestreerimise standard, millel on aktiivne kogukond ja mida toetavad enamik juhtivaid kommertstootjaid.
:
- Määratlege põhivajadused turvahalduse, jälgimise, poliitikate haldamise, andmete salvestamise, võrguhalduse ja konteinerite elutsükliga seotud elementide jaoks.
- Nende nõuete alusel valige tööriist, mis vastab kõige paremini teie vajadustele ja kasutusstsenaariumidele.
- Kasutage Gartneri uuringute tulemusi (vt «»), et mõista erinevate Kubernetes'i juurutusmudelite eeliseid ja puudusi ning valida oma ülesande jaoks kõige sobivam.
- Valige pakkuja, kes suudab tagada hübriidooru kõikides keskkondades konteinerite järgimise, tiheda integreerimise tagamiseks backend-iga, ühiste haldusplaanide ja ühtsete hindamudelitega.
Kuidas kasutada pilveteenuste pakkujate võimalusi
, et huvi konteinerite kasutuselevõtu vastu avalikus IaaS-pilves kasvab, kuna CaaS-i valmis pakkumiste kergesti kättesaadavus ja nende pakkumiste tihe integreerimine teiste pilveteenuse pakkujate toodetega.
IaaS-pilved pakuvad ressursside tarbimist nõudmisel, kiiret skaleeritavust ja , mis aitab vältida sügavaid teadmisi infrastruktuurist ja selle hooldamisest. Enamik pilveteenuse pakkujatest pakuvad konteinerite haldamise teenust, mõned pakuvad mitmeid järgimisvõimalusi.
Peamised juhtivad teenuste pilveteenuse pakkujad 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 Cloud Solutions*
Native Cloud Service
Mail.ru Cloud Containers
* Ei peida, me lisasime end tõlkesse 🙂
Avalikud pilveteenuste pakkujad lisavad pidevalt uusi funktsioone ja tooteid. Lähitulevikus arendavad pilveteenuste pakkujad hübriidpilvede ja mitme pilve keskkondade toe.
:
- Hinnake objektiivselt oma organisatsiooni võimet rakendada ja hallata sobivaid tööriistu ning kaaluge alternatiivseid pilvekonteineritöötlusteenuseid.
- Valige tarkvara hoolikalt, kasutage avatud lähtekoodi, kus see on võimalik.
- Valige teenusepakkujad, kellel on ühtsed tegevusmudelid hübriidkeskkondades, kes pakuvad hallatavaid klastreid ühest paneelist ning pakkujad, kes lihtsustavad IaaS-i iseseisvat kasutamist.
:
- Otsige distributsioone, mis toetavad kõrge käideldavust juba väljaandes. See hõlmab tuge mitmete põhistruktuuride, kõrge töövalmidusega komponentide etcd ning samuti varundamise ja taastamise toetust.
- Kubernetes'i keskkondade liikuvuse tagamiseks on parem valida pilveteenuse pakkujad, kes toetavad laia valikut juurutusmudeleid: kohalikest kuni hübriidsete ja mitme pilve lahendusteni.
- Teenusepakkujate pakkumisi tuleks hinnata ka paigalduse, seadistamise ja klastrite loomise lihtsuse, samuti uuenduste, monitooringu ja tõrkeotsingu põhjal. Alusnõue on täielikult automatiseeritud klastrite uuenduste toetamine nullse seiskamisajaga. Valitud lahendus peab samuti võimaldama käivitada uuendusi käsitsi.
- Identiteedi ja juurdepääsu haldamine on oluline nii turvalisuse kui ka haldamise seisukohalt. Veenduge, et valitud Kubernetes'i distributsioon toetab integreerimist organisatsioonis kasutatavate autentimis- ja autoriseerimistööriistadega. RBAC ja detailne juurdepääsu kontroll on samuti olulised funktsioonide komplektid.
- Valitud distributsioon peab kas omama oma võrgu lahendust, mida määratleb tarkvara ja mis katab laia valikut erinevate rakenduste või infrastruktuuri nõudeid, või toetama ühte populaarsetest CNI-põhistest võrgu rakendustest, sealhulgas Flannel, Calico, kube-router või OVN.
Konteinerite juurutamine tootmisse muutub peamiseks suunaks, mida kinnitavad küsitluse tulemused, mis viidi läbi infrastruktuuri, operatsioonide ja pilve strateegiate (IOCS) raames detsembris 2018:

Nagu näeme, kasutab 27% küsitletutest juba konteinerite töötlemisel, ja 63% kavatseb seda teha.
V 24% vastanutest teatas, et investeerib igal aastal konteineritehnoloogiatele üle poole miljoni dollari, samas kui 17% vastanutest kulutab neile rohkem kui miljon dollarit aastas.
Artikkel on koostatud pilveplatvormi meeskonna poolt. .
Mida veel teemast lugeda:
- .
- .
- .
Allikas: habr.com
