Supraalimentați Kubernetes cu aceste instrumente minunate

Acest articol vă va prezenta câteva instrumente minunate care pot fi cuplate cu Kubernetes pentru a-i adăuga mai multă putere.

Când lucrați într-un ecosistem DevOps, vă veți da seama cât de important este să aveți instrumente DevOps uimitoare pentru a vă ușura încărcarea manuală. O mulțime de instrumente DevOps sunt disponibile pentru fiecare etapă DevOps și diferite funcționalități.

Kubernetes este unul dintre elementele obligatorii dacă lucrați în domeniul DevOps și rulați aplicațiile în containere. Există sute de instrumente care funcționează împreună cu Kubernetes pentru a adăuga mai multe funcții. Vorbesc despre instrumente pentru un management mai bun, securitate, tablou de bord, monitorizare a clusterului Kubernetes.

Iată o listă cu astfel de instrumente uimitoare care adaugă mai multă putere Kubernetes.

Să începem!

Cârma

Cârma este un manager de pachete pentru Kubernetes, care facilitează preluarea aplicațiilor și serviciilor care sunt foarte repetabile sau utilizate în multe scenarii diferite, facilitând implementarea lor într-un cluster Kubernetes tipic. Folosind Helm, puteți găsi, partaja și utiliza software-ul creat pentru Kubernetes.

Folosește diagrame, numite Helm Charts pentru a defini, instala și actualiza aplicațiile Kubernetes complexe.

Caracteristici ale cârmei:

  • Se ocupă de toată complexitatea aplicației Kubernetes folosind diagrame
  • Utilizează upgrade-uri și cârlige personalizate pentru a actualiza lucrurile cu ușurință.
  • Diagramele pot fi partajate cu ușurință pe servere publice sau private.
  • Rollback ușor cu o singură comandă
  • Îmbunătățește productivitatea dezvoltatorului și îmbunătățește pregătirea operațională

Flagger

Flagger este un operator de livrare progresivă pentru Kubernetes.

Automatizează promovarea implementărilor Canary folosind Istio, App Mesh, Nginx, Linkerd, Contour, Gloo, rutarea Skipper pentru schimbarea traficului și Prometheus pentru analiza canary. În implementarea Canary, lansați versiunile unui grup mic de utilizatori, îl testați, dacă funcționează bine, lansați versiunea pentru toată lumea.

Utilizează rețeaua de servicii care rulează în clusterul dvs. pentru a gestiona traficul care trece între o implementare și alta. Pentru a transfera traficul către Canary, măsoară indicatori de performanță cum ar fi durata medie a solicitărilor, rata de succes a solicitărilor HTTP, sănătatea podului etc.

Flagger poate rula analiza automată a aplicațiilor, promovarea și rollback-ul pentru mai multe strategii de implementare precum Canary, testare A/B, implementare Blue/Green.

Kubewatch

Kubewatch este un observator Kubernetes cu sursă deschisă care trimite o notificare prin canalul slack.

Este scris pe programarea Go și dezvoltat de Bitnami Labs. Este folosit pentru a monitoriza resursele Kubernetes și anunță dacă există vreo modificare.

Puteți instala Kubewatch prin kubectl sau utilizând diagrame helm. Este simplu de înțeles și are o interfață foarte ușor de utilizat. În afară de slack, acceptă și HipChat, Mattermost, Flock, webhook și SMTP.

În funcție de Kubernetes pe care doriți să îl monitorizați, puteți seta adevărat sau fals pentru acele resurse în fișierul ConfigMap. După ce setați configurația kubewatch și rulați un pod, veți începe să primiți notificări cu privire la evenimentul Kubernetes, așa cum se arată mai jos.

  9 cele mai bune editori video open source care merită încercate

Gitkube

Gitkube este un instrument care folosește git push pentru construirea și implementarea imaginilor docker pe Kubernetes. Are trei componente – Telecomanda, gitkube-controller, gitkubed. Remote constă din resurse personalizate care sunt gestionate de gitkube-controller. gitkube-controller trimite modificările către gitkubed, care apoi construiește imaginea docker și o implementează.

Caracteristicile Gitkube:

  • Ușor de instalat, plug and play
  • Oferă control al accesului bazat pe roluri pentru securitate
  • Simplu de autentificat folosind o cheie publică
  • Este acceptat un spațiu de nume pentru multi-tenancy
  • Fără dependențe suplimentare în afară de kubectl și git

metrica-state-kube

