11 orodij, ki izboljšujejo Kubernetes

11 orodij, ki izboljšujejo Kubernetes

Niso vse strežniške platforme, celo najmočnejše in najbolj razširljive, zadovoljijo vse potrebe kot take. Čeprav Kubernetes odlično deluje sam po sebi, mu morda manjkajo potrebni deli za popolnost. Vedno boste naleteli na posebne primere, ki ignorirajo vašo potrebo ali kjer Kubernetes ne bo deloval pri privzeti namestitvi — na primer, podpora za baze podatkov ali delovanje CDN.

Tu se pojavijo dodatki, razširitve in druge zanimivosti za tega orkestratorja vsebnikov, ki jih podpira široka skupnost. V tem članku bo predstavljenih 11 najboljših stvari, ki smo jih našli. Nam samim so zelo zanimive in načrtujemo, da se bomo z njimi spoprijeli praktično — razstavili jih bomo na drobne sestavne dele in si ogledali, kaj je znotraj. Nekatere od njih se odlično dopolnjujejo z vsakim Kubernetes klasterjem, druge pa bodo pomagale rešiti posebne naloge, ki niso realizirane v standardni namestitvi Kubernetes. Southbridge Gatekeeper: upravljanje politik

(OPA) omogoča ustvarjanje politik nad oblačnimi skladi aplikacij v Kubernetesu, od ingress-a do service mesh-a.

Projekt Open Policy Agent Gatekeeper ponuja nativno funkcionalnost za Kubernetes, ki omogoča samodejno izvajanje politik v klasterju, prav tako pa nudi preverjanje vseh dogodkov ali virov, ki kršijo politiko. Vse to se obravnava z relativno novim mehanizmom Kubernetes, upravljalnikom dostopa Webhooks, ki se sproži pri spremembi virov. S pomočjo Gatekeeper postanejo politike OPA del stanja vašega Kubernetes klasterja, ne da bi potrebovale stalno nadzorovanje. Gravity: Prenosni klasterji Kubernetes

Če želite implementirati aplikacijo v Kubernetes, mnoge aplikacije imajo Helm chart, ki usmerja in avtomatizira ta postopek. Ampak, kaj če želite vzeti svoj klaster Kubernetes 'kot je', in ga razširiti nekje drugje?

Gravity

naredi posnetke stanja klasterjev Kubernetes, njihovega registrija za slike vsebnikov, kot tudi zagnane aplikacije, imenovane 'paketi aplikacij'. Tak paket, ki predstavlja običajno datoteko .tar , lahko replikira klaster povsod, kjer lahko deluje Kubernetes., lahko replikira klaster povsod, kjer lahko deluje Kubernetes.

Gravity prav tako preverja, ali se ciljna infrastruktura obnaša enako kot izvorna, ter da je okolje Kubernetes na cilju dostopno. Plačljiva različica Gravity prav tako dodaja varnostne funkcije, vključno z RBAC in možnostjo sinhronizacije varnostnih nastavitev med različnimi namestitvami gruče.

Zadnja glavna različica, Gravity 7, lahko namesti sliko Gravity v obstoječo gruča Kubernetes, namesto da bi namestila popolnoma novo gruča iz slike. Gravity 7 prav tako podpira gruče, ki so nameščene brez uporabe slike Gravity. Poleg tega Gravity podpira SELinux in nativno deluje z ščitnikom Teleport SSH.

Kaniko: Gradnja kontejnerjev v gruči Kubernetes

Večina slik kontejnerjev se gradi na sistemih zunaj kontejnerskega sklada. Včasih pa je treba zgraditi sliko znotraj kontejnerskega sklada, na primer nekje v aktivnem kontejnerju ali v gruči Kubernetes.

Kaniko izvaja gradnjo kontejnerjev znotraj kontejnerskega okolja, vendar ne potrebuje odvisnosti pri delovanju od storitve kontejnerizacije, kot je Docker. Namesto tega Kaniko pridobi datotečni sistem iz osnovne slike, izvede vse gradbene ukaze v uporabniškem prostoru nad pridobljenim datotečnim sistemom in naredi posnetek datotečnega sistema po vsakem ukazu.

Opomba: Kaniko trenutno (maj 2020) ne more graditi kontejnerjev Windows. translator's note) ne more zbirati kontejnerjev Windows.

Kubecost: Možnosti stroškov zagon Kubernetes

Večina orodij za upravljanje Kubernetes je osredotočena na enostavnost uporabe, spremljanje, razumevanje obnašanja znotraj pod-a itd. Kaj pa s spremljanjem stroškov — v rubljih in kopejkah — povezanih z zagonom Kubernetes?

Kubecost obdeluje nastavitve Kubernetes v realnem času, kar vodi do informacij o dejanskih stroških iz zagnanih gruč pri glavnih ponudnikih cloud storitev, ki so prikazane na nadzorni plošči z mesečnimi stroški vsake gruče. Cene za pomnilnik, procesorski čas, GPU in diske so razdeljene po komponentah Kubernetes (kontejner, pod, storitev itd.)

Kubecost tudi spremlja stroške zunajgrućnih virov, na primer Amazon S3 buckets, četudi je to omejeno na AWS. Podatki o stroških lahko pridejo v Prometheus, tako da jih lahko uporabite za spreminjanje obnašanja gruče programatsko.

Kubecost je brezplačen za uporabo, če vam zadostujejo podatki v dnevnikih za 15 dni. Za dodatne funkcionalnosti cene začnejo pri 199$ mesečno za monitoring 50 vozlišč.

