11 ark dy't Kubernetes better meitsje

11 ark dy't Kubernetes better meitsje

Net alle serverplatfoarms, sels de machtichste en skaalberste, befredigje alle behoeften lykas se binne. Wylst Kubernetes op himsels geweldich wurket, kin it de juste stikken misse om folslein te wêzen. Jo sille altyd in spesjaal gefal fine dat jo need negearret, of wêr't Kubernetes net wurket op in standert ynstallaasje, lykas databasestipe of CD-operaasje.

Dit is wêr tafoegings, tafoegings en oare goodies foar dizze container orkestrator ferskine, stipe troch de breedste mienskip. Yn dit artikel sille d'r 11 wêze fan 'e bêste dingen dy't wy fûn hawwe. Wy sels yn súdlike brêge se binne heul ynteressant, en wy binne fan plan om har praktysk te behanneljen - om se yn skroeven en moeren te demontearjen en te sjen wat der binnen is. Guon fan harren sille elke Kubernetes-kluster perfekt oanfolje, wylst oaren helpe by it oplossen fan bepaalde taken dy't net yn 'e typyske Kubernetes-distribúsje binne ymplementearre.

Gatekeeper: beliedsbehear

It projekt Iepenje Policy Agent (OPA) biedt de mooglikheid om belied te meitsjen boppe op wolkapplikaasjestapels yn Kubernetes, fan yngong oant tsjinstmesh. Gatekeeper jout Kubernetes native mooglikheid om te hanthavenjen belied op it kluster automatysk, en ek jout ynspeksje foar alle eveneminten of middels dy't yn striid mei it belied. Dit alles wurdt behannele troch it relatyf nije Kubernetes-meganisme, de Webhooks-admission manager, dy't fjoer as boarnen feroarje. Mei Gatekeeper wurdt OPA-belied in oar diel fan 'e steat fan jo Kubernetes-kluster sûnder de needsaak foar konstant tafersjoch.

Gravity: Portable Kubernetes Clusters

As jo ​​​​in applikaasje nei Kubernetes wolle útrolje, hawwe in protte applikaasjes in Helm-diagram dat dit proses begeliedt en automatisearret. Mar wat as jo jo Kubernetes-kluster "as is" wolle nimme en it earne oars útrolje?

Gravity nimt snapshots fan Kubernetes-klusters, har registraasje foar kontenerôfbyldings, lykas ek it útfieren fan applikaasjes neamd "applikaasjepakketten". Sa'n pakket, dat is in gewoane triem .tar, kin it kluster replikearje wêr't Kubernetes kin rinne.

Gravity kontrolearret ek dat de doelynfrastruktuer itselde gedraacht as de boarneynfrastruktuer, en ek dat de Kubernetes-omjouwing op it doel beskikber is. De betelle ferzje fan Gravity foeget ek feiligensfunksjes ta, ynklusyf RBAC en de mooglikheid om befeiligingsynstellingen te syngronisearjen oer ferskate kluster-ynset.

De lêste grutte release, Gravity 7, kin in Gravity-ôfbylding yn in besteande Kubernetes-kluster triuwe, ynstee fan in folslein nij kluster út 'e ôfbylding te spinnen. Gravity 7 kin ek wurkje mei klusters ynstalleare sûnder de Gravity-ôfbylding te brûken. Gravity stipet ek SELinux, en wurket natuerlik mei de Teleport SSH-gateway.

Kaniko: Containers bouwe yn in Kubernetes-kluster

De measte kontenerôfbyldings binne boud op systemen bûten de kontenerstapel. Soms moatte jo de ôfbylding lykwols bouwe yn in stapel konteners, lykas earne yn in rinnende kontener, of yn in Kubernetes-kluster.

Kaniko bout konteners binnen in konteneromjouwing, mar sûnder ôfhinklik fan in kontenerisaasjetsjinst, lykas Docker. Ynstee ekstrakt Kaniko it bestânsysteem út 'e basisôfbylding, fiert alle kommando's foar gebrûk fan brûkersromte boppe op it ekstrahearre bestânsysteem, en nimt in momintopname fan it bestânsysteem nei elk kommando.

Opmerking: Kaniko is op it stuit (mei 2020, ca. oersetter) kin gjin Windows-konteners bouwe.

Kubecost: Opsjes foar opstartkosten fan Kubernetes

De measte Kubernetes-administraasje-ark rjochtsje har op gemak fan gebrûk, tafersjoch, it begripen fan it gedrach yn in pod, ensfh. Mar wat oer it kontrolearjen fan de kosten - yn roebels en kopeken - ferbûn mei de lansearring fan Kubernetes?

Kubecost ferwurket Kubernetes-parameters yn echte tiid, wat resulteart yn aktuele kostenynformaasje fan rinnende klusters by grutte wolkproviders, werjûn yn in paniel mei moanlikse kosten per kluster. Prizen foar RAM, CPU-tiid, GPU en skiifsubsysteem wurde ferdield troch Kubernetes-komponinten (container, pod, tsjinst, ensfh.)

Kubecost folget ek de kosten fan net-cluster-boarnen lykas Amazon S3-bakken, hoewol dit wurdt beheind troch AWS. De kostengegevens kinne nei Prometheus stjoerd wurde, sadat jo it brûke kinne om it gedrach fan it kluster programmatysk te feroarjen.

Kubecost is fergees te brûken as jo genôch 15 dagen loggegevens hawwe. Foar ekstra funksjes begjint prizen by $ 199 per moanne foar it kontrolearjen fan 50 knopen.

