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

Kubernetes kann eigenständig containerisierte Workloads konsistent in Hybridumgebungen und Umgebungen mit mehreren Clouds bereitstellen. Kubernetes mit Azure Arc-Unterstützung stellt eine zentralisierte, konsistente Steuerungsebene bereit, um Richtlinien, Governance und Sicherheit in diesen heterogenen Umgebungen über Kubernetes-Cluster hinweg zu verwalten. Dieser Artikel bietet eine Übersicht über die Azure Arc-Agents, die im Rahmen des Verbindens des Clusters mit Azure Arc in den Kubernetes-Clustern bereitgestellt werden.

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 nur ausgehende Kommunikation mit einer Liste erforderlicher Netzwerkendpunkte.

Architectural overview

Die folgenden Schritte sind beim 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.).

    Hinweis

    Da Kubernetes mit Azure Arc-Unterstützung derzeit nur das Anfügen vorhandener Kubernetes-Cluster an Azure Arc unterstützt, müssen Kunden den Lebenszyklus des Kubernetes-Clusters selbst erstellen und verwalten.

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

    • Azure CLI verwendet Helm, um das Agent-Helm-Chart im Cluster bereitzustellen.

    • Die Clusterknoten initiieren eine ausgehende Kommunikation mit der Microsoft Container Registry und rufen die Images ab, 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 Feature cluster-connect im Cluster aktiviert ist.
      deployment.apps/guard Authentifizierungs- und Autorisierungswebhookserver, der für Azure Active Directory (Azure AD) RBAC verwendet wird. Optionale Komponente, die nur dann bereitgestellt wird, wenn das Feature 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 Kubernetes-Version, Agent-Version und Anzahl der Knoten) werden in der Kubernetes-Ressource mit Azure Arc-Unterstützung als Metadaten angezeigt.

Nächste Schritte