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
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
Użyj środowiska powłoki Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Szybki start dotyczący powłoki Bash w usłudze Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.
Po wyświetleniu monitu zainstaluj rozszerzenie interfejsu wiersza polecenia platformy Azure podczas pierwszego użycia. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Korzystanie z rozszerzeń w interfejsie wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
- 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)
Łączenie usług Azure Monitor i Grafana z klastrem usługi AKS
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.
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
Wybierz pozycję Pulpity nawigacyjne z menu nawigacji po lewej stronie, otwórz pulpit nawigacyjny Kubernetes /Networking w obszarze Zarządzany folder Prometheus .
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.
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)?.
Aby utworzyć klaster usługi AKS z funkcją obserwowania sieci i rozwiązania BYO Prometheus i Grafana, zobacz Setup Network Observability for Azure Kubernetes Service (AKS) BYO Prometheus and Grafana (Setup Network Observability for Azure Kubernetes Service (AKS) BYO Prometheus and Grafana (Setup Network Observability for Azure Kubernetes Service (AKS) BYO Prometheus and Grafana (Konfigurowanie obserwowania sieci w usłudze Azure Kubernetes Service (AKS).