11 nástrojov, vďaka ktorým je Kubernetes lepší

11 nástrojov, vďaka ktorým je Kubernetes lepší

Nie všetky serverové platformy, dokonca ani tie najvýkonnejšie a škálovateľné, uspokoja všetky potreby tak, ako sú. Aj keď Kubernetes funguje skvele sám o sebe, na dokončenie mu môžu chýbať správne časti. Vždy nájdete špeciálny prípad, ktorý ignoruje vašu potrebu, alebo kde Kubernetes nebude fungovať pri predvolenej inštalácii, ako je napríklad podpora databázy alebo operácia CD.

Tu sa objavujú doplnky, rozšírenia a ďalšie vychytávky pre tento kontajnerový orchestrátor podporované najširšou komunitou. V tomto článku bude 11 najlepších vecí, ktoré sme našli. My sami v Southbridge sú veľmi zaujímavé a plánujeme sa im venovať prakticky - rozobrať ich na skrutky a matice a pozrieť sa, čo je vo vnútri. Niektoré z nich dokonale doplnia akýkoľvek klaster Kubernetes, zatiaľ čo iné pomôžu vyriešiť konkrétne úlohy, ktoré nie sú implementované v typickej distribúcii Kubernetes.

Gatekeeper: riadenie politiky

Projekt Otvorte Policy Agent (OPA) poskytuje možnosť vytvárať politiky nad balíkmi cloudových aplikácií v Kubernetes, od vstupu až po sieť služieb. Gatekeeper poskytuje Kubernetes natívnu schopnosť automaticky presadzovať politiky v klastri a tiež poskytuje kontrolu akýchkoľvek udalostí alebo zdrojov, ktoré porušujú pravidlá. Toto všetko má na starosti relatívne nový mechanizmus Kubernetes, správca prijímania Webhooks, ktorý sa spustí pri zmene zdrojov. S Gatekeeperom sa politiky OPA stanú ďalšou súčasťou stavu vášho klastra Kubernetes bez potreby neustáleho dohľadu.

Gravitácia: Prenosný klaster Kubernetes

Ak chcete zaviesť aplikáciu do Kubernetes, mnohé aplikácie majú graf Helm, ktorý vedie a automatizuje tento proces. Ale čo ak chcete vziať svoj klaster Kubernetes „tak, ako je“ a zaviesť ho niekde inde?

Gravitácie vytvára snímky klastrov Kubernetes, ich registra pre obrázky kontajnerov, ako aj spustených aplikácií nazývaných „aplikačné balíčky“. Taký balík, čo je obyčajný súbor .tar, môže replikovať klaster všade, kde sa dá spustiť Kubernetes.

Gravity tiež kontroluje, či sa cieľová infraštruktúra správa rovnako ako zdrojová infraštruktúra a tiež či je na cieli dostupné prostredie Kubernetes. Platená verzia Gravity tiež pridáva funkcie zabezpečenia, vrátane RBAC a možnosti synchronizácie nastavení zabezpečenia v rámci rôznych nasadení klastra.

Najnovšie hlavné vydanie, Gravity 7, môže vložiť obrázok Gravity do existujúceho klastra Kubernetes namiesto toho, aby z obrázka vytvoril úplne nový klaster. Gravity 7 môže pracovať aj s klastrami nainštalovanými bez použitia obrazu Gravity. Gravity tiež podporuje SELinux a natívne funguje s bránou Teleport SSH.

Kaniko: Budovanie kontajnerov v klastri Kubernetes

Väčšina obrázkov kontajnerov je postavená na systémoch mimo zásobníka kontajnerov. Niekedy však potrebujete vytvoriť obraz v hromade kontajnerov, napríklad niekde v spustenom kontajneri alebo v klastri Kubernetes.

Kaniko vytvára kontajnery v prostredí kontajnerov, ale bez závislosti od kontajnerovej služby, ako je napríklad Docker. Namiesto toho Kaniko extrahuje súborový systém zo základného obrazu, vykoná všetky príkazy na zostavenie používateľského priestoru nad extrahovaným súborovým systémom, pričom po každom príkaze urobí snímku systému súborov.

Poznámka: Kaniko je momentálne (máj 2020, približne. prekladateľ) nedokáže zostaviť kontajnery Windows.

Kubecost: Možnosti štartovacích nákladov Kubernetes

Väčšina nástrojov na správu Kubernetes sa zameriava na jednoduché používanie, monitorovanie, pochopenie správania vo vnútri modulu atď. Ale čo sledovanie nákladov - v rubľoch a kopejkách - spojených so spustením Kubernetes?

Kubecost spracováva parametre Kubernetes v reálnom čase, výsledkom čoho sú aktuálne informácie o nákladoch z prevádzkovaných klastrov u hlavných poskytovateľov cloudu, zobrazené na paneli s mesačnými nákladmi na klaster. Ceny za RAM, CPU, GPU a diskový subsystém sú rozdelené podľa komponentov Kubernetes (kontajner, pod, služba atď.)

Kubecost tiež sleduje náklady na neklastrové zdroje, ako sú vedrá Amazon S3, hoci je to obmedzené AWS. Údaje o nákladoch môžu byť odoslané do Prometheus, takže ich môžete použiť na zmenu správania klastra programovo.

Kubecost je zadarmo na použitie, ak máte dostatok 15-dňových údajov denníka. Pokiaľ ide o ďalšie funkcie, cena začína na 199 USD mesačne za monitorovanie 50 uzlov.

