Verwalten von Kubernetes mit Azure Arc-Unterstützung mithilfe von Azure Policy und Azure Monitor

Abgeschlossen

Azure Arc zentralisiert und optimiert die Verwaltung durch Aktivierung verschiedener Azure-Dienste, z. B. Azure Policy und Azure Monitor.

In dieser Lerneinheit erfahren Sie, wie Sie diese Dienste zum Verwalten und Überwachen von Kubernetes-Clustern mit Azure Arc-Unterstützung verwenden.

Azure Policy

Azure Policy verwendet deklarative Regeln, die auf Eigenschaften von Zielressourcentypen basieren, einschließlich Kubernetes-Clustern und deren Komponenten. Diese Regeln bilden Richtliniendefinitionen, die Administrator*innen durch Zuweisung von Richtlinien zu Ressourcengruppen, Abonnements oder Verwaltungsgruppen anwenden können.

Azure Policy für Kubernetes

Mit Azure Policy für Kubernetes können Unternehmen einheitliche Governanceregeln für alle ihre Kubernetes-Cluster mit Azure Arc-Unterstützung erzwingen, um jegliche Nichteinhaltung von Organisationsstandards zu erkennen.

Die Azure Policy-Erweiterung für Kubernetes mit Arc-Unterstützung führt die folgenden Aktionen aus:

  • Regelmäßige Prüfung auf Azure Policy-Zuweisungen zum Kubernetes-Cluster, der die Zugangscontrollerpods hostet
  • Bereitstellung von Richtliniendefinitionen im Cluster als benutzerdefinierte Ressourcen, die Einschränkungen anwenden, die von den Pods der Zugangssteuerung durchgesetzt werden
  • Meldung von Überwachungs- und Konformitätsdaten an Azure Policy, sodass Sie den Status über das Azure-Portal einsehen können, ähnlich wie bei anderen Azure-Ressourcen oder Ressourcen mit Azure Arc-Unterstützung

Integrierte Richtliniendefinitionen für Kubernetes mit Azure Arc-Unterstützung

Azure Policy bietet viele integrierte Definitionen für Kubernetes-Instanzen mit Azure Arc-Unterstützung, einschließlich der folgenden häufig verwendeten Richtliniendefinitionen:

Richtlinienname Richtlinienbeschreibung
Kubernetes-Cluster dürfen keine privilegierten Container zulassen Hiermit wird das Erstellen privilegierter Container in einem Cluster verhindert.
Auf Kubernetes-Cluster sollte nur über HTTPS zugegriffen werden können. Hiermit wird sichergestellt, dass das HTTPS für eingehende Verbindungen verwendet wird.
Von Kubernetes-Clusterdiensten dürfen nur zulässige externe IP-Adressen verwendet werden. Hiermit wird sichergestellt, dass nur zulässige externe IP-Adressen verwendet werden.
CPU- und Arbeitsspeicherressourcen für Container in einem Kubernetes-Cluster dürfen die angegebenen Limits nicht überschreiten Hiermit werden Limits für CPU-Ressourcen und Arbeitsspeicherressourcen erzwungen.
Kubernetes-Clusterdienste dürfen nur an zugelassenen Ports lauschen Hiermit werden Dienste so eingeschränkt, dass sie nur an zulässigen Ports lauschen.
Container in einem Kubernetes-Cluster dürfen nur zugelassene Images verwenden Hiermit werden Images, die zum Bereitstellen von Containern verwendet werden können, auf Images eingeschränkt, die aus vertrauenswürdigen Registrierungen stammen.
Container in einem Kubernetes-Cluster dürfen nur zulässige Funktionen verwenden Hiermit werden Funktionen eingeschränkt, um die Angriffsfläche von Containern zu reduzieren.
Pods im Kubernetes-Cluster dürfen nur genehmigte Hostnetzwerke und Portbereiche verwenden Hiermit wird der Podzugriff auf das Hostnetzwerk und den zulässigen Hostportbereich in einem Cluster beschränkt.

Es sind viele weitere integrierte Richtliniendefinitionen verfügbar. Zum Anzeigen aller Richtliniendefinitionen suchen Sie im Azure-Portal nach Richtlinie, wählen Sie den Eintrag aus, wählen Sie im linken Menü Definitionen und dann in der Dropdownliste Kategorie die Option Kubernetes aus.

Implementieren von Azure Policy für Kubernetes

