Nabijte Kubernetes pomocí těchto úžasných nástrojů

Tento článek vám představí některé úžasné nástroje, které lze spojit s Kubernetes a přidat mu více výkonu.

Při práci v ekosystému DevOps si uvědomíte, jak důležité je mít úžasné nástroje DevOps, které vám usnadní manuální zatížení. Pro každou fázi DevOps a různé funkce je k dispozici spousta nástrojů DevOps.

Kubernetes je jednou z nezbytností, pokud pracujete v doméně DevOps a spouštíte své aplikace v kontejnerech. Existují stovky nástrojů, které spolupracují s Kubernetes a přidávají další funkce. Mluvím o nástrojích pro lepší správu, zabezpečení, dashboard, sledování clusteru Kubernetes.

Zde je seznam takových úžasných nástrojů, které zvyšují výkon vašeho Kubernetes.

Začněme!

Kormidlo

Kormidlo je správce balíčků pro Kubernetes, který usnadňuje používání aplikací a služeb, které jsou vysoce opakovatelné nebo je lze použít v mnoha různých scénářích, což usnadňuje jejich nasazení do typického clusteru Kubernetes. Pomocí Helmu můžete najít, sdílet a používat software, který je vytvořen pro Kubernetes.

K definování, instalaci a upgradu komplexních aplikací Kubernetes používá grafy nazývané Helm Charts.

Vlastnosti helmy:

  • Postará se o veškerou složitost aplikací Kubernetes pomocí grafů
  • Používá upgrady a vlastní háčky ke snadné aktualizaci věcí.
  • Grafy lze snadno sdílet na veřejných nebo soukromých serverech.
  • Snadné vrácení zpět pomocí jediného příkazu
  • Zlepšuje produktivitu vývojářů a zlepšuje provozní připravenost

Flagger

Flagger je operátor progresivního doručování pro Kubernetes.

Automatizuje propagaci nasazení kanárků pomocí Istio, App Mesh, Nginx, Linkerd, Contour, Gloo, Skipper routing pro přesun provozu a Prometheus pro analýzu kanárů. V nasazení Canary zavedete vydání pro malou skupinu uživatelů, otestujete to, pokud to funguje dobře, zavedete vydání pro všechny.

Používá síť služeb, která běží ve vašem clusteru, ke správě provozu, který prochází mezi jedním nasazením a druhým. Pro přesun provozu na canary měří ukazatele výkonu, jako je průměrná doba trvání požadavků, úspěšnost požadavků HTTP, stav podů atd.

Flagger může spouštět automatizovanou analýzu aplikací, propagaci a vrácení změn pro několik strategií nasazení, jako je Canary, A/B testování, Blue/Green nasazení.

Kubewatch

Kubewatch je open-source hlídač Kubernetes, který odesílá upozornění prostřednictvím kanálu slack.

Je napsán na programování Go a vyvinut společností Bitnami Labs. Používá se ke sledování zdrojů Kubernetes a upozorní, pokud dojde k nějaké změně.

Kubewatch můžete nainstalovat přes kubectl nebo pomocí grafů kormidla. Je snadno pochopitelný a má velmi snadno použitelné rozhraní. Kromě slack podporuje také HipChat, Mattermost, Flock, webhook a SMTP.

  Jak hrát Gunfire Reborn na Linuxu

V závislosti na tom, které Kubernetes chcete monitorovat, můžete pro tyto prostředky v souboru ConfigMap nastavit hodnotu true nebo false. Jakmile nastavíte konfiguraci kubewatch a spustíte modul, začnete dostávat oznámení o události Kubernetes, jak je znázorněno níže.

Gitkube

Gitkube je nástroj, který používá git push pro vytváření a nasazování dockerů na Kubernetes. Má tři komponenty – Remote, gitkube-controller, gitkubed. Remote se skládá z vlastních zdrojů, které spravuje gitkube-controller. gitkube-controller odešle změny do gitkubed, který poté vytvoří obraz dockeru a nasadí jej.

Vlastnosti Gitkube:

  • Snadná instalace, plug and play
  • Poskytuje řízení přístupu na základě rolí pro zabezpečení
  • Jednoduché ověření pomocí veřejného klíče
  • Je podporován jmenný prostor pro multi-tenancy
  • Žádné další závislosti kromě kubectl a git

kube-state-metrics

kube-state-metrics je služba, která generuje metriky stavových objektů nasloucháním serveru Kubernetes API. Používá se ke kontrole stavu různých objektů, jako jsou uzly, moduly, jmenné prostory a rozmístění. Poskytuje vám nezpracovaná, neupravená data z Kubernetes API.

Níže jsou uvedeny informace, které poskytuje kube-state-metrics:

  • Úlohy cronu a stav úlohy
  • Stav modulů (připraveno, spuštěno atd.)
  • Požadavky na zdroje a jejich rozsah
  • Kapacita uzlu a její stav
  • Specifikace sad replik

Kamus

Kamus je open-source nástroj GitOps, který se používá k šifrování a dešifrování tajemství pro aplikace Kubernetes. Šifrovaná tajemství, která Kamus dělá, mohou být dešifrována pouze aplikacemi běžícími na clusteru Kubernetes. K šifrování tajemství používá AES, Google Cloud KMS, Azure KeyVault. S Kamusem můžete začít pomocí tabulky kormidla.

Kamus je dodáván se dvěma utilitami – Kamus CLI a Kamus init kontejner. Kamus CLI se používá pro integraci s šifrovacím API a kamus init kontejner se používá pro integraci s dešifrováním API.

Prostá tajemství Kubernetes nejsou šifrována; jsou kódovány base64. Nemůžete jej ponechat na Gitu tak, jak je; není to bezpečné. Každý, kdo má přístup k repozitáři, bude moci tato tajemství používat. Proto je potřeba správné řešení šifrování/dešifrování, jako je Kamus. Poskytuje také model hrozeb, který se stará o hrozby a zajišťuje bezpečnost tajemství.

Untrak

Untrak je nástroj s otevřeným zdrojovým kódem, který se v Kubernetes používá k hledání nesledovaných zdrojů a jejich sběru odpadu. Pomůže vám najít a odstranit ty soubory z clusteru, které nejsou sledovány.

Poté, co vložíte manifesty do kanálu CI/CD pomocí šablony aplikace kubectl nebo kormidla, Kubernetes neví, kdy bude objekt smazán z úložiště. Jakmile budou objekty odstraněny, nejsou sledovány v procesu doručení a stále zůstávají v clusteru Kubernetes.

  Jak povolit a používat vertikální karty v Microsoft Edge

Provádí příkaz interně pomocí jednoduchého konfiguračního souboru untrak.yaml, aby zjistil zdroje, které již nejsou součástí správy vašeho zdrojového kódu.

Rozsah

Weave Scope je pro vizualizaci, monitorování a odstraňování problémů Docker a Kubernetes.

Ukazuje vám pohled shora dolů na vaši kontejnerovou aplikaci a kompletní infrastrukturu, pomocí které můžete snadno identifikovat jakékoli problémy a diagnostikovat je.

Spouštění aplikací architektury mikroslužeb v kontejnerech dockerů není tak snadné. Komponenty jsou zde velmi dynamické a obtížně sledovatelné. S rozsahem weave můžete snadno odstraňovat problémy s úniky paměti a řídit spotřebu CPU a vizualizovat úzká hrdla sítě.

Vlastnosti rozsahu:

  • Pomáhá vám monitorovat kontejnery dokovacích stanic v reálném čase
  • Poskytuje snadnou navigaci mezi procesy běžícími v kontejnerech
  • Zobrazuje využití procesoru a paměti hostitelem nebo službou
  • Restartujte, zastavte nebo pozastavte kontejnery pomocí CLI, aniž byste opustili okno prohlížeče rozsahu.
  • Podporuje vlastní pluginy pro získání více podrobností o kontejnerech, procesech a hostitelích

Kubernetes Dashboard

Kubernetes Dashboard je webové rozhraní poskytované společností Kubernetes. Používá se k nasazení, řešení problémů a správě kontejnerizované aplikace v clusteru Kubernetes. Poskytuje všechny informace o clusteru, jako jsou podrobnosti o uzlech, jmenných prostorech, rolích, pracovní zátěži atd.

K nasazení řídicího panelu Kubernetes můžete použít grafy kormidla nebo použít jednoduchý příkaz kubectl uvedený níže:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.4/aio/deploy/recommended.yaml

Kops

Kops je zkratka pro Kubernetes Operations, open-source projekt používaný k velmi snadnému a rychlému nastavení produkčních clusterů Kubernetes. Kops lze použít k nasazení clusterů Kubernetes primárně na AWS a GCE.

Malý cluster Kubernetes se snadno vytváří a udržuje, ale když škálujete svůj cluster, přidá se spousta konfigurací a bude obtížné provozně spravovat. Kops je nástroj, který vám pomůže takové problémy vyřešit. Dodržuje přístup řízený konfigurací, kdy udržuje cluster vždy aktuální a bezpečný.

Kops má také mnoho síťových backendů a výběr jednoho z nich v závislosti na případu použití vám usnadní nastavení různých typů clusterů.

cPoradce

cPoradce je open-source nástroj pro monitorování kontejneru. Používá se k pochopení výkonnostních charakteristik a využití prostředků kontejnerů běžících v clusteru.

Funguje na úrovni uzlu a dokáže automaticky objevit všechny kontejnery běžící na konkrétním uzlu a shromažďuje statistiky paměti, souborového systému, CPU a sítě. Poskytuje webové rozhraní, které zobrazuje aktuální data všech kontejnerů v clusteru.

Chcete-li začít s cAdvisorem, musíte spustit jeho docker image google/cadvisor a poté k němu můžete přistupovat na adrese http://localhost:8080 ve webovém prohlížeči.

  Jak vytvářet ankety ve skupinových chatech iMessage na iPhone a iPad

Kubespray

Kubespray je bezplatný nástroj, který byl vytvořen kombinací Ansible playbooks a Kubernetes. Používá se pro správu životního cyklu clusteru Kubernetes.

Pomocí Kubespray můžete rychle nasadit cluster a přizpůsobit všechny parametry implementace clusteru, jako jsou režimy nasazení, síťové pluginy, konfigurace DNS, verze komponent, metody generování certifikátů atd.

Pouhým spuštěním jednoho jednoduchého ansible-playbooku je váš cluster v provozu. Svůj cluster Kubernetes můžete snadno škálovat nebo upgradovat.

K9s

K9s je terminálový nástroj s otevřeným zdrojovým kódem a jeho nástroj na řídicím panelu dokáže vše, co webové uživatelské rozhraní Kubernetes. Používá se k navigaci, sledování a správě aplikace nasazené v clusteru Kubernetes.

Vlastnosti K9:

  • Sledujte svůj cluster v reálném čase
  • Přizpůsobte zobrazení podle zdroje
  • Přibližte si problémy se zdroji clusteru
  • Podporuje řízení přístupu na základě rolí
  • Vestavěné benchmarky pro ověření výkonu zdrojů

Kubetail

Kubetail je jednoduchý bash skript, který se používá k agregaci protokolů z více podů v jednom proudu.

Velmi šikovný!

Pomůže vám to snadno ladit.

Nejnovější verze Kubetail má také funkce zvýrazňování a filtrování. Tato funkce umožňuje provádět barvení protokolu. Pomocí homebrew můžete nainstalovat Kubetail jediným příkazem. Můžete přidat výchozí hodnoty do proměnných prostředí, které může Kubetail číst, jako je KUBETAIL_NAMESPACE, KUBETAIL_TAIL, KUBETAIL_SKIP_COLORS atd.

Výkonné těsnění

Výkonné těsnění je open-source, výkonný nástroj pro inženýrství chaosu napsaný v pythonu pro clustery Kubernetes.

Chaos engineering se používá k získání důvěry systému při kontrole jeho schopnosti řešit problematické situace ve výrobě. Vkládá selhání do clusteru Kubernetes, aby v něm co nejdříve identifikoval problémy.

Je inspirován Netflix Chaos Monkey a používá se ke zlepšení odolnosti Kubernetes. Pomocí PowerfulSeal se inženýři vědomě snaží rozbít věci na clusteru, aby zkontrolovali, jak systém reaguje.

PowerfulSeal pracuje ve třech režimech – Autonomní, Interaktivní, Label.

V autonomním režimu spouští scénáře čtením souboru zásad, který poskytnete. V interaktivním režimu vás informuje o komponentách clusteru, které se ručně pokoušíte rozbít. V režimu štítků zabíjíte cílené objekty v clusteru, jako jsou lusky, pomocí štítků.

Popeye

Popeye je čisticí nástroj, který funguje jako dezinfekce 🧼 pro clustery Kubernetes.

Prohledá celý cluster a ohlásí problémy související s konfiguracemi a prostředky. Pomáhá vám provádět osvědčené postupy v clusteru Kubernetes, abyste se vyhnuli běžným problémům.

Tento nástroj je k dispozici pro Windows, Linux a macOS. V současné době funguje pouze s nody, pody, jmennými prostory, službami. Pomocí Popeye můžete snadno identifikovat mrtvé a nevyužité zdroje, neshody portů, pravidla RBAC, využití metrik a mnoho dalšího.

Závěr

Nástroje DevOps hrají zásadní roli v úspěchu a doufám, že výše uvedené vám pomohou lépe spravovat Kubernetes.