Häufig gestellte Fragen: Kubernetes mit Azure Arc-Unterstützung und GitOps

In diesem Artikel werden häufig gestellte Fragen zu Kubernetes mit Azure Arc-Unterstützung und GitOps beantwortet.

Worin besteht der Unterschied zwischen Azure Arc-fähigem Kubernetes und Azure Kubernetes Service (AKS)?

AKS ist das Managed Kubernetes-Angebot von Azure. AKS vereinfacht die Bereitstellung eines Managed Kubernetes-Clusters in Azure, indem ein Großteil der Komplexität und des betrieblichen Aufwands nach Azure ausgelagert wird. Da die Kubernetes-Mastereinheiten von Azure verwaltet werden, müssen Sie sich nur um die Verwaltung und Wartung der Agent-Knoten kümmern.

Azure Arc-fähiges Kubernetes ermöglicht es Ihnen, die Verwaltungsfunktionen von Azure (wie Azure Monitor und Azure Policy) zu erweitern, indem Kubernetes-Cluster mit Azure verbunden werden. Den zugrunde liegenden Kubernetes-Cluster pflegen Sie selber.

Muss ich meine AKS-Cluster, die in Azure ausgeführt werden, mit Azure Arc verbinden?

Derzeit ist die Verbindung eines Azure Kubernetes Service (AKS) Clusters mit Azure Arc für die meisten Szenarien nicht erforderlich. Sie möchten vielleicht einen Cluster verbinden, um bestimmte Azure Arc-fähige Dienste wie App Services und Data Services auf dem Cluster auszuführen. Dies kann mithilfe des Features für benutzerdefinierte Standorte von Kubernetes mit Azure Arc-Unterstützung erfolgen.

Sollte ich meinen AKS-HCI-Cluster und meine Kubernetes-Cluster auf Azure Stack Edge mit Azure Arc verbinden?

Durch die Verbindung Ihres AKS-HCI-Clusters oder Kubernetes-Clusters auf Azure Stack Edge mit Azure Arc erhalten die Cluster eine Ressourcendarstellung im Azure Resource Manager. Diese Ressourcendarstellung erweitert Funktionen wie Clusterkonfiguration, Azure Monitor und Azure Policy (Gatekeeper) auf die verbundenen Kubernetes-Cluster.

Wenn sich der Azure Arc-fähige Kubernetes-Cluster unter Azure Stack Edge, AKS in Azure Stack HCI (>= Update von April 2021) oder AKS unter Windows Server 2019 Datacenter (>= Update von April 2021) befindet, dann ist die Kubernetes-Konfiguration kostenlos enthalten.

Wie gehe ich mit abgelaufenen Azure Arc-fähigen Kubernetes-Ressourcen um?

Die systemseitig zugewiesene verwaltete Identität, die Ihrem Kubernetes-Cluster mit Azure Arc-Unterstützung zugeordnet ist, wird nur von den Azure Arc-Agents für die Kommunikation mit den Azure Arc-Diensten verwendet. Das Zertifikat, das dieser systemseitig zugewiesenen verwalteten Identität zugeordnet ist, hat ein Ablauffenster von 90 Tagen, und die Agents versuchen weiterhin, dieses Zertifikat zwischen Tag 46 und Tag 90 zu erneuern. Um einen Ablauf des Zertifikats der verwalteten Identität zu vermeiden, stellen Sie sicher, dass der Cluster zwischen Tag 46 und Tag 90 mindestens einmal online geschaltet wird, damit das Zertifikat verlängert werden kann.

Wenn das Zertifikat der verwalteten Identität abläuft, wird die Ressource als Expired betrachtet, und keins der Azure Arc-Features (z. B. Konfiguration, Überwachung und Richtlinie) funktioniert mehr für den Cluster.

Führen Sie den folgenden Befehl aus, um zu überprüfen, wann das Zertifikat der verwalteten Identität für einen bestimmten Cluster abläuft:

az connectedk8s show -n <name> -g <resource-group>

In der Ausgabe zeigt der Wert von managedIdentityCertificateExpirationTime an, wann das Zertifikat der verwalteten Identität abläuft (90D-Markierung für dieses Zertifikat).

