12 Werkzeuge, die Kubernetes einfacher machen

12 Werkzeuge, die Kubernetes einfacher machen

Kubernetes ist zum Standard geworden, und viele werden das bestätigen, wenn es darum geht, containerisierte Anwendungen in verschiedenen Maßstäben bereitzustellen. Aber wenn Kubernetes uns hilft, mit chaotischen und komplexen Containerlieferungen umzugehen, was wird uns dann helfen, mit Kubernetes umzugehen? Es kann auch komplex, verworren und schwer zu steuern sein.

Mit dem Wachstum und der Entwicklung von Kubernetes werden viele seiner Nuancen sicherlich innerhalb des Projekts selbst behoben. Aber einige Benutzer möchten nicht warten, bis die Arbeit mit Kubernetes einfacher wird, weshalb sie ihre eigenen Lösungen für viele der gängigen Probleme in der industriellen Nutzung von Kubernetes entwickelt haben.

N.B. Hoffentlich wird der unbekannte Fledermausvirus, der den Hund gebissen hat, der den Pangolin gebissen hat, der einen Chinesen in einer seltsamen Wendung der Umstände in Wuhan gebissen hat, wo sich das biologisches Labor der Stufe BSL-4 befindet, bis Februar abklingen, und wir werden nur noch an 2019-nCoV zurückdenken, während wir obszöne Ausdrücke verwenden. Und wir werden bereits offline durchführen können. Kubernetes Basis 8–10 Februar 2021, und Kubernetes Mega für fortgeschrittene K8s-Nutzer 12–14 Februar. Ehrlich gesagt, ich persönlich, als Redakteur, habe das Gefühl, dass ich die Aufregung, Kaffeepausen, Debatten und schwierige Fragen an die Referenten vermisse. Nun ja, oder die gesamte Welt wird im Stil der grausamsten und trashigsten Romane von Stёpa unserem Koroljow aussterben, wenn höhere Mächte müde von unseren komischen Scherzen sind wie Conchita Wurst, die Stunden des Patriarchen Kirill und der Wunsch des Papstes, die Worte des Gebets "Vater unser" zu korrigieren.

Aber zurück zur Sache.

Goldpinger: Visualisierung von Kubernetes-Clustern

Menschen sehen lieber zu. Grafiken und Diagramme erleichtern das Verständnis des großen Ganzen. Und wenn man die Größe und Komplexität eines Kubernetes-Clusters berücksichtigt, können wir dieser Eigenschaft voll ausnutzen.

Ein Projekt mit einem lustigen Namen (wahrscheinlich hat das etwas mit Agent 007 zu tun, Anm. des Übersetzers) Goldpinger, das Open Source ist und von der technischen Abteilung von Bloomberg herausgegeben wurde, ist ein einfaches Tool, das innerhalb des Kubernetes-Clusters funktioniert und eine interaktive Karte der Beziehungen zwischen den Knoten anzeigt. Normal funktionierende Knoten werden grün angezeigt, nicht funktionierende rot. Ein einfacher Klick auf einen Knoten, um mehr Details zu erfahren. Außerdem kann die API mit Swagger eingerichtet werden, um zusätzlich Berichte, Merkmale und andere Dinge hinzuzufügen.

K9s: Vollbild-Konsolenoberfläche für Kubernetes

Systemadministratoren lieben "One-Window"-Schätze. K9s Es handelt sich um eine Vollbild-Konsolenoberfläche für Kubernetes-Clusters. Damit können Sie ganz einfach Running Pods, Protokolle und Deployments durchsuchen und haben schnellen Zugriff auf die Shell. Hinweis: Sie müssen den Kubernetes-Benutzern Lesezugriff auf Benutzer- und Namensraumrechte gewähren, damit K9s korrekt funktioniert.

Kops: Konsolen-Operations für Kubernetes-Clusters

