Einrichten von Network Observability für Azure Kubernetes Service (AKS) – von Azure verwaltetes Prometheus und Grafana
AKS Network Observability wird verwendet, um die Netzwerkdaten des AKS-Clusters zu sammeln. Network Observability ermöglicht eine zentrale Plattform für die Überwachung der Anwendungs- und Netzwerkintegrität. Prometheus sammelt AKS Network Observability-Metriken und visualisiert sie. Sowohl die Cilium- als auch die Nicht-Cilium-Datenebene werden unterstützt. In diesem Artikel erfahren Sie, wie Sie das Network Observability-Add-On aktivieren und von Azure verwaltetes Prometheus und Grafana verwenden, um die ausgelesenen Metriken zu visualisieren.
Weitere Informationen zur AKS Network Observability finden Sie unter Was ist Azure Kubernetes Service (AKS) Network Observability?.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.
Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.
Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.
Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.
Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.
- Für die Schritte in diesem Artikel ist die Azure CLI mindestens in Version 2.44.0 erforderlich. Führen Sie
az --version
aus, um die Version zu ermitteln. Informationen zum Durchführen einer Installation oder eines Upgrades finden Sie bei Bedarf unter Installieren der Azure CLI.
Cluster erstellen
Hinweis
Für Kubernetes-Version >= 1.29 ist Netzwerkeinblick in Cluster mit Azure Managed Prometheus enthalten. Das metrische Scraping wird über das AMA-Metrikprofil definiert.
Für niedrigere Kubernetes-Versionen sind zusätzliche Schritte erforderlich, um Netzwerkeinblick zu aktivieren.
Erstellen einer Ressourcengruppe
Eine Ressourcengruppe ist ein logischer Container, in dem Azure-Ressourcen bereitgestellt und verwaltet werden. Erstellen Sie mithilfe des Befehls az group create eine Ressourcengruppe. Im folgenden Beispiel wird eine Ressourcengruppe mit dem Namen myResourceGroup am Standort eastus erstellt:
az group create \
--name myResourceGroup \
--location eastus
Erstellen eines ACS-Clusters
Erstellen Sie mit az aks create einen AKS-Cluster. Die folgenden Beispiele erstellen je einen AKS-Cluster namens myAKSCluster in der Ressourcengruppe namens myResourceGroup:
Beispiel 1: Nicht-Cilium
Verwenden Sie az aks create im folgenden Beispiel, um einen Nicht-Cilium-AKS-Cluster zu erstellen.
az aks create \
--name myAKSCluster \
--resource-group myResourceGroup \
--location eastus \
--generate-ssh-keys \
--network-plugin azure \
--network-plugin-mode overlay \
--pod-cidr 192.168.0.0/16 \
--kubernetes-version 1.29
Beispiel 2: Cilium
Verwenden Sie az aks create im folgenden Beispiel, um einen Cilium-AKS-Cluster zu erstellen.
az aks create \
--name myAKSCluster \
--resource-group myResourceGroup \
--generate-ssh-keys \
--location eastus \
--max-pods 250 \
--network-plugin azure \
--network-plugin-mode overlay \
--network-dataplane cilium \
--node-count 2 \
--pod-cidr 192.168.0.0/16
Von Azure verwaltetes Prometheus und Grafana
Verwenden Sie das folgende Beispiel, um Prometheus und Grafana für Ihren AKS-Cluster zu installieren und zu aktivieren.
Erstellen einer Azure Monitor-Ressource
az resource create \
--resource-group myResourceGroup \
--namespace microsoft.monitor \
--resource-type accounts \
--name myAzureMonitor \
--location eastus \
--properties '{}'
Erstellen einer Grafana-Instanz
Verwenden Sie az grafana create, um eine Grafana-Instanz zu erstellen. Der Name der Grafana-Instanz muss eindeutig sein. Ersetzen Sie myGrafana durch einen eindeutigen Namen für Ihre Grafana-Instanz.
az grafana create \
--name myGrafana \
--resource-group myResourceGroup
Platzieren der Grafana- und Azure Monitor-Ressourcen-IDs in Variablen
Verwenden Sie az grafana show, um die Grafana-Ressourcen-ID in einer Variablen zu platzieren. Verwenden Sie az resource show, um die Azure Monitor-Ressourcen-ID in einer Variablen zu platzieren. Ersetzen Sie myGrafana durch den Namen Ihrer Grafana-Instanz.
grafanaId=$(az grafana show \
--name myGrafana \
--resource-group myResourceGroup \
--query id \
--output tsv)
azuremonitorId=$(az resource show \
--resource-group myResourceGroup \
--name myAzureMonitor \
--resource-type "Microsoft.Monitor/accounts" \
--query id \
--output tsv)
Verknüpfen von Azure Monitor und Grafana mit dem AKS-Cluster
Verwenden Sie az aks update, um die Azure Monitor- und Grafana-Ressourcen mit Ihrem AKS-Cluster zu verknüpfen.
az aks update \
--name myAKSCluster \
--resource-group myResourceGroup \
--enable-azure-monitor-metrics \
--azure-monitor-workspace-resource-id $azuremonitorId \
--grafana-resource-id $grafanaId
Abrufen von Clusteranmeldeinformationen
az aks get-credentials --name myAKSCluster --resource-group myResourceGroup
Visualisieren mithilfe von Grafana
Hinweis
Der folgende Abschnitt erfordert Bereitstellungen von von Azure verwaltetem Prometheus und Grafana.
Verwenden Sie das folgende Beispiel, um zu überprüfen, ob die Azure Monitor-Pods ausgeführt werden.
kubectl get po -owide -n kube-system | grep ama-
ama-metrics-5bc6c6d948-zkgc9 2/2 Running 0 (21h ago) 26h ama-metrics-ksm-556d86b5dc-2ndkv 1/1 Running 0 (26h ago) 26h ama-metrics-node-lbwcj 2/2 Running 0 (21h ago) 26h ama-metrics-node-rzkzn 2/2 Running 0 (21h ago) 26h ama-metrics-win-node-gqnkw 2/2 Running 0 (26h ago) 26h ama-metrics-win-node-tkrm8 2/2 Running 0 (26h ago) 26h
Navigieren Sie in einem Webbrowser zu Ihrer Grafana-Instanz.
Wir haben ein Beispieldashboard erstellt. Sie finden es unter Dashboards > Azure Managed Prometheus > Kubernetes / Networking / Clusters.
Überprüfen Sie, ob die Metriken im Grafana-Dashboard Kubernetes / Networking / Clusters sichtbar sind. Wenn Metriken nicht angezeigt werden, ändern Sie den Zeitraum in die letzten 15 Minuten im Dropdownfeld oben rechts.
Bereinigen von Ressourcen
Wenn Sie diese Anwendung nicht weiter verwenden möchten, löschen Sie den AKS-Cluster und die anderen in diesem Artikel erstellten Ressourcen mit dem folgenden Beispiel:
az group delete \
--name myResourceGroup
Nächste Schritte
In diesem Artikel haben Sie erfahren, wie Sie AKS Network Observability für Ihren AKS-Cluster einrichten.
Weitere Informationen zur AKS Network Observability finden Sie unter Was ist Azure Kubernetes Service (AKS) Network Observability?.
Wenn Sie an genaueren Netzwerkeinblicken und anderen erweiterten Features interessiert sind, lesen Sie Was ist Erweiterte Container-Netzwerkdienste für Azure Kubernetes Service (AKS)?.
Azure Kubernetes Service