metrica-state-kube este un serviciu care generează valori ale obiectelor de stare ascultând serverul API Kubernetes. Este folosit pentru a verifica starea diferitelor obiecte, cum ar fi noduri, poduri, spații de nume și implementări. Vă oferă date brute, nemodificate din API-ul Kubernetes.

Mai jos sunt informațiile furnizate de kube-state-metrics:

  • Locuri de muncă Cron și starea postului
  • Starea podurilor (gata, în funcțiune etc.)
  • Cererile de resurse și gama acesteia
  • Capacitatea nodului și starea acestuia
  • Specificații seturi de replici

Kamus

Kamus este un instrument GitOps open-source care este utilizat pentru criptarea și decriptarea secretelor pentru aplicațiile Kubernetes. Secretele criptate pe care le face Kamus pot fi decriptate numai de aplicațiile care rulează pe clusterul Kubernetes. Utilizează AES, Google Cloud KMS, Azure KeyVault pentru criptarea secretelor. Puteți începe cu Kamus folosind diagrama cârmă.

Kamus vine cu două utilități – Kamus CLI și Kamus init container. Kamus CLI este utilizat pentru integrarea cu criptarea API-ului, iar containerul Kamus init este folosit pentru integrarea cu decriptarea API-ului.

Secretele Kubernetes simple nu sunt criptate; sunt codificate în bază64. Nu îl puteți păstra pe Git așa cum este; nu este sigur. Oricine are acces la repo va putea folosi aceste secrete. Prin urmare, este necesară o soluție adecvată de criptare/decriptare, cum ar fi Kamus. De asemenea, oferă un model de amenințare care se ocupă de amenințări și asigură securitatea secretelor.

Untrak

Untrak este un instrument open-source care se folosește în Kubernetes pentru a găsi resurse neurmărite și a le colecta gunoiul. Vă ajută să găsiți și să ștergeți acele fișiere din cluster, care nu sunt urmărite.

După ce injectați manifestele în conducta CI/CD folosind kubectl apply sau șablonul Helm, Kubernetes nu știe când obiectul va fi șters din depozit. Odată ce obiectele sunt șterse, acestea nu sunt urmărite în procesul de livrare și încă locuiesc în cluster-ul Kubernetes.

Execută comanda intern folosind un fișier de configurare simplu untrak.yaml pentru a afla resurse care nu mai fac parte din gestionarea codului sursă.

  Cum să vă conectați la contul Samsung pe televizor

Domeniul de aplicare

Weave Scope este pentru vizualizarea, monitorizarea și depanarea Docker și Kubernetes.

Vă arată o vedere de sus în jos a aplicației dvs. containerizate și a infrastructurii complete, cu ajutorul căreia puteți identifica cu ușurință orice probleme și le puteți diagnostica.

Rularea aplicațiilor de arhitectură de microservicii în containere docker nu este atât de ușoară. Componentele de aici sunt foarte dinamice și greu de monitorizat. Cu weave scope, puteți depana cu ușurință pierderile de memorie și puteți controla consumul CPU, puteți vizualiza blocajele rețelei.

Caracteristicile domeniului:

  • Vă ajută să vă monitorizați containerele docker în timp real
  • Oferă o navigare ușoară între procesele care rulează în containere
  • Afișează utilizarea procesorului și a memoriei în ceea ce privește gazda sau serviciul
  • Reporniți, opriți sau întrerupeți containerele folosind CLI fără a părăsi fereastra browser-ului domeniului.
  • Acceptă pluginuri personalizate pentru a obține mai multe detalii despre containere, procese și gazde

Tabloul de bord Kubernetes

Tabloul de bord Kubernetes este o interfață web furnizată de Kubernetes. Este folosit pentru a implementa, depana și gestiona aplicația containerizată pe un cluster Kubernetes. Oferă toate informațiile despre un cluster, cum ar fi detalii despre noduri, spații de nume, roluri, sarcini de lucru etc.

Puteți folosi diagramele helm pentru a implementa tabloul de bord Kubernetes sau puteți utiliza o comandă kubectl simplă menționată mai jos:

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

Kops

Kops reprezintă operațiuni Kubernetes, un proiect open-source folosit pentru a configura clustere Kubernetes gata de producție foarte ușor și rapid. Kops poate fi folosit pentru a implementa clustere Kubernetes pe AWS și GCE în primul rând.

Un cluster Kubernetes de dimensiuni mici este ușor de creat și întreținut, dar atunci când vă scalați clusterul, sunt adăugate o mulțime de configurații și devine dificil de gestionat operațional. Kops este un instrument care vă ajută să rezolvați astfel de probleme. Urmează o abordare bazată pe configurație în care menține clusterul mereu actualizat și în siguranță.