KubeDB: Zagon produkcijskih podatkovnih baz v Kubernetesu

Zagon podatkovnih baz v Kubernetesu je lahko precej zapleten. Na voljo so Kubernetes operatorji za MySQL, PostgreSQL, MongoDB in Redis, vendar ima vsak od njih svoje slabosti. Prav tako tipičen sklop funkcij Kubernetes ne omogoča neposrednega reševanja večine specifičnih težav s podatkovnimi bazami.

KubeDB vam pomaga ustvariti svoje Kubernetes operaterje za upravljanje podatkovnih baz. Zagon varnostnih kopij, kloniranje, spremljanje, ustvarjanje posnetkov in deklarativno ustvarjanje baz so njegove sestavine. Upoštevajte, da funkcionalna podpora ni odvisna od podatkovne baze. Na primer, ustvarjanje gruče deluje za PostgreSQL, ne pa za MySQL (treba da postoji stek. Ali "mi praktičari: sve nam funkcioniše, ali niko ne zna zašto…". so, kot je pravilno opazil dnbstd, translator's note).

Kube-monkey: Chaos Monkey za Kubernetes

Najbolj zanesljiv način stresnega testiranja vključuje naključne okvare. Ta teorija je osnova za Chaos Monkey podjetja Netflix, kaotično inženirsko orodje, ki naključno izklaplja virtualne stroje in kontejnerje v proizvodnem okolju, da 'spodbuja' razvijalce k ustvarjanju bolj odpornih sistemov. Kube-monkey je implementacija iste osnovne teorije stresnega testiranja za gruče Kubernetes. Deluje tako, da naključno ubija module v gruči, ki jih določite, in ga je mogoče nastaviti, da deluje v določenem časovnem intervalu.

Kubernetes Ingress Controller za AWS

Kubernetes zagotavlja zunanji uravnoteževalnik obremenitve in omrežne storitve gruče preko storitve, imenovane Ingress AWS nudi funkcionalnosti uravnoteženja obremenitve, vendar jih ne povezuje samodejno s podobnimi funkcionalnostmi Kubernetes. Kubernetes Ingress Controller za AWS zapolnjuje to vrzel.

Samodejno upravlja z viri AWS za vsak ingress objekt v gruči, ustvarja uravnoteževalnike obremenitve za nove ingress vire in odstranjuje uravnoteževalnike obremenitve ob odstranitvi virov. Uporablja CloudFormation, da zagotovi celovitost stanja gruče. Prav tako podpira nastavitve opozoril CloudWatch in samodejno upravlja z drugimi elementi, ki se uporabljajo v gruči, kot so SSL certifikati in EC2 Auto Scaling Groups.

Kubespray: Samodejna namestitev Kubernetes

Kubespray avtomatizira namestitev pripravljenega za industrijsko rabo klustra Kubernetes, ki sega od namestitve na 'kovinskih' strežnikih do glavnih javnih oblakov. Uporablja Ansible (Dodatno Vagrant) za zagon namestitve in ustvarjanje visoko dosegljivega klustra iz nič s svojim izbranim omrežnim dodatkom (npr. Flannel, Calico in drugi) na izbranem priljubljenem Linux distribuciji pri namestitvi na 'kovinske' strežnike.

Skaffold: Iterativni razvoj za Kubernetes

Skaffold — eden od Google orodij, ki se uporablja za organizacijo CD aplikacij v Kubernetes. Takoj ko naredite spremembe izvorne kode — skafo ld to samodejno zazna, zažene postopek gradnje in namestitve ter vas opozori na morebitne napake. Skaffold deluje v celoti na strani odjemalca, zato lahko pride do manjših težav pri namestitvi ali posodabljanju. Lahko se uporablja z obstoječimi CICD cevovodi in tudi sodeluje z nekaterimi zunanjimi orodji za gradnjo, predvsem z Bazelom od Google.

Teresa: Najpreprostejši PaaS na Kubernetes

Teresa je sistem za namestitev aplikacij, ki zažene najpreprostejši PaaS nad Kubernetes. Uporabniki, razdeljeni v tim, lahko namestijo in upravljajo s svojimi aplikacijami. To nekoliko poenostavi delo ljudem, ki zaupajo tej aplikaciji in ne želijo imeti opravka s Kubernetes in vsemi njegovimi zapletenostmi.

Tilt: Toka posodobitve kontejnerjev v klustre Kubernetes

Tilt, razvit z Windmill Engineering, spremlja spremembe različnih datotek Dockerfile in nato postopoma namestiti ustrezne kontejnerje v klustru Kubernetes. V bistvu omogoča posodobitev produkcijskega klustra v realnem času preprosto s posodobitvijo datotek Dockerfile. Tilt izvaja gradnjo znotraj klustra, izvorna koda — vse kar je potrebno za spremembo. Lahko ustvarite tudi posnetek stanja klustra in zabeležite pogoje sprožitve napak neposredno iz Tilta, da jih delite s člani ekipe za odpravljanje napak.

P.S. Vsa ta orodja smo večkrat preizkusili z našimi radovednimi rokami. Da bi predstavili resnične prakse že (upam!) na offline intenzivih v februarju. Southbridge 8–10 februar 2021. In Kubernetes Osnova 8–10 februar 2021. I Kubernetes Mega 12–14 februar. Iskreno, mi smo također zaželjeli toplu i energetsku atmosferu offline obuke. Kakve god napredne tehnologije bile, one neće zamijeniti živi ljudski kontakt i posebnu atmosferu kada se okupljaju istomišljenici.

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster