Dela via


Konfigurera nätverksobservabilitet för Azure Kubernetes Service (AKS) – Azure-hanterad Prometheus och Grafana

AKS Network Observability används för att samla in nätverkstrafikdata för ditt AKS-kluster. Nätverksobservabilitet möjliggör en centraliserad plattform för övervakning av program och nätverkshälsa. Prometheus samlar in aks-nätverksobservabilitetsmått och Grafana visualiserar dem. Både Cilium- och icke-Cilium-dataplanet stöds. I den här artikeln får du lära dig hur du aktiverar tillägget Nätverksobservabilitet och använder Azure-hanterad Prometheus och Grafana för att visualisera de skrapade måtten.

Mer information om AKS-nätverksobservabilitet finns i Vad är Azure Kubernetes Service (AKS) Nätverksobservabilitet?.

Förutsättningar

  • Lägsta version av Azure CLI som krävs för stegen i den här artikeln är 2.44.0. Kör az --version för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.

Skapa kluster

Kommentar

För Kubernetes-versionen >= 1.29 ingår Nätverksobservabilitet i kluster med Azure Managed Prometheus. Måttskrapning definieras via AMA-måttprofilen.

För lägre Kubernetes-versioner krävs extra steg för att aktivera nätverksobservabilitet.

Skapa en resursgrupp

En resursgrupp är en logisk container där Azure-resurser distribueras och hanteras. Skapa en resursgrupp med kommandot az group create . I följande exempel skapas en resursgrupp med namnet myResourceGroup på platsen eastus:

az group create \
    --name myResourceGroup \
    --location eastus

Skapa AKS-kluster

Skapa ett AKS-kluster med az aks create. I följande exempel skapas ett AKS-kluster med namnet myAKSCluster i resursgruppen myResourceGroup .

Exempel 1: Icke-Cilium

Använd az aks create i följande exempel för att skapa ett icke-Cilium AKS-kluster.

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

Exempel 2: Cilium

Använd az aks create i följande exempel för att skapa ett Cilium AKS-kluster.

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

Azure-hanterad Prometheus och Grafana

Använd följande exempel för att installera och aktivera Prometheus och Grafana för ditt AKS-kluster.

Skapa Azure Monitor-resurs

az resource create \
    --resource-group myResourceGroup \
    --namespace microsoft.monitor \
    --resource-type accounts \
    --name myAzureMonitor \
    --location eastus \
    --properties '{}'

Skapa Grafana-instans

Använd az grafana create för att skapa en Grafana-instans. Namnet på Grafana-instansen måste vara unikt. Ersätt myGrafana med ett unikt namn för Grafana-instansen.

az grafana create \
    --name myGrafana \
    --resource-group myResourceGroup 

Placera grafana- och Azure Monitor-resurs-ID:na i variabler

Använd az grafana show för att placera Grafana-resurs-ID:t i en variabel. Använd az resource show för att placera Azure Monitor-resurs-ID:t i en variabel. Ersätt myGrafana med namnet på grafanainstansen.

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)

Använd az aks update för att länka Azure Monitor- och Grafana-resurserna till ditt AKS-kluster.

az aks update \
    --name myAKSCluster \
    --resource-group myResourceGroup \
    --enable-azure-monitor-metrics \
    --azure-monitor-workspace-resource-id $azuremonitorId \
    --grafana-resource-id $grafanaId

Hämta klusterautentiseringsuppgifter

az aks get-credentials --name myAKSCluster --resource-group myResourceGroup

Visualisera med grafana

Kommentar

Följande avsnitt kräver distributioner av Azure-hanterade Prometheus och Grafana.

  1. Använd följande exempel för att kontrollera att Azure Monitor-poddarna körs.

    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
    
  2. Gå till Grafana-instansen i en webbläsare.

  3. Vi har skapat en exempelinstrumentpanel. Den finns under Instrumentpaneler > Azure Managed Prometheus > Kubernetes/Nätverk/Kluster.

  4. Kontrollera om måtten i Grafana-instrumentpanelen kubernetes/nätverk/kluster är synliga. Om mått inte visas ändrar du tidsintervallet till de senaste 15 minuterna i listrutan längst upp till höger.


Rensa resurser

Om du inte kommer att fortsätta att använda det här programmet tar du bort AKS-klustret och de andra resurserna som skapats i den här artikeln med följande exempel:

  az group delete \
    --name myResourceGroup

Nästa steg

I den här artikeln har du lärt dig hur du konfigurerar AKS Network Observability för ditt AKS-kluster.