Kops are, de asemenea, multe backend-uri de rețea, iar alegerea unuia dintre ele, în funcție de cazul de utilizare, vă facilitează configurarea diferitelor tipuri de clustere.

cAdvisor

cAdvisor este un instrument open-source pentru monitorizarea unui container. Este folosit pentru a înțelege caracteristicile de performanță și utilizarea resurselor containerelor care rulează pe cluster.

Funcționează la nivel de nod și poate descoperi automat toate containerele care rulează pe un anumit nod și colectează memorie, sistem de fișiere, procesor și statistici de rețea. Oferă o interfață web care arată datele live ale tuturor containerelor din cluster.

Pentru a începe cu cAdvisor, trebuie să rulați imaginea docker google/cadvisor, apoi o puteți accesa la http://localhost:8080 într-un browser web.

Kubespray

Kubespray este un instrument gratuit care a fost creat prin combinarea manualelor Ansible și Kubernetes. Este folosit pentru managementul ciclului de viață al clusterului Kubernetes.

  18 date și statistici de securitate cibernetică pentru a vă face mai vigilenți (2023)

Folosind Kubespray, puteți implementa rapid un cluster și puteți personaliza toți parametrii implementării unui cluster, cum ar fi moduri de implementare, pluginuri de rețea, configurație DNS, versiuni ale componentelor, metode de generare a certificatelor etc.

Pur și simplu rulând un simplu ansible-playbook, clusterul dvs. este activ și rulează. Puteți scala sau actualiza cu ușurință clusterul dvs. Kubernetes.

K9s

K9s este un instrument open-source bazat pe terminale, iar utilitarul său de bord poate face tot ceea ce face o interfață web Kubernetes. Este folosit pentru a naviga, observa și gestiona aplicația implementată pe clusterul Kubernetes.

Caracteristicile K9s:

  • Urmăriți-vă clusterul în timp real
  • Personalizați afișarea în funcție de resursă
  • Măriți la problemele legate de resursele clusterului
  • Acceptă controlul accesului bazat pe roluri
  • Benchmarkuri încorporate pentru a valida performanța resurselor

Kubetail

Kubetail este un script bash simplu care este folosit pentru a agrega jurnalele din mai multe poduri într-un singur flux.

Foarte la îndemână!

Vă ajută să depanați cu ușurință.

Cea mai recentă versiune Kubetail are și funcții de evidențiere și filtrare. Această caracteristică vă permite să efectuați colorarea jurnalului. Folosind homebrew, puteți instala Kubetail cu o singură comandă. Puteți adăuga valori implicite în variabilele de mediu pe care Kubetail le poate citi precum KUBETAIL_NAMESPACE, KUBETAIL_TAIL, KUBETAIL_SKIP_COLORS etc.

Puternic Sigiliu

Puternic Sigiliu este un instrument de inginerie haos puternic, open source, scris în python pentru clusterele Kubernetes.

Ingineria haosului este folosită pentru a obține încrederea sistemului de a verifica capacitatea acestuia de a face față situațiilor problematice din producție. Acesta injectează eșecul clusterului Kubernetes de a identifica problemele din acesta cât mai devreme posibil.

Este inspirat de Netflix Chaos Monkey și este folosit pentru a îmbunătăți rezistența Kubernetes. Folosind PowerfulSeal, inginerii încearcă cu bună știință să spargă lucrurile din cluster pentru a verifica cum reacționează sistemul.

PowerfulSeal funcționează în trei moduri – Autonom, Interactiv, Etichetă.

În modul autonom, execută scenarii citind un fișier de politică pe care îl furnizați. În modul interactiv, vă informează despre componentele clusterului pe care încercați manual să le spargeți. În modul etichetă, ucideți obiectele vizate de pe cluster, cum ar fi podurile, folosind etichete.

Popeye

Popeye este o utilitate de curățare care acționează ca un dezinfectant 🧼 pentru clusterele Kubernetes.

Acesta va scana întregul cluster și va raporta probleme legate de configurații și resurse. Vă ajută să executați cele mai bune practici pe clusterul Kubernetes pentru a fi departe de problemele comune.

Acest utilitar este disponibil pentru Windows, Linux și macOS. În prezent, funcționează doar cu noduri, poduri, spații de nume, servicii. Folosind Popeye, puteți identifica cu ușurință resursele moarte și neutilizate, nepotrivirile de porturi, regulile RBAC, utilizarea valorilor și multe altele.

Concluzie

Instrumentele DevOps joacă un rol vital în succes și sper că cele de mai sus vă vor ajuta să gestionați mai bine Kubernetes.