KubeDB: Spustenie bojových databáz v Kubernetes

Spustenie databáz v Kubernetes je tiež dosť ťažké. Operátory Kubernetes nájdete pre MySQL, PostgreSQL, MongoDB a Redis, ale všetky majú nevýhody. Typická sada funkcií Kubernetes tiež priamo nerieši väčšinu definovaných problémov s databázou.

KubeDB vám pomôže vytvoriť príkazy Kubernetes na správu databázy. Spúšťanie záloh, klonovanie, monitorovanie, snímky a vytváranie deklaratívnej databázy sú jeho súčasťou. Všimnite si, že podpora funkcií závisí od databázy. Napríklad vytvorenie klastra funguje pre PostgreSQL, ale nie pre MySQL ( existuje, ako bolo správne zdôraznené dnbstd, približne. prekladateľ).

Kube-monkey: Chaos Monkey pre Kubernetes

Za najviac bezchybnú metódu záťažového testovania sa považujú náhodné poruchy. Táto teória je jadrom Chaos Monkey od Netflixu, chaotického inžinierskeho nástroja, ktorý náhodne vypína virtuálne stroje a kontajnery produkčného prostredia, aby „podnecoval“ vývojárov k budovaniu odolnejších systémov. kube-opica - implementácia rovnakej základnej teórie stresového testovania pre klastre Kubernetes. Funguje to tak, že náhodne zabíja moduly v klastri, ktorý určíte, a dá sa nastaviť aj na spustenie v určitom časovom intervale.

Kubernetes Ingress Controller pre AWS

Kubernetes poskytuje externý nástroj na vyrovnávanie zaťaženia a sieťové služby klastra prostredníctvom služby tzv Ingress AWS poskytuje funkcie vyrovnávania záťaže, ale automaticky ich nespája s rovnakými funkciami Kubernetes. Kubernetes Ingress Controller pre AWS uzatvára túto medzeru.

Automaticky spravuje zdroje AWS pre každý vstup v klastri, vytvára nástroje na vyrovnávanie zaťaženia pre nové zdroje vstupu a odstraňuje nástroje na vyrovnávanie zaťaženia pri odstránení zdrojov. Používa CloudFormation, aby sa ubezpečil, že stav klastra zostane konzistentný. Podporuje tiež nastavenia CloudWatch Alarm a automaticky spravuje ďalšie prvky používané v klastri, ako sú certifikáty SSL a skupiny EC2 Auto Scaling.

Kubespray: Automatická inštalácia Kubernetes

Kubespray automatizuje inštaláciu produkčného klastra Kubernetes, od inštalácie na hardvérové ​​servery až po veľké verejné cloudy. Používa Ansible (voliteľné Vagrant) na spustenie nasadenia a vytvorenie klastra s vysokou dostupnosťou od nuly s výberom sieťových doplnkov (ako Flannel, Calico atď.) na obľúbenej distribúcii Linuxu podľa vášho výberu pri inštalácii na hardvérové ​​servery.

Skaffold: Iteračný vývoj pre Kubernetes

Skaffold - jeden z nástrojov Google, ktorý sa používa na organizáciu aplikačných CD v Kubernetes. Hneď ako vykonáte zmeny v zdrojovom kóde, skaffold to automaticky zistí, začne zostavovať a nasadzovať a upozorní vás, ak sa vyskytnú nejaké chyby. Skaffold beží úplne na strane klienta, takže pri inštalácii alebo aktualizácii môžu existovať malé nuansy. Dá sa použiť s existujúcimi kanálmi CICD, ako aj spolupracovať s niektorými externými nástrojmi na zostavovanie, najmä Bazel od spoločnosti Google.

Teresa: Najjednoduchší PaaS na Kubernetes

Teresa je to systém nasadzovania aplikácií, ktorý prevádzkuje jednoduchý PaaS nad Kubernetes. Tímoví používatelia môžu nasadzovať a spravovať svoje vlastné aplikácie. To trochu uľahčuje prácu ľuďom, ktorí tejto aplikácii dôverujú a nechcú sa zaoberať Kubernetes a všetkými jeho zložitosťami.

Naklonenie: Streamujte aktualizácie kontajnerov do klastrov Kubernetes

Nakloniť, vyvinutý spoločnosťou Windmill Engineering, monitoruje zmeny v rôznych súboroch Dockerfiles a potom postupne nasadzuje príslušné kontajnery do klastra Kubernetes. V podstate vám umožňuje aktualizovať produkčný klaster v reálnom čase jednoducho aktualizáciou súborov Dockerfiles. Tilt sa vytvára vo vnútri klastra, zdrojový kód je všetko, čo je potrebné zmeniť. Môžete tiež urobiť snímku stavu klastra a zachytiť chybové stavy priamo z Tilt a zdieľať ich s členmi tímu na ladenie.

PS Všetky tieto nástroje máme opakovane v Southbridge sondované našimi zvedavými rukami. Prezentovať reálne postupy už (dúfajme!) na offline intenzívnych podujatiach vo februári. Základňa Kubernetes 8. – 10. februára 2021. A Kubernetes Mega 12.–14. februára. Úprimne, chýbala nám aj hrejivá a energiou nabitá atmosféra offline učenia. Bez ohľadu na to, aké vyspelé sú technológie, nenahradia živú ľudskú komunikáciu a špeciálnu atmosféru, keď sa stretnú podobne zmýšľajúci ľudia.

Zdroj: hab.com

Pridať komentár