Übersicht über Kubernetes und Kubernetes mit Azure Arc-Unterstützung
In dieser Lerneinheit erfahren Sie mehr über die Architektur und die Vorteile von Kubernetes mit Azure Arc-Unterstützung.
Kubernetes
Kubernetes ist eine erweiterbare Open-Source-Plattform zum Orchestrieren von containerisierten Workloads. Zur Gewährleistung der Resilienz besteht jede Kubernetes-Bereitstellung aus mehreren gruppierten Serverknoten. Einige Server sind Knoten auf Steuerungsebene, die die anderen Workerknoten verwalten.
Die Workerknoten hosten Containerworkloads als Kubernetes-Pods. Ein Pod ähnelt einem Container, er kann aber auch mehrere eng verknüpfte Container enthalten, die auf demselben Knoten ausgeführt werden.
Neben der containerbasierten Isolation bietet Kubernetes auch die Möglichkeit, Pods und andere Ressourcen, wie z. B. Bereitstellungen, in Namespaces zu isolieren. Namespaces bilden logische Grenzen und ermöglichen die Isolation zwischen Benutzer*innen und externen Anwendungen, die auf verschiedene containerisierte Workloads zugreifen. Außerdem können Sie mit Namespaces Berechtigungen zum Erstellen, Anzeigen oder Verwalten von Ressourcen in einem Cluster einschränken.
Vorteile von Kubernetes
Kubernetes abstrahiert die Komplexität einer Multicontainerumgebung, in der Hunderte oder Tausende Container die gleichen Compute-, Netzwerk- und Speicherkomponenten verwenden. Das deklarative Kubernetes-Verwaltungsmodell beschreibt die gewünschte Zielkonfiguration und überlässt die Implementierungsdetails der Kubernetes-Steuerungsebene.
Mit Kubernetes können Sie Ihr Rechenzentrum wie eine einheitliche Computeressource behandeln. So müssen Sie sich keine Gedanken mehr darüber machen, wie und wo Sie Ihre Container bereitstellen, sondern nur darüber, wie Sie Ihre Apps nach Bedarf bereitstellen und skalieren.
Kubernetes-Herausforderungen
Bei Kubernetes handelt es sich um eine hochgradig anpassbare Orchestrierungsplattform, die eine ordnungsgemäße Konfiguration, Verwaltung und Wartung erfordert.
Funktionen, wie Bereitstellung, Skalierung, Lastenausgleich, Protokollierung und Überwachung, sind optional. Es ist Ihre Aufgabe, die optimale Konfiguration für Ihre speziellen Anforderungen zu ermitteln und zu implementieren.
Sie sind für die Verwaltung Ihrer Kubernetes-Umgebung verantwortlich. So sind Sie beispielsweise für die Verwaltung von Betriebssystem- und Kubernetes-Upgrades zuständig. Außerdem müssen Sie die für Clusterknoten verfügbaren Hardwareressourcen, z. B. das Netzwerk, den Arbeitsspeicher und den Speicher verwalten.
Managed Kubernetes-Angebote wie Azure Kubernetes Service (AKS) vereinfachen einige dieser Aufgaben oder nehmen Sie Ihnen sogar ganz ab.
Azure Arc-fähiges Kubernetes
Mit Azure Arc-aktiviertem Kubernetes können Sie Kubernetes-Cluster anfügen, die überall ausgeführt werden, sodass Sie diese in Azure verwalten und konfigurieren können.
Azure Arc richtet mithilfe von lokal installierten Agents einen vertrauenswürdigen Kanal zu Azure ein. Für die Verbindung mit Azure müssen mehrere Agents als Pods in einem dedizierten Azure Arc-Namespace im Kubernetes-Cluster bereitgestellt werden. Diese Agents halten eine Verbindung mit Azure aufrecht und synchronisieren den Clusterstatus und die -metadaten mit der entsprechenden Azure-Ressource.
Kubernetes mit Azure Arc-Unterstützung funktioniert mit jedem Kubernetes-Cluster, der eine CNCF-Zertifizierung (Cloud Native Computing Foundation) besitzt. Dies umfasst Cluster, die bei anderen öffentlichen Cloudanbietern (z. B. GCP oder AWS) ausgeführt werden, und Cluster, die in Ihrem lokalen Rechenzentrum (z. B. VMware vSphere oder Azure Stack HCI) ausgeführt werden.
Vorteile von Kubernetes mit Azure Arc-Unterstützung
Über die allgemeinen Azure Arc-Vorteile hinaus, die in der vorherigen Lerneinheit beschrieben wurden, bietet Kubernetes mit Azure Arc-Unterstützung die folgenden Funktionen:
- Einzelne Steuerungsebene zum Verwalten aller Kubernetes-Ressourcen in Multicloud-/Hybridumgebungen
- Arc-fähige Kubernetes-Cluster als Plattform zum Hosten von Azure-Diensten
- Erweiterte Unterstützung für die Bereitstellung von Anwendungen mithilfe von GitOps. GitOps ermöglicht die automatische Bereitstellung von Konfigurationen, die den gewünschten Zustand von Kubernetes-Clustern beschreiben. Sie können bestimmte GitOps-basierte Konfigurationen mithilfe von Azure Policy erzwingen.
- Erzwingung von Laufzeitrichtlinien für den Cluster und die zugehörigen Pods mithilfe von Azure Policy für Kubernetes sowie zentralisierte Berichterstattung für die Richtlinienkonformität. Sie können beispielsweise die Verwendung von HTTPS für den in Kubernetes-Cluster mit Azure Arc-Unterstützung eingehenden Datenverkehr erzwingen oder sicherstellen, dass Container nur an bestimmten Ports lauschen.
- Verwenden von Azure Monitor-Containererkenntnissen zum Überwachen von Containern
Weitere Informationen zu diesen Features finden Sie in den folgenden Lerneinheiten dieses Moduls.