Freigeben über


Clustererweiterungen

In diesem Artikel wird beschrieben, wie Sie Azure Arc-fähige Kubernetes-Clustererweiterungen über Helm Charts verwenden können, um Ihre Kubernetes-Anwendungen zu verwalten. Das Clustererweiterungsfeature in Azure Arc-fähigen Kubernetes verfügt über alle Bausteine, die Sie benötigen, um selbst die komplexesten Kubernetes-Anwendungen zu definieren, zu installieren und zu aktualisieren.

Die Clustererweiterungsfunktion basiert auf den Verpackungskomponenten von Helm. Mit Erweiterungen verwenden Sie eine durch Azure Resource Manager gesteuerte Erfahrung für die Installation und Lebenszyklusverwaltung verschiedener Funktionen in Ihrem Kubernetes-Cluster.

Als Clusteroperator*in oder -administrator*in können Sie die Clustererweiterungsfunktion für Folgendes verwenden:

  • Installieren und Verwalten von Schlüsselverwaltungs-, Daten- und Anwendungsangeboten in Ihrem Kubernetes-Cluster.
  • Verwenden Sie Azure Policy, um die Bereitstellung von Clustererweiterungen im großen Stil in allen Clustern in Ihrer Umgebung zu automatisieren.
  • Abonnieren Sie Releasezyklen (z. B. Preview oder Stable) für jede Erweiterung.
  • Richten Sie automatische Upgrades für Erweiterungen ein. Sie können auch eine bestimmte Version anheften und Versionen manuell upgraden.
  • Aktualisieren von Erweiterungseigenschaften oder Löschen von Erweiterungsinstanzen.

Erweiterungen stehen zur Unterstützung verschiedenster Azure-Dienste und -Szenarien zur Verfügung. Eine Liste aller derzeit unterstützten Erweiterungen finden Sie unter Verfügbare Erweiterungen für Azure Arc-fähige Kubernetes-Cluster.

Aufbau

Diagramm, das die Workflowarchitektur der Clustererweiterungsinstallation zeigt.

Um Architekturdiagramme in hoher Auflösung herunterzuladen, besuchen Sie Jumpstart Gems.

Die Clustererweiterungsinstanz wird als Azure Resource Manager-Erweiterungsressource (Microsoft.KubernetesConfiguration/extensions) auf der Kubernetes-Ressource mit Azure Arc-Unterstützung (von Microsoft.Kubernetes/connectedClusters dargestellt) in Azure Resource Manager erstellt.

Mit dieser Darstellung in Azure Resource Manager können Sie Richtlinien erstellen, die auf das Vorhandensein oder Fehlen einer bestimmten Clustererweiterung in allen Azure Arc-fähigen Kubernetes-Ressourcen überprüfen. Nachdem Sie ermittelt haben, welchen Clustern Clustererweiterungen fehlen, die bestimmte Eigenschaftswerte aufweisen, können Sie nicht konforme Ressourcen mithilfe von Azure Policy korrigieren.

Die config-agent Komponente, die auf Ihrem Cluster ausgeführt wird, verfolgt neue und aktualisierte Erweiterungsressourcen in der Azure Arc-fähigen Kubernetes-Ressource. Der extensions-manager Agent, der in Ihrem Cluster ausgeführt wird, liest den Erweiterungstyp, der installiert werden muss. Anschließend wird das zugeordnete Helm-Diagramm aus der Azure-Containerregistrierung oder der Microsoft-Containerregistrierung abgerufen und auf dem Cluster installiert.

Sowohl die Komponenten config-agent und extensions-manager, die im Cluster ausgeführt werden, übernehmen die Aktualisierung von Erweiterungsinstanzen, Versionsupdates sowie das Löschen von Erweiterungsinstanzen. Diese Agents verwenden die systemseitig zugewiesene verwaltete Identität des Clusters, um sicher mit Azure-Diensten zu kommunizieren.

Hinweis

config-agent überprüft, ob neue oder aktualisierte Erweiterungsinstanzen auf einem Kubernetes-Cluster mit Azure Arc-Unterstützung verfügbar sind. Damit der gewünschte Zustand der Erweiterung in den Cluster gepullt werden kann, benötigen die Agents Konnektivität. Wenn Agents keine Verbindung mit Azure herstellen können, wird die Verteilung des gewünschten Zustands an den Cluster verzögert.

Geschützte Konfigurationseinstellungen für eine Erweiterungsinstanz werden bis zu 48 Stunden in den Kubernetes-Diensten mit Azure Arc-Unterstützung gespeichert. Wenn der Cluster also während der 48 Stunden nach der Erstellung der Erweiterungsressource in Azure getrennt bleibt, ändert sich die Erweiterung von einem Pending Zustand in einen Failed Zustand. Um dies zu verhindern, empfehlen wir Ihnen, Cluster regelmäßig online zu bringen.

Wichtig

Derzeit werden Azure Arc-fähige Kubernetes-Clustererweiterungen auf ARM64-basierten Clustern nicht unterstützt, mit Ausnahme von Flux (GitOps) und Microsoft Defender für Container. Um andere Clustererweiterungen zu installieren und zu verwenden, muss der Cluster mindestens einen Knoten des Betriebssystems und des Architekturtyps Linux/amd64 aufweisen.

Erweiterungsbereich

Jeder Erweiterungstyp definiert den Bereich, in dem er im Cluster arbeitet. Erweiterungsinstallationen im Kubernetes-Cluster mit Arc-Unterstützung sind auf den Clusterbereich oder auf den Namespacebereich ausgerichtet.

Wenn Sie eine Erweiterungsinstanz erstellen, geben Sie den Namespace an, in dem er installiert ist.release-namespace In der Regel werden nur eine Instanz einer clusterbezogenen Erweiterung und deren Komponenten, einschließlich Pods, Operatoren und benutzerdefinierten Ressourcendefinitionen (CRDs), im Releasenamespace im Cluster installiert.

Sie können eine Namespacebereichserweiterung in einem bestimmten Namespace mithilfe der –namespace Eigenschaft installieren. Da die Erweiterung im Rahmen eines Namespaces bereitgestellt werden kann, können mehrere Instanzen einer namespace-gebundenen Erweiterung und ihrer Komponenten auf einem Cluster ausgeführt werden. Jede Instanz der Erweiterung verfügt über Berechtigungen für den Namespace, in dem sie bereitgestellt wird. Alle Erweiterungen, die in diesem Artikel beschrieben werden, sind clusterweit, ausgenommen die Event Grid on Kubernetes-Erweiterung.

Alle derzeit verfügbaren Erweiterungen mit Ausnahme von Azure API Management in Azure Arc sind Clusterbereichserweiterungen.