Überblick
Ein Kubernetes Cluster ist eine Reihe von Knotenmaschinen zum Ausführen von Containeranwendungen. Wenn Sie Kubernetes ausführen, führen Sie einen Cluster aus.
Ein Cluster enthält mindestens eine Steuerebene und eine oder mehrere Rechenmaschinen oder Knoten. Die Steuerebene ist dafür verantwortlich, den gewünschten Zustand des Clusters aufrechtzuerhalten, z. B. welche Anwendungen ausgeführt werden und welche Container-Images sie verwenden. Knoten führen die Anwendungen und Workloads tatsächlich aus.
Der Cluster ist das Herzstück des Hauptvorteils von Kubernetes : die Fähigkeit, Container über eine Gruppe von Maschinen hinweg zu planen und auszuführen, seien sie physisch oder virtuell, vor Ort oder in der Cloud. Kubernetes- Container sind nicht an einzelne Maschinen gebunden. Vielmehr werden sie über den Cluster abstrahiert.
Wie arbeiten Sie mit einem Kubernetes Cluster?
Ein Kubernetes Cluster verfügt über einen gewünschten Zustand, der definiert, welche Anwendungen oder anderen Workloads ausgeführt werden sollen, welche Images sie verwenden, welche Ressourcen ihnen zur Verfügung gestellt werden sollen und andere derartige Konfigurationsdetails.
Ein gewünschter Zustand wird durch Konfigurationsdateien definiert, die aus Manifesten bestehen. Dabei handelt es sich um JSON- oder YAML- Dateien, die den auszuführenden Anwendungstyp deklarieren und angeben, wie viele Replikate zum Ausführen eines fehlerfreien Systems erforderlich sind.
Der gewünschte Zustand des Clusters wird mit der Kubernetes-API definiert . Dies kann über die Befehlszeile (mit kubectl) oder durch Interaktion mit dem Cluster zum Festlegen oder Ändern des gewünschten Zustands über die API erfolgen.
Kubernetes verwaltet Ihren Cluster automatisch, um den gewünschten Zustand zu erreichen. Nehmen wir als einfaches Beispiel an, Sie stellen eine Anwendung mit dem gewünschten Zustand „3“ bereit, was bedeutet, dass 3 Replikate der Anwendung ausgeführt werden sollten. Wenn einer dieser Container abstürzt, erkennt Kubernetes, dass nur 2 Replikate ausgeführt werden, und fügt 1 weiteres hinzu, um den gewünschten Zustand zu erreichen.
Sie können auch Kubernetes-Muster verwenden , um die Skalierung Ihres Clusters automatisch basierend auf der Last zu verwalten.
Welche Verbindung besteht zwischen einem Cluster und einem Knoten, einem Pod und anderen Kubernetes-Begriffen?
Wir haben einen Cluster als eine Reihe von Knoten definiert. Sehen wir uns einige andere Kubernetes-Begriffe an, die zum Verständnis der Funktion eines Clusters hilfreich sind.
Kontrollebene: Die Sammlung von Prozessen, die Kubernetes-Knoten steuern. Von hier stammen alle Aufgabenzuweisungen.
Knoten: Diese Maschinen führen die angeforderten, von der Steuerebene zugewiesenen Aufgaben aus.
Pod: Eine Gruppe von 1 oder mehreren Containern, die auf einem einzelnen Knoten bereitgestellt werden. Ein Pod ist das kleinste und einfachste Kubernetes-Objekt.
Dienst: Eine Möglichkeit, eine auf einer Reihe von Pods ausgeführte Anwendung als Netzwerkdienst verfügbar zu machen. Dadurch werden Arbeitsdefinitionen von den Pods entkoppelt.
Volume: Ein Verzeichnis mit Daten, auf das die Container in einem Pod zugreifen können. Ein Kubernetes-Volume hat dieselbe Lebensdauer wie der Pod, in dem es sich befindet. Ein Volume überlebt alle Container, die innerhalb des Pods ausgeführt werden, und die Daten bleiben beim Neustart eines Containers erhalten.
Namespace: Ein virtueller Cluster. Namespaces ermöglichen Kubernetes, mehrere Cluster (für mehrere Teams oder Projekte) innerhalb desselben physischen Clusters zu verwalten.
Was ist Kubernetes Clusterverwaltung?
Mit modernen Cloud-native-Anwendungen werden Kubernetes-Umgebungen hochgradig verteilt. Sie können über mehrere Rechenzentren vor Ort, in der öffentlichen Cloud und am Edge bereitgestellt werden.
Organisationen, die Kubernetes im großen Maßstab oder in der Produktion einsetzen möchten, verfügen über mehrere Cluster, beispielsweise für Entwicklung, Tests und Produktion, die über verschiedene Umgebungen verteilt sind, und müssen in der Lage sein, diese effektiv zu verwalten quality assurance.
Mit der Kubernetes Clusterverwaltung verwaltet ein IT-Team eine Gruppe von Kubernetes Clustern.
Warum sollten Sie sich für Red Hat OpenShift für Kubernetes entscheiden?
Red Hat ist ein führender und aktiver Entwickler von Open-Source-Containertechnologie, einschließlich Kubernetes, und erstellt wichtige Tools zum Sichern, Vereinfachen und automatischen Aktualisieren Ihrer Container-Infrastruktur.
Red Hat® OpenShift® ist eine einheitliche Plattform zum Erstellen, Modernisieren und Bereitstellen von Anwendungen in großem Maßstab. Mit Red Hat OpenShift erhalten Teams eine einzige, integrierte Plattform für Betriebs- und Entwicklungsteams. Entwicklerfreundliche Workflows, einschließlich integrierter CI/CD-Pipelines und Source-to-Image-Funktionen, ermöglichen Ihnen den direkten Übergang vom Anwendungscode zum Container. Red Hat OpenShift basiert auf Kubernetes und hilft Ihnen, intelligenter und schneller zu arbeiten – mit einem vollständigen Satz von Services, um Apps auf der Infrastruktur Ihrer Wahl auf den Markt zu bringen.
Neben OpenShift können Sie auch Red Hat Advanced Cluster Management und Red Hat Ansible® Automation Platform gemeinsam nutzen, um mehrere Kubernetes Cluster in verschiedenen Regionen, einschließlich Public Cloud-, On-Premise- und Edge-Umgebungen, effizient bereitzustellen und zu verwalten.