Zum Implementieren von Azure Policy für Kubernetes in verbundenen Clustern müssen Sie die Azure Policy-Erweiterung installieren. Für Kubernetes-Instanzen mit Azure Arc-Unterstützung besteht dieser Vorgang aus zwei allgemeinen Schritten.

  1. Melden Sie sich beim Microsoft Entra-Mandanten mit einem Konto an, das über Berechtigungen zum Verwalten der Kubernetes-Ressource mit Arc-Unterstützung verfügt.
  2. Erstellen Sie eine Azure Policy-Erweiterungsinstanz im Cluster.
  3. Erstellen Sie eine Richtlinienzuweisung mithilfe einer der Kubernetes-spezifischen Richtliniendefinitionen.

Nachdem die Richtlinienzuweisung erstellt wurde, beginnt Azure Policy, die Compliance zu überprüfen.

Azure Monitor

Azure Monitor weitet umfassende, cloudbasierte Überwachungsfunktionen über Azure hinaus auf lokale Rechenzentren und Microsoft-fremde Cloudanbieter (Drittanbieter) aus. Monitor sammelt und überwacht Metrik-, Aktivitäts- und Diagnoseprotokolle sowie Ereignisse aus Azure-Diensten, Arc-fähigen Ressourcen und Ressourcen, die in lokalen Rechenzentren und bei Cloud-Drittanbietern gehostet werden.

Zu den Features der Azure Monitor-Schnittstelle gehören:

  • Dashboards und Arbeitsmappen
  • Analyse von Metriken mit Tools wie Metrik-Explorer oder Power BI
  • Allgemeine Aktionsgruppen, die durch Warnungen ausgelöste Aktionen und die Empfänger der Warnungen ausweisen

Azure Monitor Container Insights

Azure Monitor Container Insights bietet umfassende Einblicke in den Zustand der Kubernetes-Umgebung und trägt zur Aufrechterhaltung der Betriebsstabilität und Geschäftskontinuität bei. Metriken werden für Controller, Knoten und Container in Kubernetes-Umgebungen gesammelt, einschließlich Kubernetes mit Azure Arc-Unterstützung.

Container Insights bietet die folgenden Funktionen:

  • Identifizieren von Containern, die auf den einzelnen Clusterknoten ausgeführt werden, sowie deren durchschnittliche Prozessor- und Arbeitsspeichernutzung, um die Erkennung von Ressourcenengpässen zu unterstützen.
  • Identifizieren von Containern, die in einzelnen Pods ausgeführt werden, um die Gesamtleistung des Pods nachzuverfolgen
  • Auswerten der Ressourcennutzung von Workloads, die auf dem Host ausgeführt werden und nichts mit den Standardprozessen zur Unterstützung des Pods zu tun haben
  • Vergleichen des Verhaltens des Clusters unter durchschnittlichen und schwersten Lasten, um den Kapazitätsbedarf zu beurteilen und die maximale Auslastung des Clusters einzuschätzen.
  • Konfigurieren von Warnungen, sodass Sie proaktiv benachrichtigt werden, wenn die Ressourcenverwendung akzeptable Schwellenwerte überschreitet oder sich der Integritätszustand im Cluster ändert.

Überwachen von Azure Arc-fähigen Kubernetes-Clustern

Azure Monitor Container Insights basiert auf einer Containerversion des Azure Monitor-Agents für Linux. Dieser Agent wird im überwachten Cluster ausgeführt, um Leistungsmetriken und Protokolle der enthaltenen Clusterknoten und Container zu sammeln. Der Agent interagiert direkt mit der Kubernetes-Metrik-API und lädt die gesammelten Daten zu Azure hoch.

Die folgenden allgemeinen Schritte sind erforderlich, um Azure Monitor Container Insights für Kubernetes-Bereitstellungen mit Azure Arc-Unterstützung zu implementieren.

  1. Melden Sie sich beim Microsoft Entra-Mandanten mit einem Konto an, das über Berechtigungen zum Verwalten der Kubernetes-Ressource mit Arc-Unterstützung verfügt.
  2. Identifizieren Sie die Arbeitsbereichs-ID des Log Analytics-Arbeitsbereichs, den Sie verwenden möchten.
  3. Erstellen Sie eine Azure Monitor Container Insights-Erweiterungsinstanz im Cluster, und verwenden Sie dazu die Log Analytics-Arbeitsbereichs-ID verwenden.