Konfiguracja możliwości obserwacji sieci dla usługi Azure Kubernetes Service (AKS) — zarządzane przez platformę Azure Prometheus i Grafana

Funkcja obserwacji sieci usługi AKS służy do zbierania danych ruchu sieciowego klastra usługi AKS. Możliwość obserwowania sieci umożliwia scentralizowaną platformę do monitorowania kondycji aplikacji i sieci. Rozwiązanie Prometheus zbiera metryki obserwacji sieci usługi AKS i wizualizuje je Grafana. Obsługiwane są zarówno płaszczyzny danych Cilium, jak i innych niż Cilium. W tym artykule dowiesz się, jak włączyć dodatek Do obserwacji sieci i używać zarządzanego przez platformę Azure rozwiązania Prometheus i narzędzia Grafana w celu wizualizacji zeskropanych metryk.

Ważne

Możliwość obserwowania sieci usługi AKS jest obecnie dostępna w wersji zapoznawczej. Zobacz Dodatkowe warunki użytkowania wersji zapoznawczych platformy Microsoft Azure, aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta lub wersji zapoznawczej albo w inny sposób nie zostały jeszcze wydane jako ogólnie dostępne.

Aby uzyskać więcej informacji na temat możliwości obserwowania sieci usługi AKS, zobacz Co to jest obserwowanie sieci usługi Azure Kubernetes Service (AKS)?.

Wymagania wstępne

  • Minimalna wersja interfejsu wiersza polecenia platformy Azure wymagana do wykonania kroków w tym artykule to 2.44.0. Uruchom polecenie az --version, aby dowiedzieć się, jaka wersja jest używana. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

Instalowanie rozszerzenia interfejsu wiersza polecenia platformy aks-preview Azure

Ważne

Funkcje usługi AKS w wersji zapoznawczej są dostępne na zasadzie samoobsługi. Wersje zapoznawcze są udostępniane w wersji "as is" i "jako dostępne" i są wykluczone z umów dotyczących poziomu usług i ograniczonej gwarancji. Wersje zapoznawcze usługi AKS są częściowo objęte pomocą techniczną dla klientów. W związku z tym te funkcje nie są przeznaczone do użytku produkcyjnego. Aby uzyskać więcej informacji, zobacz następujące artykuły pomocy technicznej:

# Install the aks-preview extension
az extension add --name aks-preview

# Update the extension to make sure you have the latest version installed
az extension update --name aks-preview

Rejestrowanie flagi NetworkObservabilityPreview funkcji

az feature register --namespace "Microsoft.ContainerService" --name "NetworkObservabilityPreview"

Użyj polecenia az feature show , aby sprawdzić stan rejestracji flagi funkcji:

az feature show --namespace "Microsoft.ContainerService" --name "NetworkObservabilityPreview"

Poczekaj na to, aby funkcja została zarejestrowana przed rozpoczęciem pracy z artykułem.

{
  "id": "/subscriptions/23250d6d-28f0-41dd-9776-61fc80805b6e/providers/Microsoft.Features/providers/Microsoft.ContainerService/features/NetworkObservabilityPreview",
  "name": "Microsoft.ContainerService/NetworkObservabilityPreview",
  "properties": {
    "state": "Registering"
  },
  "type": "Microsoft.Features/providers/features"
}

Po zarejestrowaniu funkcji odśwież rejestrację dostawcy zasobów Microsoft.ContainerService za pomocą polecenia az provider register:

az provider register -n Microsoft.ContainerService

Tworzenie grupy zasobów

Grupa zasobów to logiczny kontener przeznaczony do wdrażania zasobów platformy Azure i zarządzania nimi. Utwórz grupę zasobów za pomocą polecenia az group create . W poniższym przykładzie pokazano tworzenie grupy zasobów o nazwie myResourceGroup w lokalizacji eastus:

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

Uwaga

W przypadku platformy Kubernetes w wersji 1.29 lub nowszej można obserwować sieć przy użyciu profilu metryk usługi AMA i flagi AFEC (NetworkObservabilityPreview), dopóki nie osiągnie ogólnej dostępności.

Począwszy od platformy Kubernetes w wersji 1.29, tag --enable-network-observability nie jest już wymagany podczas tworzenia ani aktualizowania klastra usługi Azure Kubernetes Service (AKS).

W przypadku klastrów usługi AKS z uruchomioną platformą Kubernetes w wersji 1.28 lub starszej włączenie możliwości obserwowania sieci wymaga tagu --enable-network-observability podczas tworzenia lub aktualizowania klastra.

Tworzenie klastra AKS

Utwórz klaster usługi AKS za pomocą polecenia az aks create. Poniższy przykład tworzy klaster usługi AKS o nazwie myAKSCluster w grupie zasobów myResourceGroup :

Klastry inne niż Cilium obsługują włączanie funkcji Obserwacja sieci w istniejącym klastrze lub podczas tworzenia nowego klastra.

Użyj polecenia az aks create w poniższym przykładzie, aby utworzyć klaster usługi AKS z funkcją Obserwacja sieci i bez cilium.

Nowy klaster

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 \
    --enable-network-observability

Istniejący klaster

Użyj polecenia az aks update , aby włączyć możliwość obserwowania sieci dla istniejącego klastra.

az aks update \
    --resource-group myResourceGroup \
    --name myAKSCluster \
    --enable-network-observability 

Zarządzane przez platformę Azure rozwiązania Prometheus i Grafana

Użyj poniższego przykładu, aby zainstalować i włączyć rozwiązanie Prometheus i Grafana dla klastra usługi AKS.

Tworzenie zasobu usługi Azure Monitor

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

Tworzenie wystąpienia narzędzia Grafana

Użyj polecenia az grafana create , aby utworzyć wystąpienie narzędzia Grafana. Nazwa wystąpienia narzędzia Grafana musi być unikatowa. Zastąp ciąg myGrafana unikatową nazwą wystąpienia narzędzia Grafana.

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

Umieść identyfikatory zasobów Grafana i Azure Monitor w zmiennych

Użyj polecenia az grafana show , aby umieścić identyfikator zasobu Grafana w zmiennej. Użyj polecenia az resource show , aby umieścić identyfikator zasobu usługi Azure Monitor w zmiennej. Zastąp ciąg myGrafana nazwą wystąpienia narzędzia Grafana.

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)

Użyj polecenia az aks update , aby połączyć zasoby usługi Azure Monitor i Grafana z klastrem usługi AKS.

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

Pobieranie poświadczeń klastra

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

Włączanie wizualizacji na platformie Grafana

Uwaga

W poniższej sekcji wymagane są wdrożenia zarządzane przez platformę Azure Rozwiązania Prometheus i Grafana.

  1. Użyj poniższego przykładu, aby sprawdzić, czy zasobniki usługi Azure Monitor są uruchomione.

    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. Wybierz pozycję Pulpity nawigacyjne z menu nawigacji po lewej stronie, otwórz pulpit nawigacyjny Kubernetes /Networking w obszarze Zarządzany folder Prometheus .

  3. Sprawdź, czy są widoczne metryki na pulpicie nawigacyjnym platformy Kubernetes/Networking Grafana. Jeśli metryki nie są wyświetlane, zmień zakres czasu na ostatnie 15 minut w prawym górnym polu listy rozwijanej.

Czyszczenie zasobów

Jeśli nie zamierzasz nadal korzystać z tej aplikacji, usuń klaster usługi AKS i inne zasoby utworzone w tym artykule, korzystając z następującego przykładu:

  az group delete \
    --name myResourceGroup

Następne kroki

W tym artykule z instrukcjami przedstawiono sposób instalowania i włączania funkcji obserwowania sieci usługi AKS dla klastra usługi AKS.