Wenn der Wert von managedIdentityCertificateExpirationTime einen Zeitstempel aus der Vergangenheit anzeigt, wird das Feld connectivityStatus in der obigen Ausgabe auf Expired festgelegt. Führen Sie in solchen Fällen folgende Schritte aus, damit Ihr Kubernetes-Cluster wieder mit Azure Arc zusammenarbeitet:

  1. Löschen Sie die Kubernetes-Ressource mit Azure Arc-Aktivierung sowie die Agents auf dem Cluster.

    az connectedk8s delete -n <name> -g <resource-group>
    
  2. Erstellen Sie die Azure Arc-fähige Kubernetes-Ressource erneut, indem Sie Agents auf dem Cluster bereitstellen.

    az connectedk8s connect -n <name> -g <resource-group>
    

Hinweis

az connectedk8s delete löscht außerdem Konfigurationen und Clustererweiterungen auf dem Cluster. Nachdem Sie az connectedk8s connect ausgeführt haben, erstellen Sie die Konfigurationen und Clustererweiterungen auf dem Cluster erneut, entweder manuell oder mithilfe von Azure Policy.

Kann ich, wenn ich bereits CI/CD-Pipelines verwende, trotzdem Kubernetes mit Azure Arc-Unterstützung oder AKS- und GitOps-Konfigurationen verwenden?

Ja, Sie können immer noch Konfigurationen auf einem Cluster verwenden, der Bereitstellungen über eine CI/CD-Pipeline empfängt. Im Vergleich zu herkömmlichen CI/CD-Pipelines bieten die GitOps-Konfigurationen einige zusätzliche Vorteile.

Driftausgleich

Die CI/CD-Pipeline wendet Änderungen während der Pipelineausführung nur einmal an. Der GitOps-Operator im Cluster fragt jedoch kontinuierlich das Git-Repository ab, um den gewünschten Zustand der Kubernetes-Ressourcen im Cluster abzurufen. Wenn der GitOps-Operator feststellt, dass der gewünschte Zustand von Ressourcen vom tatsächlichen Zustand der Ressourcen im Cluster abweicht, wird diese Abweichung (Drift) ausgeglichen.

Anwenden von GitOps im großen Stil

CI/CD-Pipelines sind hilfreich für ereignisgesteuerte Bereitstellungen in Ihrem Kubernetes-Cluster (Beispiel: Push in ein Git-Repository). Um jedoch dieselbe Konfiguration für alle Ihre Kubernetes-Cluster bereitzustellen, müssen Sie die Anmeldedaten jedes Kubernetes-Clusters manuell für die CI/CD-Pipeline konfigurieren.

Da der Azure Resource Manager Ihre GitOps-Konfigurationen für von Azure Arc aktiviertes Kubernetes verwaltet, können Sie die Erstellung derselben Konfiguration für alle von Azure Arc aktivierten Kubernetes- und AKS-Ressourcen mithilfe von Azure Policy im Rahmen eines Abonnements oder einer Ressourcengruppe automatisieren. Diese Funktion kann sogar auf AKS- und Azure Arc-fähige Kubernetes-Ressourcen angewendet werden, die nach der Richtlinienzuweisung erstellt wurden.

Dieses Feature wendet Baselinekonfigurationen (wie Netzwerkrichtlinien, Rollenbindungen und Podsicherheitsrichtlinien) auf den gesamten Bestand der Kubernetes-Cluster an, um Compliance- und Governanceanforderungen zu entsprechen.

Clusterkonformität

Der Konformitätszustand aller GitOps-Konfigurationen wird an Azure gemeldet. Dadurch können Sie alle Bereitstellungen mit Fehler nachverfolgen.

Speichert Kubernetes mit Azure Arc-Unterstützung Kundendaten außerhalb der Region des Clusters?

Das Feature zum Aktivieren der Speicherung von Kundendaten in einer einzelnen Region ist derzeit nur in der Region „Asien, Südosten“ (Singapur) des geografischen Raums „Asien-Pazifik“ und in der Region „Brasilien, Süden“ (São Paulo, Bundesstaat) des geografischen Raums „Brasilien“ verfügbar. Bei allen anderen Regionen werden Kundendaten unter „Geografien“ gespeichert. Dies gilt für Azure Arc-fähige Erweiterungen für Open Service Mesh- und Azure Key Vault-Geheimnisanbieter, die in Kubernetes mit Azure Arc-Unterstützung unterstützt werden. Weitere Clustererweiterungen finden Sie in der jeweiligen Dokumentation. Dort erfahren Sie auch, wie Kundendaten gespeichert werden. Weitere Informationen finden Sie unter Trust Center.

Nächste Schritte