|
Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar. |
Kubernetes-Workloads und Pods
Sie können jede komplexe containerisierte Anwendung in Kubernetes mit zwei grundlegenden Konstrukten erstellen: Pods und Workloads. Sobald Sie eine Anwendung erstellt haben, können Sie sie entweder innerhalb des gleichen Clusters oder im Internet über ein drittes Konstrukt, die Dienste, zugänglich machen.
Pods
Pods sind ein oder mehrere Container, die sich Netzwerk-Namensräume und Speicher-Volumes teilen. Die meisten Pods haben nur einen Container. Daher ist der Begriff Pods oft synonym mit Containern. Sie skalieren Pods auf die gleiche Weise, wie Sie Container skalieren--, indem Sie mehrere Instanzen desselben Pods haben, die einen Dienst implementieren. In der Regel werden Pods durch die Workloads skaliert und verwaltet.
Workloads
Workloads sind Objekte, die Implementierungsregeln für Pods festlegen. Basierend auf diesen Regeln führt Kubernetes die Implementierung durch und aktualisiert den Workload mit dem aktuellen Zustand der Anwendung. Workloads ermöglichen es Ihnen, die Regeln für die Anwendungsplanung, Skalierung und Upgrade festzulegen.
Workload-Typen
Kubernetes unterteilt Workloads in verschiedene Typen. Die beliebtesten von Kubernetes unterstützten Typen sind:
-
Implementierungen eignen sich am besten für zustandslose Anwendungen (d.h. wenn Sie den Zustand des Workloads nicht aufrechterhalten müssen). Pods, die von Implementierungs-Workloads verwaltet werden, werden als unabhängig und entbehrlich behandelt. Wenn ein Pod auf Störungen stößt, entfernt Kubernetes ihn und erstellt ihn dann neu. Eine Beispielanwendung wäre ein Nginx-Webserver.
-
Zustandssets hingegen eignen sich am besten, wenn Ihre Anwendung ihre Identität aufrechterhalten und Daten speichern muss. Eine Anwendung wäre etwas wie Zookeeper—eine Anwendung, die eine Datenbank für die Speicherung benötigt.
-
DaemonSets stellt sicher, dass jeder Knoten im Cluster eine Kopie des Pods ausführt. Für Anwendungsfälle, in denen Sie Protokolle sammeln oder die Leistung von Knoten überwachen, funktioniert dieser daemonähnliche Workload am besten.
-
Jobs starten einen oder mehrere Pods und stellen sicher, dass eine bestimmte Anzahl von ihnen erfolgreich beendet wird. Jobs eignen sich am besten, um eine endliche Aufgabe bis zur Vollendung auszuführen, anstatt einen fortlaufenden gewünschten Anwendungszustand zu verwalten.
-
CronJobs sind ähnlich wie Jobs. CronJobs hingegen werden nach einem cron-basierten Zeitplan bis zur Vollendung ausgeführt.
Services
In vielen Anwendungsfällen muss ein Workload entweder:
-
Von anderen Workloads im Cluster zugegriffen werden.
-
Der Außenwelt ausgesetzt.
Sie können diese Ziele erreichen, indem Sie einen Service erstellen. Services werden mithilfe eines Selectors/Label-Ansatzes (siehe die Codebeispiele) den zugrunde liegenden Pods des Workloads zugeordnet. Die Rancher UI vereinfacht diesen Zuordnungsprozess, indem sie automatisch einen Service zusammen mit dem Workload erstellt, wobei der von Ihnen ausgewählte Serviceport und -typ verwendet werden.
Service-Typen
Es stehen mehrere Arten von Services in Rancher zur Verfügung. Die folgenden Beschreibungen stammen aus der Kubernetes-Dokumentation.
-
ClusterIP
Exponiert den Dienst an einer clusterinternen IP. Die Wahl dieses Wertes macht den Dienst nur innerhalb des Clusters erreichbar. Dies ist der Standard
ServiceType. -
NodePort
Exponiert den Dienst an der IP jedes Knotens an einem statischen Port (dem
NodePort). EinClusterIPDienst, an den derNodePortDienst weiterleitet, wird automatisch erstellt. Sie können denNodePortDienst von außerhalb des Clusters erreichen, indem Sie<NodeIP>:<NodePort>anfordern. -
LoadBalancer
Exponiert den Dienst extern mithilfe eines Load Balancers des Cloud-Anbieters.
NodePortundClusterIPDienste, an die der externe Load Balancer weiterleitet, werden automatisch erstellt.
Workload-Optionen
Dieser Abschnitt der Dokumentation enthält Anweisungen zum Bereitstellen von Workloads und zur Verwendung von Workload-Optionen.