11 verktyg som gör Kubernetes bÀttre

11 verktyg som gör Kubernetes bÀttre

Inte alla serverplattformar, inte ens de mest kraftfulla och skalbara, uppfyller alla behov precis som de Ă€r. Även om Kubernetes fungerar utmĂ€rkt pĂ„ egen hand, kan det sakna nödvĂ€ndiga delar för att vara komplett. Du kommer alltid att hitta ett specialfall som ignorerar ditt behov, eller dĂ€r Kubernetes inte fungerar med standardinstallationen — till exempel databassupport eller belastningsbalansering.

HĂ€r kommer tillĂ€gg, utvidgningar och andra nödvĂ€ndigheter för denna containerorkestrator, som stöds av ett stort samhĂ€lle. I den hĂ€r artikeln kommer vi att visa 11 av de bĂ€sta verktyg som vi har hittat. Vi sjĂ€lva tycker de Ă€r Southbridge mycket intressanta, och vi planerar att utforska dem praktiskt — plocka isĂ€r dem och se vad som finns inuti. Vissa av dem kommer att komplettera vilken Kubernetes-kluster som helst, medan andra kommer att hjĂ€lpa till att lösa specifika problem som inte har behandlats i standardleveransen av Kubernetes.

Gatekeeper: hantering av policyer

Projektet Open Policy Agent (OPA) erbjuder möjligheten att skapa policyer ovanpÄ molnstackar av applikationer i Kubernetes, frÄn ingress till service mesh. Gatekeeper ger Kubernetes en nativ möjlighet till automatisk tvingande av policyer i klustret, samt ger en kontroll av hÀndelser eller resurser som bryter mot policyn. Allt detta hanteras av en relativt ny mekanism i Kubernetes, en Ätkomsthanterare baserat pÄ Webhooks, som aktiveras vid Àndringar av resurser. Med Gatekeeper blir OPA-policyer en del av tillstÄndet för ditt Kubernetes-kluster, utan att behöva kontinuerlig övervakning.

Gravity: BĂ€rbara Kubernetes-kluster

Om du vill distribuera en applikation i Kubernetes sÄ har mÄnga applikationer ett Helm-charts som styr och automatiserar denna process. Men vad hÀnder om du vill ta ditt Kubernetes-kluster "som det Àr" och distribuera det nÄgon annanstans?

Gravity tar snapshots av tillstÄndet för Kubernetes-kluster, deras registry för containerbilder, samt körda applikationer som kallas "applikationspaket". Ett sÄdant paket, som Àr en vanlig fil .tar, kan replikera klustret överallt dÀr Kubernetes kan köras.

Gravity kontrollerar ocksÄ att den mÄl-infrastrukturen fungerar pÄ samma sÀtt som den ursprungliga, samt att Kubernetes-miljön pÄ mÄlet Àr tillgÀnglig. Den betalda versionen av Gravity lÀgger ocksÄ till sÀkerhetsfunktioner, inklusive RBAC och möjligheten att synkronisera sÀkerhetsinstÀllningar över olika klusterutplaceringar.

Den senaste huvudversionen, Gravity 7, kan rulla ut en Gravity-image i ett befintligt Kubernetes-kluster, istÀllet för att sÀtta upp ett helt nytt kluster frÄn en bild. Gravity 7 kan ocksÄ fungera med kluster som har installerats utan att anvÀnda Gravity-bilden. Dessutom stöder Gravity SELinux och arbetar nativt med Teleport SSH-gateway.

Kaniko: Bygga containrar i Kubernetes-klustret

De flesta containerbilder byggs pÄ system utanför containerstacken. Men ibland behöver man bygga en bild inom containerstacken, till exempel nÄgonstans i en aktiv container, eller i ett Kubernetes-kluster.

Kaniko bygger containrar inuti containeromgivningen, men utan att vara beroende av en containeriseringstjÀnst, som Docker. IstÀllet extraherar Kaniko filsystemet frÄn den underliggande bilden, utför alla byggkommandon i anvÀndarutrymme ovanpÄ det extraherade filsystemet, och gör en avstÀllning av filsystemet efter varje kommando.

Observera: Kaniko kan för nÀrvarande (maj 2020) inte bygga Windows-containrar. översÀttarens anm.) kan inte samla Windows-containrar.

Kubecost: Kostnadsalternativ för körning av Kubernetes

De flesta Kubernetes-administrationsverktyg Ă€r fokuserade pĂ„ anvĂ€ndarvĂ€nlighet, övervakning, förstĂ„else av beteendet inne i pods, etc. Men vad sĂ€gs om att övervaka kostnaden — i kronor och ören — kopplad till driften av Kubernetes?

Kubecost hanterar Kubernetes-parametrar i realtid, vilket ger information om aktuella kostnader frÄn aktiva kluster hos de stora molnleverantörerna, som visas pÄ en panel med mÄnadsvis kostnad för varje kluster. Priser för RAM, CPU, GPU och disk under komponenterna i Kubernetes (container, pod, tjÀnst, etc.) bryts ner.

Kubecost spÄrar ocksÄ kostnader för resurser utanför klustret, som Amazon S3-buckets, Àven om den Àr begrÀnsad till AWS. Kostnadsdata kan skickas till Prometheus, sÄ att du kan anvÀnda dem för att programmÀssigt Àndra klusterbeteendet.

Kubecost Àr gratis att anvÀnda om du nöjer dig med loggdata i 15 dagar. För ytterligare funktioner börjar priserna pÄ 199$ per mÄnad för övervakning av 50 noder.

