Ez a cikk bemutat néhány fantasztikus eszközt, amelyek a Kuberneteshez kapcsolhatók, hogy további teljesítményt nyújthassanak.
Amikor DevOps-ökoszisztémában dolgozik, rá fog jönni, milyen fontos a lenyűgöző DevOps-eszközök a kézi terhelés megkönnyítése érdekében. Rengeteg DevOps eszköz áll rendelkezésre minden DevOps szakaszhoz és különböző funkciókhoz.
A Kubernetes az egyik kötelező eszköz, ha a DevOps tartományban dolgozik, és tárolókban futtatja alkalmazásait. Több száz olyan eszköz létezik, amelyek a Kubernetes-szel együttműködve további funkciókat biztosítanak. A Kubernetes-fürt jobb kezelését, biztonságát, irányítópultját, monitorozását szolgáló eszközökről beszélek.
Íme egy lista azokról a csodálatos eszközökről, amelyek több energiát adnak a Kubernetes számára.
Kezdjük el!
Tartalomjegyzék
Sisak
Sisak a Kubernetes csomagkezelője, amely megkönnyíti a nagymértékben megismételhető vagy sokféle forgatókönyvben megszokott alkalmazások és szolgáltatások átvételét, megkönnyítve azok telepítését egy tipikus Kubernetes-fürtre. A Helm segítségével megtalálhatja, megoszthatja és használhatja a Kuberneteshez készült szoftvert.
A Helm Charts nevű diagramokat használja az összetett Kubernetes-alkalmazások meghatározásához, telepítéséhez és frissítéséhez.
A sisak jellemzői:
- Gondoskodik az összes Kubernetes alkalmazás bonyolultságáról diagramok segítségével
- Frissítéseket és egyéni horgokat használ a dolgok egyszerű frissítéséhez.
- A diagramok könnyen megoszthatók nyilvános vagy privát szervereken.
- Egyszerű visszaállítás egyetlen paranccsal
- Javítja a fejlesztők termelékenységét és javítja a működési felkészültséget
Jelző
Jelző a Kubernetes progresszív kézbesítési operátora.
Automatizálja a kanári telepítések népszerűsítését az Istio, az App Mesh, az Nginx, a Linkerd, a Contour, a Gloo, a Skipper routing segítségével a forgalom eltolásához és a Prometheus segítségével a Canary elemzéséhez. A canary telepítésnél kiadja a kiadásokat a felhasználók egy kis csoportjának, teszteli, ha jól működik, akkor mindenkinek kiadja a kiadást.
A fürtben futó szolgáltatáshálót használja az egyik üzembe helyezés és a másik között folyó forgalom kezelésére. A forgalom Canaryra való átirányításához olyan teljesítménymutatókat mér, mint a kérések átlagos időtartama, a HTTP-kérelmek sikerességi aránya, a pod állapota stb.
A jelző automatizált alkalmazáselemzést, promóciót és visszaállítást futtathat számos telepítési stratégiához, például a Canary, az A/B teszteléshez, a kék/zöld telepítéshez.
Kubewatch
Kubewatch egy nyílt forráskódú Kubernetes figyelő, amely értesítést küld a laza csatornán keresztül.
A Go programozáson íródott és a Bitnami Labs fejlesztette ki. A Kubernetes-erőforrások figyelésére szolgál, és értesítést küld, ha változás történik.
Telepítheti a Kubewatch-ot a kubectl-en keresztül vagy a sisak diagramok segítségével. Egyszerűen érthető, és nagyon könnyen használható felülettel rendelkezik. A lazaságon kívül a HipChat, a Mattermost, a Flock, a webhook és az SMTP-t is támogatja.
Attól függően, hogy melyik Kuberneteset szeretné figyelni, a ConfigMap fájlban ezekhez az erőforrásokhoz igaz vagy hamis értéket állíthat be. Miután beállította a kubewatch konfigurációját és futtatott egy pod, értesítéseket fog kapni a Kubernetes eseményről, az alábbiak szerint.
Gitkube
Gitkube egy olyan eszköz, amely a git push-ot használja a Kubernetes docker-képfájlok létrehozásához és telepítéséhez. Három összetevője van – Remote, gitkube-controller, gitkubed. A Remote egyéni erőforrásokból áll, amelyeket a gitkube-controller kezel. A gitkube-controller elküldi a módosításokat a gitkubed-nek, amely ezután felépíti a docker-lemezképet, és telepíti azt.
A Gitkube jellemzői:
- Könnyen telepíthető, csatlakoztatható és játszható
- Szerepalapú hozzáférés-vezérlést biztosít a biztonság érdekében
- Egyszerű hitelesítés nyilvános kulccsal
- A többbérletes névtér támogatott
- A kubectl-n és a git-en kívül nincs extra függőség
kube-state-metrics
kube-state-metrics egy olyan szolgáltatás, amely állapotobjektum-metrikákat állít elő a Kubernetes API-kiszolgáló meghallgatásával. Különféle objektumok, például csomópontok, sorba rendezések, névterek és telepítések állapotának ellenőrzésére szolgál. Nyers, módosítatlan adatokat biztosít a Kubernetes API-ból.
Az alábbiakban a kube-state-metrics által biztosított információk találhatók:
- Cron munkák és munka állapota
- A hüvelyek állapota (kész, üzemel stb.)
- Az erőforrásigények és azok tartománya
- A csomópont kapacitása és állapota
- A replikakészletek specifikációja
Kamus
Kamus egy nyílt forráskódú GitOps eszköz, amelyet Kubernetes alkalmazások titkainak titkosítására és visszafejtésére használnak. A Kamus által használt titkosított titkokat csak a Kubernetes-fürtön futó alkalmazások tudják visszafejteni. A titkok titkosításához AES-t, Google Cloud KMS-t és Azure KeyVault-t használ. A sisak diagram segítségével kezdheti meg a Kamus használatát.
A Kamushoz két segédprogram tartozik – a Kamus CLI és a Kamus init konténer. A Kamus CLI az encrypt API-val, a Kamus init konténer pedig az API dekódolására szolgál.
A Kubernetes sima titkai nincsenek titkosítva; base64 kódolásúak. Nem tarthatod a Giten úgy, ahogy van; nem biztonságos. Bárki, aki hozzáfér a repóhoz, használhatja ezeket a titkokat. Ezért megfelelő titkosítási/visszafejtési megoldásra van szükség, mint például a Kamus. Ezenkívül fenyegetési modellt is biztosít, amely gondoskodik a fenyegetésekről és biztonságossá teszi a titkokat.
Untrak
Untrak egy nyílt forráskódú eszköz, amelyet a Kubernetesben használnak nyomon követetlen források megtalálására és szemétgyűjtésre. Segít megtalálni és törölni azokat a fájlokat a fürtből, amelyek nincsenek nyomon követve.
Miután beszúrta a jegyzékeket a CI/CD-folyamatba a kubectl apply vagy a helm sablon használatával, a Kubernetes nem tudja, hogy az objektum mikor törlődik a lerakatból. Az objektumok törlését követően a rendszer nem követi nyomon a szállítási folyamatot, és továbbra is a Kubernetes-fürtben tartózkodik.
Belsőleg végrehajtja a parancsot egy egyszerű untrak.yaml konfigurációs fájl segítségével, hogy megtudja, hogy azok az erőforrások, amelyek már nem részei a forráskód-kezelésnek.
Hatály
Weave Scope a Docker és a Kubernetes megjelenítésére, figyelésére és hibaelhárítására szolgál.
Megjeleníti a konténeres alkalmazás és a teljes infrastruktúra felülről lefelé irányuló nézetét, amely segítségével könnyedén azonosíthatja és diagnosztizálhatja a problémákat.
A mikroszolgáltatási architektúra alkalmazásainak futtatása docker-tárolókban nem olyan egyszerű. Az itt található alkatrészek nagyon dinamikusak és nehezen ellenőrizhetők. A weave hatókörrel könnyedén elháríthatja a memóriaszivárgásokat, szabályozhatja a CPU-fogyasztást, és megjelenítheti a hálózati szűk keresztmetszetek.
Hatókör jellemzői:
- Segít valós időben figyelni a dokkolókonténereket
- Könnyű navigációt biztosít a tárolókban futó folyamatok között
- A processzor- és memóriahasználatot mutatja a gazdagép vagy szolgáltatás szempontjából
- A tárolók újraindítása, leállítása vagy szüneteltetése CLI használatával anélkül, hogy elhagyná a hatókör böngészőablakát.
- Támogatja az egyéni bővítményeket, hogy további részleteket kapjon a tárolókról, folyamatokról és gazdagépekről
Kubernetes irányítópult
Kubernetes irányítópult a Kubernetes által biztosított webes felület. A Kubernetes-fürt konténeres alkalmazásának üzembe helyezésére, hibaelhárítására és kezelésére szolgál. Minden információt megad a fürtről, például részleteket a csomópontokról, névterekről, szerepekről, munkaterhelésekről stb.
A Kubernetes irányítópult üzembe helyezéséhez használhat sisakdiagramokat, vagy használhat egy egyszerű, alább említett kubectl parancsot:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.4/aio/deploy/recommended.yaml
Kops
Kops A Kubernetes műveletek rövidítése, egy nyílt forráskódú projekt, amellyel a termelésre kész Kubernetes-fürtök nagyon egyszerűen és gyorsan hozhatók létre. A Kops elsősorban a Kubernetes-fürtök AWS-en és GCE-n történő üzembe helyezésére használható.
Egy kis méretű Kubernetes-fürtöt könnyű létrehozni és karbantartani, de a fürt méretezésekor sok konfigurációt ad hozzá, és nehézkessé válik a működése. A Kops egy olyan eszköz, amely segít megoldani az ilyen problémákat. Konfigurációvezérelt megközelítést követ, ahol a fürtöt mindig naprakészen és biztonságosan tartja.
A Kops számos hálózati háttérrel is rendelkezik, és ezek közül egyet választva, a használati esettől függően, könnyen beállíthat különféle típusú fürtöket.
cAdvisor
cAdvisor egy nyílt forráskódú eszköz egy tároló figyelésére. A fürtön futó tárolók teljesítményjellemzőinek és erőforrás-használatának megértésére szolgál.
Csomópont szinten működik, és képes automatikusan felderíteni egy adott csomóponton futó összes tárolót, és összegyűjti a memóriát, a fájlrendszert, a CPU-t és a hálózati statisztikákat. Webes felületet biztosít, amely a fürt összes konténerének élő adatait mutatja.
A cAdvisor használatának megkezdéséhez futtassa a google/cadvisor docker-képet, majd egy webböngészőben elérheti a http://localhost:8080 címen.
Kubespray
Kubespray egy ingyenes eszköz, amelyet az Ansible játékkönyvek és a Kubernetes kombinálásával hoztak létre. A Kubernetes-fürt életciklus-kezeléséhez használatos.
A Kubespray használatával gyorsan telepíthet egy fürtöt, és testreszabhatja a fürt megvalósításának összes paraméterét, például a telepítési módokat, a hálózati beépülő modulokat, a DNS-konfigurációt, az összetevők verzióit, a tanúsítványgenerálási módszereket stb.
Ha csak egyetlen egyszerű, lehetséges játékkönyvet futtat, a fürt készen áll. Könnyedén méretezheti vagy frissítheti Kubernetes-fürtjét.
K9s
K9s egy nyílt forráskódú, terminálalapú eszköz, és irányítópult-segédprogramja mindent megtesz, amit a Kubernetes webes felhasználói felülete. A Kubernetes-fürtben telepített alkalmazás navigálására, megfigyelésére és kezelésére szolgál.
A K9s jellemzői:
- Kövesse nyomon a klasztert valós időben
- A kijelző testreszabása erőforrásonként
- Nagyítás a fürt erőforrásokkal kapcsolatos problémákra
- Támogatja a szerepkör alapú hozzáférés-vezérlést
- Beépített referenciaértékek az erőforrások teljesítményének ellenőrzésére
Kubetail
Kubetail egy egyszerű bash szkript, amelyet több sorba gyűjtő naplók egy adatfolyamban történő összesítésére használnak.
Nagyon hasznos!
Segít a könnyű hibakeresésben.
A legújabb Kubetail verzió kiemelési és szűrési funkciókkal is rendelkezik. Ez a funkció lehetővé teszi a naplók színezését. A homebrew használatával egyetlen paranccsal telepítheti a Kubetailt. Hozzáadhat alapértelmezett értékeket a Kubetail által beolvasható környezeti változókhoz, például KUBETAIL_NAMESPACE, KUBETAIL_TAIL, KUBETAIL_SKIP_COLORS stb.
Erőteljes Seal
Erőteljes Seal egy nyílt forráskódú, erőteljes káoszmérnöki eszköz, amelyet python nyelven írtak Kubernetes-fürtökhöz.
A káosztervezést arra használják, hogy megerősítsék a rendszert, és ellenőrizzék, mennyire képes kezelni a termelés problémás helyzeteit. A Kubernetes-fürt kudarcát okozza, hogy a lehető legkorábban azonosítsa a benne lévő problémákat.
A Netflix Chaos Monkey ihlette, és a Kubernetes ellenálló képességének javítására szolgál. A PowerfulSeal használatával a mérnökök tudatosan megpróbálják feltörni a fürt dolgokat, hogy ellenőrizzék, hogyan reagál a rendszer.
A PowerfulSeal három üzemmódban működik – autonóm, interaktív, címke.
Autonóm módban a forgatókönyveket az Ön által megadott házirendfájl beolvasásával hajtja végre. Interaktív módban azokról a fürtkomponensekről tájékoztat, amelyeket manuálisan próbál feltörni. Címke módban címkék segítségével megöli a célzott objektumokat a fürtön, például a tömböket.
Popeye
Popeye egy tisztító segédprogram, amely fertőtlenítőként működik 🧼 a Kubernetes-fürtök számára.
Átvizsgálja a teljes fürtöt, és jelentést tesz a konfigurációkkal és erőforrásokkal kapcsolatos problémákról. Segít a legjobb gyakorlatok végrehajtásában a Kubernetes-fürtön, hogy elkerülje a gyakori problémákat.
Ez a segédprogram Windows, Linux és macOS rendszerekhez érhető el. Jelenleg csak csomópontokkal, podokkal, névterekkel és szolgáltatásokkal működik. A Popeye segítségével könnyen azonosíthatja a halott és fel nem használt erőforrásokat, a portok eltéréseit, az RBAC-szabályokat, a mérőszámok kihasználtságát és még sok mást.
Következtetés
A DevOps eszközök létfontosságú szerepet játszanak a sikerben, és remélem, hogy a fentiek segítenek a Kubernetes jobb kezelésében.