Dieses Entwicklungsteam von Kubernetes hilft Ihnen, Kubernetes-Cluster über die Kommandozeile zu verwalten. Es unterstützt Cluster, die auf AWS und GKE betrieben werden, funktioniert auch mit VMware vSphere und anderen Umgebungen. Neben der Automatisierung von Installations- und Deinstallationsprozessen kann Kops auch bei anderen Arten der Automatisierung helfen. Insbesondere kann es Konfigurationen für Terraform erstellen, mit denen Sie ein Cluster mit Terraform neu bereitstellen können.

Kubebox: Terminal-Shell für Kubernetes

Fortgeschrittene Terminal-Shell für Kubernetes, Kubebox, bietet mehr als die gute alte Shell von Kubernetes und seiner API. Unter anderem kann sie in Echtzeit die CPU- und RAM-Nutzung, die Liste von Pods, den Inhalt von Protokollen anzeigen sowie einen Einstellungseditor starten. Was mir außerdem gefiel, ist, dass sie als eigenständige Anwendung für Linux, Windows und MacOS verfügbar ist.

Kube-applier

Kube-applier wird als Kubernetes-Service installiert, erhält deklarative Konfigurationen für das Kubernetes-Cluster aus einem Git-Repository und wendet diese dann auf Pods im Cluster an. Jedes Mal, wenn Änderungen vorgenommen werden, werden sie aus dem Repository abgerufen und auf die angeforderten Pods angewendet. Es ist ein wenig ähnlich wie Scaffold von Google, funktioniert jedoch zur Verwaltung eines gesamten Clusters anstelle einer einzelnen Anwendung.

Es besteht die Möglichkeit, Änderungen an der Konfiguration planmäßig oder auf Anfrage vorzunehmen. Alle Aktionen werden protokolliert, zudem werden Kennzahlen bereitgestellt, die mit Prometheus kompatibel sind, sodass Sie immer sehen können, was das Verhalten des Clusters beeinflussen könnte.

Kube-ps1: Intelligenter Command-Line-Prompt für Kubernetes

Nein, Kube-ps1 Das ist kein Sony PlayStation Emulator für Kubernetes, obwohl das elegant wäre. Es handelt sich um eine einfache Bash-Kommandozeilen-Erweiterung, die den aktuellen Kubernetes-Kontext und den Namespace in der Eingabeaufforderung anzeigt. Kube-shell integriert dies zusammen mit vielen anderen Funktionen, aber wenn Ihnen eine einfache, intelligente Eingabeaufforderung genügt – Kube-ps1 bietet Ihnen diese mit minimalem Aufwand.

Kube-prompt

Eine weitere minimalistische, aber sehr nutzerfreundliche Modifikation der Kubernetes CLI ist Kube-prompt, mit der Sie eine interaktive Sitzung mit dem Kubernetes-Client starten können. Kube-prompt befreit Sie von der Notwendigkeit, kubectl vor jedem Befehl einzugeben, und bietet außerdem kontextbezogene Autovervollständigung für jeden Befehl.

Kubespy: Echtzeitüberwachung von Kubernetes-Ressourcen

Kubespy von Pulumi ist ein Diagnosewerkzeug, das hilft, Änderungen an Cluster-Ressourcen in Echtzeit zu debuggen. Es bietet so etwas wie ein Text-Dashboard zur Verwaltung des Geschehens. Zum Beispiel möchten Sie die Änderungen am Status des Pods seit dem Start sehen: die Definition des Pods wird in etcd geschrieben, der Pod wird für die Ausführung auf einem Knoten geplant, kubelet auf dem Knoten erstellt den Pod und schließlich wird der Pod als gestartet gekennzeichnet. Kubespy kann sowohl als eigenständiges Programm als auch als Erweiterung zu kubectl ausgeführt werden.

Kubeval: Überprüfung von Kubernetes-Konfigurationen