KubeDB: Running Battle Databases yn Kubernetes

Databanken binne ek lestich om spektakulêr te rinnen yn Kubernetes. Jo sille Kubernetes-operators fine foar MySQL, PostgreSQL, MongoDB, en Redis, mar se hawwe allegear neidielen. Ek de typyske Kubernetes-funksjeset rjochtet de measte fan 'e definieare databaseproblemen net direkt oan.

KubeDB helpt jo jo Kubernetes-útspraken te meitsjen foar databasebehear. It útfieren fan backups, klonen, tafersjoch, snapshots, en deklarative database oanmeitsjen binne de ûnderdielen dêrfan. Tink derom dat funksje-stipe databankôfhinklik is. Bygelyks, it meitsjen fan in kluster wurket foar PostgreSQL, mar net foar MySQL (al der is, lykas terjochte oanjûn dnbstd, ca. oersetter).

Kube-aap: Chaos Monkey foar Kubernetes

De meast flaterfrije metoade foar stresstesten wurdt beskôge as willekeurige breakdowns. Dizze teory is it hert fan Netflix's Chaos Monkey, in chaotysk technysk ark dat willekeurige firtuele masines en konteners foar produksjeomjouwing ôfslút om ûntwikkelders "oan te stimulearjen" om mear veerkrachtige systemen te bouwen. kube-aap - ymplemintaasje fan deselde basisteory fan stresstesten foar Kubernetes-klusters. It wurket troch willekeurich te deadzjen fan modules yn it kluster dat jo oanwize, en kin ek ynsteld wurde om te rinnen op in spesifyk tiidynterval.

Kubernetes Ingress Controller foar AWS

Kubernetes leveret in eksterne loadbalancer en klusternetwurktsjinsten fia in tsjinst neamd Ingress AWS leveret funksjes foar load balancing, mar bondele se net automatysk mei deselde Kubernetes-funksjes. Kubernetes Ingress Controller foar AWS slút dit gat.

It beheart automatysk AWS-boarnen foar elke yngong yn it kluster, it meitsjen fan loadbalancers foar nije ingress-boarnen, en it wiskjen fan load balancers as boarnen wurde fuortsmiten. It brûkt CloudFormation om te soargjen dat de klusterstatus konsekwint bliuwt. It stipet ek CloudWatch-alarmynstellingen en beheart automatysk oare eleminten brûkt yn it kluster, lykas SSL-sertifikaten en EC2 Auto Scaling Groups.

Kubespray: Automatyske ynstallaasje fan Kubernetes

Kubespray automatisearret de ynstallaasje fan in produksje-klear Kubernetes-kluster, fan ynstallaasje op hardware-tsjinners oant grutte iepenbiere wolken. It brûkt Ansible (Vagrant opsjoneel) om de ynset te kickstarten en in kluster mei hege beskikberens fanôf it begjin te meitsjen mei jo kar fan netwurk-tafoegings (lykas Flannel, Calico, ensfh.) Op jo kar fan populêre Linux-distribúsje as ynstalleare op hardware-servers.

Skaffold: Iterative ûntwikkeling foar Kubernetes

Skaffold - ien fan 'e Google-ark brûkt om applikaasje-cd's yn Kubernetes te organisearjen. Sa gau as jo meitsje feroarings oan de boarne koade, detektearret skaffold automatysk dit, begjint te bouwen en ynsette, en warskôget jo as der flaters. Skaffold rint folslein oan 'e kant fan' e kliïnt, dus d'r kinne lytse nuânses wêze mei ynstallaasje of bywurkjen. It kin brûkt wurde mei besteande CICD-pipelines en ek ynteraksje mei guon eksterne build-ark, benammen Google's Bazel.

Teresa: De ienfâldichste PaaS op Kubernetes

Teresa is in applikaasje ynset systeem dat rint in ienfâldige PaaS boppe op Kubernetes. Team brûkers kinne har eigen applikaasjes ynsette en beheare. Dit makket dingen in bytsje makliker foar minsken dy't dizze applikaasje fertrouwe en net wolle omgean mei Kubernetes en al syn kompleksiteiten.

Tilt: Stream kontenerupdates nei Kubernetes-klusters

Tilt, ûntwikkele troch Windmill Engineering, sjocht feroaringen oan ferskate Dockerfiles en set dan stadichoan de passende konteners yn it Kubernetes-kluster yn. Yn essinsje lit it jo it produksjekluster yn echt tiid bywurkje troch gewoan de Dockerfiles te aktualisearjen. Tilt bout binnen it kluster, de boarnekoade is alles dat feroare wurde moat. Jo kinne ek nimme in momintopname fan de kluster steat en fange flater betingsten direkt út Tilt te dielen mei teamleden foar debuggen.

PS Al dizze ark hawwe wy ferskate kearen yn súdlike brêge probearre mei ús nijsgjirrige hannen. Om echte praktiken al (hooplik!) te presintearjen op offline yntinsiven yn febrewaris. Kubernetes Base 8-10 febrewaris 2021. En Kubernetes Mega 12-14 febrewaris. Earlik sein, wy miste ek de waarme en enerzjy beladen sfear fan offline learen. Gjin saak hoe avansearre technologyen binne, se sille net ferfange live minsklike kommunikaasje en in spesjale sfear as like-minded minsken sammelje.

Boarne: www.habr.com

Add a comment