Übersicht über Kubernetes-Agents mit Azure Arc-Unterstützung

Azure Arc-fähiges Kubernetes stellt eine zentralisierte, konsistente Steuerungsebene bereit, um Richtlinien, Governance und Sicherheit über Kubernetes-Cluster hinweg in verschiedenen Umgebungen zu verwalten.

Azure Arc-Agents werden in Kubernetes-Clustern bereitgestellt, wenn Sie sie mit Azure Arc verbinden. Dieser Artikel enthält eine Übersicht über diese Agents.

Bereitstellen von Agents in Ihrem Cluster

Die meisten lokalen Rechenzentren erzwingen strikte Netzwerkregeln, die eingehende Kommunikation in der Netzwerkgrenzenfirewall verhindern. Kubernetes mit Azure Arc-Unterstützung funktioniert mit diesen Einschränkungen, da keine eingehenden Ports in der Firewall erforderlich sind. Azure Arc-Agents erfordern ausgehende Kommunikation mit einer festgelegten Liste mit Netzwerkendpunkten.

Dieses Diagramm bietet eine Übersicht über die Azure Arc-Komponenten. Kubernetes-Cluster in lokalen Rechenzentren oder verschiedenen Clouds werden über die Azure Arc-Agenten mit Azure verbunden. Dadurch können die Cluster in Azure mit Hilfe von Verwaltungstools und Azure-Diensten verwaltet werden. Auf die Cluster kann auch über Offline-Verwaltungstools zugegriffen werden.

Diagram showing an architectural overview of the Azure Arc-enabled Kubernetes agents.

Die folgenden allgemeinen Schritte sind zum Verbinden eines Kubernetes-Clusters mit Azure Arc erforderlich:

  1. Erstellen Sie einen Kubernetes-Cluster auf der von Ihnen gewünschten Infrastruktur (VMware vSphere, Amazon Web Services, Google Cloud Platform usw.). Der Cluster muss bereits vorhanden sein, bevor Sie ihn mit Azure Arc verbinden.

  2. Starten Sie die Azure Arc-Registrierung für Ihren Cluster.

    • Das Agent Helm-Diagramm wird im Cluster bereitgestellt.

    • Die Clusterknoten initiieren eine ausgehende Kommunikation mit der Microsoft Container Registry, indem sie die Images abrufen, die zum Erstellen der folgenden Agents im azure-arc-Namespace erforderlich sind:

      Agent Beschreibung
      deployment.apps/clusteridentityoperator Kubernetes mit Azure Arc-Unterstützung unterstützt derzeit nur systemseitig zugewiesene Identitäten. clusteridentityoperator initiiert die erste ausgehende Kommunikation. Diese erste Kommunikation ruft das von anderen Agents für die Kommunikation mit Azure verwendete MSI-Zertifikat (Managed Service Identity, Verwaltete Dienstidentität) ab.
      deployment.apps/config-agent Überwacht den verbundenen Cluster auf Ressourcen zur Konfiguration der Quellcodeverwaltung, die auf den Cluster angewendet werden. Aktualisiert den Compliancezustand.
      deployment.apps/controller-manager Ist ein Operator für Operatoren und koordiniert Interaktionen zwischen Azure Arc-Komponenten.
      deployment.apps/metrics-agent Sammelt Metriken anderer Arc-Agents, um auf optimale Leistung zu überprüfen.
      deployment.apps/cluster-metadata-operator Sammelt Clustermetadaten, einschließlich Clusterversion, Knotenanzahl und Version des Azure Arc-Agents.
      deployment.apps/resource-sync-agent Synchronisiert die oben erwähnten Clustermetadaten mit Azure.
      deployment.apps/flux-logs-agent Sammelt Protokolle von den bei der Konfiguration der Quellcodeverwaltung bereitgestellten Flux-Operatoren.
      deployment.apps/extension-manager Installiert Erweiterungs-Helm-Diagramme und verwaltet deren Lebenszyklus.
      deployment.apps/kube-aad-proxy Wird für die Authentifizierung von Anforderungen verwendet, die mithilfe von Cluster Connect an den Cluster gesendet werden.
      deployment.apps/clusterconnect-agent Der Reverseproxy-Agent, der ermöglicht, dass das Cluster Connect-Feature Zugriff auf den apiserver des Clusters bereitstellt. Optionale Komponente, die nur dann bereitgestellt wird, wenn das Cluster Connect-Feature im Cluster aktiviert ist.
      deployment.apps/guard Authentifizierungs- und Autorisierungs-Webhook-Server, der für Microsoft Entra RBAC verwendet wird. Optionale Komponente, die nur dann bereitgestellt wird, wenn Azure RBAC im Cluster aktiviert ist.
  3. Sobald alle Kubernetes-Agent-Pods mit Azure Arc-Unterstützung sich im Zustand Running befinden, stellen Sie sicher, dass Ihr Cluster mit Azure Arc verbunden ist. Folgendes sollte angezeigt werden:

    • Eine Kubernetes-Ressource mit Azure Arc-Unterstützung in Azure Resource Manager. Azure verfolgt diese Ressource als Projektion des kundenseitig verwalteten Kubernetes-Clusters nach, nicht den eigentlichen Kubernetes-Cluster selbst.
    • Clustermetadaten (wie z. B. die Kubernetes-Version, die Agent-Version und die Anzahl der Knoten) werden in der Kubernetes-Ressource mit Azure Arc-Unterstützung als Metadaten angezeigt.

Nächste Schritte