YAML-Konfigurationsdateien für Kubernetes können lesbar sein, aber das bedeutet nicht immer, dass sie auch überprüft werden können. Es ist leicht, ein Komma oder einen Namen zu übersehen und dies nicht zu bemerken, bis es zu spät ist. Es ist besser, Kubeval, lokal installiert oder in einer CICD-Pipeline verbunden. Kubeval nimmt die YAML-Definitionen der Kubernetes-Konfigurationen und gibt Informationen über deren Gültigkeit zurück. Es kann auch Daten im JSON- oder TAP-Format ausgeben und die Quellvorlagen analysieren, auf die die Helm-Chart-Konfigurationen verweisen, ohne dabei zusätzliche Anfragen zu stellen.

Kube-ops-view: Dashboard für mehrere Kubernetes-Cluster

Kubernetes hat bereits ein ziemlich gutes Dashboard für allgemeine Überwachung, aber die Kubernetes-Community experimentiert mit anderen Möglichkeiten, Daten anzuzeigen, die für Kubernetes-Administratoren nützlich sind. Kube-ops-view Es gibt genau so ein Experiment, das die Möglichkeit bietet, mehrere Cluster zu überwachen. Man kann die CPU- und RAM-Nutzung sowie den Zustand der Cluster-Module sehen. Bitte beachten Sie, dass keine Befehle ausgeführt werden können; das Tool dient nur zur Visualisierung. Dennoch sind die bereitgestellten Darstellungen klar und übersichtlich, sie eignen sich hervorragend für einen Bildschirm in Ihrem Support-Zentrum.

Rio: Anwendungsbereitstellung für Kubernetes

Rio, ein Projekt von Rancher Labs, implementiert gängige Methoden zur Bereitstellung von Anwendungen in Kubernetes, wie z.B. CD aus Git, AB oder Blue-Green Deployments. Es kann auch eine neue Version Ihrer Anwendung bereitstellen, sobald Sie die Änderungen festgeschrieben haben, und hilft, Komplikationen mit z.B. DNS, HTTPS, Service Mesh zu bewältigen.

Stern und Kubetail: Protokollanzeige in Kubernetes

Stern gibt farbigen Output aus (wie dies das Kommando tail) aus Pods und Containern in Kubernetes. Zudem ist es die schnellste Möglichkeit, Ausgaben aus mehreren Quellen in einen einheitlichen, laufend lesbaren Stream zu erhalten. Gleichzeitig haben Sie eine visuell unterscheidbare Möglichkeit (durch die Farben), die Streams zu trennen.

Kubetail verbindet ähnlich Protokolle aus verschiedenen Pods in einen Stream, wobei verschiedene Pods und Container farblich markiert werden. Aber Kubetail ist ein Bash-Skript, daher benötigt es nichts anderes als eine Shell für seine Ausführung.

Nur registrierte Benutzer können an der Umfrage teilnehmen. Bitte einloggen.

Was nutzen Sie, um Routineaufgaben zu vereinfachen?

  • 2,9%Goldpinger1

  • 22,9%K9s8

  • 0,0%Kops0

  • 0,0%Kubebox0

  • 0,0%Kube-applier0

  • 0,0%Kube-ps10

  • 0,0%Kube-prompt0

  • 0,0%Kubespy0

  • 2,9%Kubeval1

  • 0,0%Kube-ops-view0

  • 0,0%Rio0

  • 2,9%Stern1

  • 5,7%Kubetail2

  • 28,6%Nichts davon10

  • 5,7%Ich habe mein eigenes „Prä-e-e-e-e-e-sseeesssse“2

  • 8,6%Ich werde versuchen, etwas aus der Liste zu testen3

  • 20,0%Ich steuere Kubernetes mit einem Neuroimplantat, wie im Film „Johnny Mnemonic“7

35 Benutzer haben abgestimmt. 19 Benutzer haben sich enthalten.

Quelle: habr.com

60GB SSD 8Gb DDR4