Kubernetes (k8s): Ein Open-Source-Container-Orchestrierungssystem von Google.
Herkunft des Namens: Kubernetes hat ein langes Wort und die mittleren 8 Buchstaben werden normalerweise weggelassen, was als k8s bezeichnet wird.
Es befindet sich zwischen Anwendungsdiensten und Servern und koordiniert und verwaltet mehrere Anwendungsdienste über Richtlinien.
Durch die YAML-Dateikonfiguration werden eine automatische Bereitstellung, ein automatischer Neustart sowie eine automatische Erweiterung und Kontraktion von Anwendungen realisiert.
Kubernetes-Architektur
Kontrollebene: Entspricht dem Gehirn des Clusters und ist für die Verwaltung und Steuerung der Arbeitsknoten verantwortlich.
Zu den Komponenten gehören:
API Server: Stellt eine API-Schnittstelle für den Betrieb von Dienstressourcen bereit.
Planer: Verantwortlich für Ressourcenplanungsentscheidungen.
Controller Manager: Verantwortlich für die Erstellung und Schließung von Anwendungsdiensten.
usw.: Als Speicherschicht speichert es den Clusterstatus und die Daten.
Arbeitsknoten (Knoten): Entspricht den Händen und Füßen des Clusters und ist für die Ausführung von Aufgaben und die Ausführung von Anwendungsdiensten verantwortlich.
Zu den Komponenten gehören:
Pod: Die laufende Instanz des Containers, die kleinste Planungseinheit in k8s.
Kubelet: Verantwortlich für das Lebenszyklusmanagement von Pod.
Containerlaufzeit: Verantwortlich für das Lebenszyklusmanagement von Containern wie Docker.
Kube-Proxy: Verantwortlich für den Netzwerk-Proxy und die Anforderungsweiterleitung des Knotens.
Kubernetes-Kernkonzepte
Cluster: Besteht aus einer Steuerebene und mehreren Worker-Knoten.
Containerbild: Verpackte Dateien, die Anwendungscode und abhängige Umgebungen enthalten.
Container: Die laufende Einheit des Anwendungsdienstes.
Pod: Eine Sammlung von einem oder mehreren Containern, die Netzwerk- und Speicherressourcen gemeinsam nutzen.
Kubernetes-Betriebstools
kubectl: Das von k8s bereitgestellte Befehlszeilentool wird verwendet, um mit der k8s-API zu interagieren und die Bereitstellung und Verwaltung von Diensten zu vereinfachen.
Dienstbereitstellungs- und Aufrufprozess
Bereitstellungsservice: Stellen Sie Dienste bereit, indem Sie YAML-Dateien schreiben und kubectl-Befehle ausführen.
Serviceanruf: Externe Anfragen gelangen über den Ingress-Controller in den Cluster und werden vom Kube-Proxy an den entsprechenden Pod weitergeleitet.
Kubernetes-Vorteile
Automatisieren Sie Bereitstellung, Neustart und Skalierung.
Vereinfachen Sie die Servicebereitstellung sowie Betriebs- und Wartungsprozesse.
Unterstützen Sie das Management großer Containerdienste.
Zusammenfassen
k8s ist ein leistungsstarkes Tool zur Container-Orchestrierung, das die automatisierte Verwaltung und Planung von Anwendungsdiensten durch die Zusammenarbeit der Steuerungsebene und der Worker-Knoten realisiert.
Die Kontrollebene ist für die Entscheidungsfindung und Befehlserteilung verantwortlich, und die Worker-Knoten sind für die Ausführung von Aufgaben und die Ausführung von Anwendungen verantwortlich.
Über das kubectl-Tool können Benutzer problemlos mit der k8s-API interagieren, um eine schnelle Bereitstellung und Verwaltung von Diensten zu erreichen.