KubeDB: Kör produktionsdatabaser i Kubernetes

Databaser Àr ocksÄ ganska svÄra att köra effektivt i Kubernetes. Du hittar Kubernetes-operatörer för MySQL, PostgreSQL, MongoDB och Redis, men alla har deras nackdelar. Dessutom tillÄter den typiska uppsÀttningen av Kubernetes-funktioner inte att de flesta specifika problem med databaser löses direkt.

KubeDB hjÀlper dig att skapa dina egna Kubernetes-operatörer för att hantera databaser. Att köra sÀkerhetskopior, kloning, övervakning, snapshots och deklarativ databasstruktur Àr dess bestÄndsdelar. Observera att stödet för funktioner beror pÄ databasen. Till exempel fungerar kluster skapande för PostgreSQL, men inte för MySQL (redan som rÀtt pÄpekats dnbstd, översÀttarens anm.).

Kube-monkey: Chaos Monkey för Kubernetes

Det mest tillförlitliga sÀttet att stress-testa anses vara slumpmÀssiga fel. Denna teori ligger till grund för Chaos Monkey frÄn Netflix, ett kaotiskt ingenjörsverktyg som slumpmÀssigt stÀnger av virtuella maskiner och containrar i produktionsmiljön för att "stimulerar" utvecklare att skapa mer robusta system. Kube-monkey Àr en implementering av samma grundlÀggande teori om stress-testning för Kubernetes-kluster. Det fungerar genom att slumpmÀssigt döda moduler i klustret som du tilldelar, och kan ocksÄ stÀllas in för att köras under en viss tidsperiod.

Kubernetes Ingress Controller för AWS

Kubernetes tillhandahÄller en extern belastningsbalanserare och nÀtverkstjÀnster för kluster genom en tjÀnst kallad Ingress AWS erbjuder belastningsbalanseringsfunktioner men kopplar dem inte automatiskt till liknande möjligheter i Kubernetes. Kubernetes Ingress Controller för AWS fyller detta gap.

Det hanterar automatiskt AWS-resurser för varje ingress-objekt i klustret, skapar belastningsbalanserare för nya ingress-resurser och tar bort belastningsbalanserare nÀr resurser tas bort. Det anvÀnder CloudFormation för att sÀkerstÀlla att klustrets tillstÄnd förblir intakt. Det stödjer ocksÄ instÀllningar för CloudWatch Alarm och hanterar automatiskt andra element som anvÀnds i klustret, som SSL-certifikat och EC2 Auto Scaling Groups.

Kubespray: Automatisk installation av Kubernetes

Kubespray automatiserar installationen av en produktionsklar Kubernetes-kluster, som börjar med installation pÄ "hÄrdvara" och slutar med större offentliga moln. Den anvÀnder Ansible (Vagrant - tillÀgg) för att initiera distributionen och skapa en hög tillgÀnglig kluster frÄn grunden med det valda nÀtverks-tillÀgget (till exempel Flannel, Calico och andra) pÄ den valda populÀra Linux-distributionen vid installation pÄ "hÄrdvara".

Skaffold: Iterativ utveckling för Kubernetes

Skaffold – ett av Googles verktyg som anvĂ€nds för att organisera CD-applikationer i Kubernetes. SĂ„ snart du gör Ă€ndringar i kĂ€llkoden, upptĂ€cker Skaffold detta automatiskt, startar bygget och distributionen, och varnar dig om det finns nĂ„gra fel. Skaffold körs helt pĂ„ klientsidan, sĂ„ det kan finnas vissa nyanser med installation eller uppdatering. Den kan anvĂ€ndas med befintliga CICD-pipelines och ocksĂ„ interagera med vissa externa byggverktyg, frĂ€mst Bazel frĂ„n Google.

Teresa: Den enklaste PaaS pÄ Kubernetes

Teresa Àr ett system för applikationsdistribution som kör den enklaste PaaS ovanpÄ Kubernetes. AnvÀndare, uppdelade i team, kan distribuera och hantera sina egna applikationer. Detta gör det nÄgot enklare för mÀnniskor som litar pÄ denna applikation och inte vill hantera Kubernetes och dess alla komplexiteter.

Tilt: Strömmande distributionsuppdateringar till Kubernetes-kluster

Tilt, utvecklad av Windmill Engineering, övervakar förÀndringar i olika Dockerfile-filer och distribuerar sedan gradvis lÀmpliga containrar till Kubernetes-klustret. I princip möjliggör den uppdatering av produktionsklustret i realtid genom att helt enkelt uppdatera Dockerfile-filerna. Tilt bygger internt i klustret, kÀllkoden - allt du behöver Àndra. Du kan ocksÄ skapa en skiss av klustrets tillstÄnd och fÄnga felaktiga utlösningsvillkor direkt frÄn Tilt, för att dela dem med teammedlemmar för avbuggning.

P.S. Vi har upprepade gĂ„nger testat alla dessa verktyg med vĂ„ra nyfikna hĂ€nder. Southbridge För att representera verkliga praktiker redan (förhoppningsvis!) pĂ„ offline-intensiven i februari. Kubernetes Grund 8–10 februari 2021. Och Kubernetes Mega 12–14 februari. Ärligt talat, vi saknar ocksĂ„ den varma och energigivande atmosfĂ€ren av offline-utbildning. Oavsett hur avancerad teknologin Ă€r, kan den inte ersĂ€tta den personliga interaktionen och den speciella atmosfĂ€ren nĂ€r likasinnade samlas.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster