Monitorowanie usługi Azure Kubernetes Service
W tym artykule opisano:
- Typy danych monitorowania, które można zbierać dla tej usługi.
- Sposoby analizowania tych danych.
Uwaga
Jeśli znasz już tę usługę i/lub usługę Azure Monitor i chcesz wiedzieć, jak analizować dane monitorowania, zobacz sekcję Analizowanie pod koniec tego artykułu.
Jeśli masz krytyczne aplikacje i procesy biznesowe korzystające z zasobów platformy Azure, musisz monitorować i otrzymywać alerty dla systemu. Usługa Azure Monitor zbiera i agreguje metryki i dzienniki z każdego składnika systemu. Usługa Azure Monitor zapewnia wgląd w dostępność, wydajność i odporność oraz powiadamia o problemach. Do konfigurowania i wyświetlania danych monitorowania można użyć witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia platformy Azure, interfejsu API REST lub bibliotek klienckich.
- Aby uzyskać więcej informacji na temat usługi Azure Monitor, zobacz Omówienie usługi Azure Monitor.
- Aby uzyskać więcej informacji na temat ogólnego monitorowania zasobów platformy Azure, zobacz Monitorowanie zasobów platformy Azure za pomocą usługi Azure Monitor.
Ważne
Kubernetes to złożony system rozproszony z wieloma ruchomymi częściami. Monitorowanie na wielu poziomach jest wymagane. Mimo że usługa AKS jest zarządzaną usługą Kubernetes, ta sama rygor monitorowania na wielu poziomach jest nadal wymagana. Ten artykuł zawiera ogólne informacje i najlepsze rozwiązania dotyczące monitorowania klastra usługi AKS.
- Aby uzyskać szczegółowe informacje na temat monitorowania kompletnego stosu Kubernetes, zobacz Monitorowanie klastrów Kubernetes przy użyciu usług platformy Azure i narzędzi natywnych dla chmury.
- Aby uzyskać informacje na temat zbierania danych metryk z klastrów Kubernetes, zobacz Azure Monitor managed service for Prometheus (Usługa zarządzana usługi Azure Monitor dla rozwiązania Prometheus).
- Aby uzyskać informacje na temat zbierania dzienników w klastrach Kubernetes, zobacz Funkcje usługi Azure Monitor na potrzeby monitorowania rozwiązania Kubernetes.
- Aby uzyskać informacje na temat wizualizacji danych, zobacz Skoroszyty platformy Azure i Monitorowanie usług platformy Azure w narzędziu Grafana.
Wyniki analiz
Niektóre usługi na platformie Azure mają wbudowany pulpit nawigacyjny monitorowania w witrynie Azure Portal, który zapewnia punkt wyjścia do monitorowania usługi. Te pulpity nawigacyjne są nazywane szczegółowymi informacjami i można je znaleźć w centrum szczegółowych informacji usługi Azure Monitor w witrynie Azure Portal.
Usługa Azure Monitor Container Insights zbiera metryki niestandardowe dla węzłów, zasobników, kontenerów i woluminów trwałych. Aby uzyskać więcej informacji, zobacz Metryki zbierane przez szczegółowe informacje o kontenerze.
Usługa Azure Monitor Application Insights służy do monitorowania wydajności aplikacji (APM). Aby włączyć usługę Application Insights ze zmianami kodu, zobacz Włączanie usługi Azure Monitor OpenTelemetry. Aby włączyć usługę Application Insights bez zmian kodu, zobacz Autoinstrumentacja usługi AKS. Aby uzyskać więcej informacji na temat instrumentacji, zobacz Podstawy zbierania danych.
Dane monitorowania
Usługa AKS generuje te same rodzaje danych monitorowania co inne zasoby platformy Azure opisane w temacie Monitorowanie danych z zasobów platformy Azure. Szczegółowe informacje na temat metryk i dzienników utworzonych przez usługę AKS można znaleźć w temacie Monitoring AKS data reference (Monitorowanie danych usługi AKS). Inne usługi i funkcje platformy Azure zbierają inne dane i włączają inne opcje analizy, jak pokazano na poniższym diagramie i w poniższej tabeli.
Lokalizacja źródłowa | opis |
---|---|
Metryki platformy | Metryki platformy są automatycznie zbierane dla klastrów usługi AKS bez ponoszenia kosztów. Możesz przeanalizować te metryki za pomocą Eksploratora metryk lub użyć ich do alertów dotyczących metryk. |
Metryki rozwiązania Prometheus | Po włączeniu złomowania metryk dla klastra usługa zarządzana usługi Azure Monitor dla rozwiązania Prometheus zbiera metryki rozwiązania Prometheus i przechowuje je w obszarze roboczym usługi Azure Monitor. Analizowanie ich za pomocą wstępnie utworzonych pulpitów nawigacyjnych w narzędziu Azure Managed Grafana i alertów rozwiązania Prometheus. |
Dzienniki aktywności | Dziennik aktywności jest zbierany automatycznie dla klastrów usługi AKS bez ponoszenia kosztów. Te dzienniki śledzą informacje, takie jak po utworzeniu klastra lub zmianie konfiguracji. Aby przeanalizować je przy użyciu innych danych dziennika, wyślij dziennik aktywności do obszaru roboczego usługi Log Analytics. |
Dzienniki zasobów | Dzienniki płaszczyzny sterowania dla usługi AKS są implementowane jako dzienniki zasobów. Utwórz ustawienie diagnostyczne, aby wysłać je do obszaru roboczego usługi Log Analytics, w którym można analizować je i powiadamiać za pomocą zapytań dzienników w usłudze Log Analytics. |
Analizy kontenerów | Szczegółowe informacje o kontenerze zbierają różne dzienniki i dane wydajności z klastra, w tym strumieni stdout/stderr i przechowują je w obszarze roboczym usługi Log Analytics i metrykach usługi Azure Monitor. Przeanalizuj te dane za pomocą widoków i skoroszytów zawartych w usłudze Container Insights lub za pomocą usługi Log Analytics i eksploratora metryk. |
Szczegółowe dane dotyczące aplikacji | Usługa Azure Monitor Application Insights zbiera dzienniki, metryki i rozproszone ślady. Ta telemetria jest przechowywana w obszarze roboczym usługi Log Analytics na potrzeby analizy w witrynie Azure Portal. |
Typy zasobów
Platforma Azure używa koncepcji typów zasobów i identyfikatorów, aby zidentyfikować wszystko w subskrypcji. Typy zasobów są również częścią identyfikatorów zasobów dla każdego zasobu uruchomionego na platformie Azure. Na przykład jeden typ zasobu dla maszyny wirtualnej to Microsoft.Compute/virtualMachines
. Aby uzyskać listę usług i skojarzonych z nimi typów zasobów, zobacz Dostawcy zasobów.
Usługa Azure Monitor podobnie organizuje podstawowe dane monitorowania w metryki i dzienniki na podstawie typów zasobów, nazywanych również przestrzeniami nazw. Różne metryki i dzienniki są dostępne dla różnych typów zasobów. Usługa może być skojarzona z więcej niż jednym typem zasobu.
Aby uzyskać więcej informacji na temat typów zasobów dla usługi AKS, zobacz Azure Kubernetes Service monitoring data reference (Dokumentacja danych monitorowania usługi Azure Kubernetes Service).
Magazyn danych
W przypadku usługi Azure Monitor:
- Dane metryk są przechowywane w bazie danych metryk usługi Azure Monitor.
- Dane dziennika są przechowywane w magazynie dzienników usługi Azure Monitor. Log Analytics to narzędzie w witrynie Azure Portal, które może wykonywać zapytania dotyczące tego magazynu.
- Dziennik aktywności platformy Azure to oddzielny magazyn z własnym interfejsem w witrynie Azure Portal.
Opcjonalnie możesz kierować dane metryki i dziennika aktywności do magazynu dzienników usługi Azure Monitor. Następnie możesz użyć usługi Log Analytics, aby wykonać zapytanie o dane i skorelować je z innymi danymi dziennika.
Wiele usług może używać ustawień diagnostycznych do wysyłania danych metryk i dzienników do innych lokalizacji przechowywania poza usługą Azure Monitor. Przykłady obejmują usługę Azure Storage, hostowane systemy partnerskie i systemy partnerskie spoza platformy Azure przy użyciu usługi Event Hubs.
Aby uzyskać szczegółowe informacje na temat sposobu przechowywania danych przez usługę Azure Monitor, zobacz Azure Monitor data platformy.
Metryki platformy usługi Azure Monitor
Usługa Azure Monitor udostępnia metryki platformy dla większości usług. Te metryki to:
- Definiowane indywidualnie dla każdej przestrzeni nazw.
- Przechowywane w bazie danych metryk szeregów czasowych usługi Azure Monitor.
- Lekki i zdolny do obsługi alertów niemal w czasie rzeczywistym.
- Służy do śledzenia wydajności zasobu w czasie.
Kolekcja: usługa Azure Monitor automatycznie zbiera metryki platformy. Nie jest wymagana żadna konfiguracja.
Routing: zazwyczaj można również kierować metryki platformy do dzienników usługi Azure Monitor/ usługi Log Analytics, aby móc wykonywać zapytania względem nich przy użyciu innych danych dziennika. Aby uzyskać więcej informacji, zobacz ustawienie diagnostyczne Metryki. Aby uzyskać informacje na temat konfigurowania ustawień diagnostycznych dla usługi, zobacz Tworzenie ustawień diagnostycznych w usłudze Azure Monitor.
Aby uzyskać listę wszystkich metryk, które można zebrać dla wszystkich zasobów w usłudze Azure Monitor, zobacz Obsługiwane metryki w usłudze Azure Monitor.
Aby uzyskać listę dostępnych metryk dla usługi AKS, zobacz Dokumentacja danych monitorowania usługi Azure Kubernetes Service.
Metryki odgrywają ważną rolę w monitorowaniu klastra, identyfikowaniu problemów i optymalizowaniu wydajności w klastrach usługi AKS. Metryki platformy są przechwytywane przy użyciu gotowego serwera metryk zainstalowanego w przestrzeni nazw kube-system, która okresowo złomuje metryki ze wszystkich węzłów Kubernetes obsługiwanych przez rozwiązanie Kubelet. Należy również włączyć metryki usługi Azure Managed Prometheus w celu zbierania metryk kontenera i metryk obiektów Kubernetes, takich jak stan obiektu Wdrożenia. Aby uzyskać więcej informacji, zobacz Zbieranie metryk rozwiązania Prometheus z klastra usługi AKS.
Usługa AKS udostępnia również metryki z krytycznych składników płaszczyzny sterowania, takich jak serwer interfejsu API, ETCD, harmonogram za pośrednictwem usługi Azure Managed Prometheus. Ta funkcja jest aktualnie dostępna jako funkcja podglądu. Aby uzyskać więcej informacji, zobacz Monitorowanie metryk płaszczyzny sterowania usługi Azure Kubernetes Service (AKS) (wersja zapoznawcza).
Metryki oparte na usłudze Azure Monitor
Ta usługa udostępnia inne metryki, które nie są uwzględnione w bazie danych metryk usługi Azure Monitor.
Następujące usługi i funkcje platformy Azure usługi Azure Monitor mogą służyć do dodatkowego monitorowania klastrów Kubernetes. Te funkcje można włączyć podczas tworzenia klastra usługi AKS na karcie Integracje w witrynie Azure Portal, interfejsie wiersza polecenia platformy Azure, narzędziu Terraform, usłudze Azure Policy lub dołączeniu klastra do nich później. Każda z tych funkcji może wiązać się z kosztami, dlatego przed ich włączeniem zapoznaj się z informacjami o cenach dla każdej z nich.
Usługa/funkcja | opis |
---|---|
Szczegółowe informacje o kontenerze | Używa konteneryzowanej wersji agenta usługi Azure Monitor do zbierania dzienników stdout/stderr i zdarzeń Kubernetes z każdego węzła w klastrze. Funkcja obsługuje różne scenariusze monitorowania klastrów usługi AKS. Monitorowanie klastra usługi AKS można włączyć podczas jego tworzenia przy użyciu interfejsu wiersza polecenia platformy Azure, usługi Azure Policy, witryny Azure Portal lub narzędzia Terraform. Jeśli nie włączysz usługi Container Insights podczas tworzenia klastra, zobacz Włączanie szczegółowych informacji o kontenerze dla klastra usługi Azure Kubernetes Service (AKS), aby uzyskać inne opcje jego włączenia. Usługa Container Insights przechowuje większość swoich danych w obszarze roboczym usługi Log Analytics i zazwyczaj używasz tego samego obszaru roboczego usługi Log Analytics co dzienniki zasobów dla klastra. Zobacz Projektowanie architektury obszaru roboczego usługi Log Analytics, aby uzyskać wskazówki dotyczące liczby obszarów roboczych, których należy używać i gdzie je zlokalizować. |
Usługa zarządzana usługi Azure Monitor dla rozwiązania Prometheus | Prometheus to rozwiązanie metryk natywnych dla chmury z natywnej platformy Cloud Compute Foundation. Jest to najczęściej używane narzędzie do zbierania i analizowania danych metryk z klastrów Kubernetes. Usługa zarządzana usługi Azure Monitor dla rozwiązania Prometheus to w pełni zarządzane rozwiązanie do monitorowania zgodnego z rozwiązaniem Prometheus na platformie Azure. Jeśli nie włączysz zarządzanego rozwiązania Prometheus podczas tworzenia klastra, zobacz Zbieranie metryk rozwiązania Prometheus z klastra usługi AKS, aby uzyskać inne opcje, aby je włączyć. Usługa zarządzana usługi Azure Monitor dla rozwiązania Prometheus przechowuje swoje dane w obszarze roboczym usługi Azure Monitor połączonym z obszarem roboczym Grafana, dzięki czemu można analizować dane za pomocą usługi Azure Managed Grafana. |
Azure Managed Grafana | W pełni zarządzana implementacja narzędzia Grafana, która jest platformą wizualizacji danych typu open source, często używaną do prezentowania danych Rozwiązania Prometheus. Do monitorowania platformy Kubernetes i rozwiązywania problemów z pełnym stosem jest dostępnych wiele wstępnie zdefiniowanych pulpitów nawigacyjnych narzędzia Grafana. Jeśli nie włączysz zarządzanej aplikacji Grafana podczas tworzenia klastra, zobacz Łączenie obszaru roboczego narzędzia Grafana. Możesz połączyć go z obszarem roboczym usługi Azure Monitor, aby uzyskać dostęp do metryk rozwiązania Prometheus dla klastra. |
Monitorowanie metryk płaszczyzny sterowania usługi AKS (wersja zapoznawcza)
W tej sekcji pokazano, jak używać funkcji metryk płaszczyzny sterowania (wersja zapoznawcza). Zbierz metryki z płaszczyzny sterowania i wyświetl dane telemetryczne w usłudze Azure Monitor. Funkcja metryk płaszczyzny sterowania jest w pełni zgodna z rozwiązaniami Prometheus i Grafana. Funkcja zapewnia lepszy wgląd w dostępność i wydajność składników płaszczyzny sterowania, takich jak serwer interfejsu API, ETCD, Harmonogram, Autoscaler i menedżer kontrolera. Możesz użyć tych metryk, aby zmaksymalizować ogólną możliwość obserwacji i utrzymać doskonałość operacyjną dla klastra usługi AKS.
Wymagania wstępne i ograniczenia
- Metryki płaszczyzny sterowania (wersja zapoznawcza) obsługują tylko usługę zarządzaną usługi Azure Monitor dla rozwiązania Prometheus.
- Łącze prywatne nie jest obsługiwane.
- Możesz dostosować tylko domyślną metrykę ama-metrics-settings-config-map. Wszystkie inne dostosowania nie są obsługiwane.
- Klaster usługi AKS musi używać uwierzytelniania tożsamości zarządzanej.
Instalowanie rozszerzenia aks-preview
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:
Zainstaluj lub zaktualizuj rozszerzenie interfejsu wiersza polecenia platformy
aks-preview
Azure przy użyciuaz extension add
polecenia lubaz extension update
.# Install the aks-preview extension az extension add --name aks-preview # Update the aks-preview extension az extension update --name aks-preview
Rejestrowanie flagi AzureMonitorMetricsControlPlanePreview
Zarejestruj flagę
AzureMonitorMetricsControlPlanePreview
funkcji przy użyciuaz feature register
polecenia .az feature register --namespace "Microsoft.ContainerService" --name "AzureMonitorMetricsControlPlanePreview"
Wyświetlenie stanu Zarejestrowane trwa kilka minut.
Sprawdź stan rejestracji przy użyciu
az feature show
polecenia .az feature show --namespace "Microsoft.ContainerService" --name "AzureMonitorMetricsControlPlanePreview"
Gdy stan będzie odzwierciedlał wartość Zarejestrowano, odśwież rejestrację dostawcy zasobów Microsoft.ContainerService przy użyciu
az provider register
polecenia .az provider register --namespace "Microsoft.ContainerService"
Włączanie metryk płaszczyzny sterowania w klastrze usługi AKS
Metryki płaszczyzny sterowania można włączyć za pomocą usługi zarządzanej Azure Monitor dla dodatku Prometheus podczas tworzenia nowego klastra lub aktualizowania istniejącego klastra.
Włącz metryki płaszczyzny sterowania w nowym klastrze usługi AKS:
Aby zebrać metryki rozwiązania Prometheus z klastra Kubernetes, zobacz Enable Prometheus and Grafana for AKS clusters (Włączanie klastrów Prometheus i Grafana dla klastrów usługi AKS) i postępuj zgodnie z instrukcjami na karcie interfejsu wiersza polecenia dla klastra usługi AKS.
Włączanie metryk płaszczyzny sterowania w istniejącym klastrze usługi AKS
Jeśli klaster ma już dodatek Prometheus, zaktualizuj klaster, aby upewnić się, że zacznie zbierać metryki płaszczyzny sterowania przy użyciu
az aks update
polecenia .az aks update --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP
Uwaga
W przeciwieństwie do metryk zebranych z węzłów klastra metryki płaszczyzny sterowania są zbierane przez składnik, który nie jest częścią dodatku ama-metrics . Włączenie AzureMonitorMetricsControlPlanePreview
flagi funkcji i zarządzanego dodatku Prometheus zapewnia zbieranie metryk płaszczyzny sterowania. Po włączeniu zbierania metryk może upłynąć kilka minut, aby dane pojawiły się w obszarze roboczym.
Metryki płaszczyzny sterowania zapytaniami
Metryki płaszczyzny sterowania są przechowywane w obszarze roboczym usługi Azure Monitor w regionie klastra. Możesz wykonywać zapytania dotyczące metryk bezpośrednio z obszaru roboczego lub za pośrednictwem wystąpienia zarządzanego przez platformę Azure Grafana połączonego z obszarem roboczym.
Aby wyświetlić metryki płaszczyzny sterowania w obszarze roboczym usługi Azure Monitor, wykonaj następujące czynności:
W witrynie Azure Portal przejdź do klastra usługi AKS.
W obszarze Monitorowanie wybierz pozycję Analizy.
Uwaga
Usługa AKS udostępnia szablony pulpitów nawigacyjnych, które ułatwiają wyświetlanie i analizowanie danych telemetrycznych płaszczyzny sterowania w czasie rzeczywistym. Jeśli używasz narzędzia Grafana zarządzanego przez platformę Azure do wizualizacji danych, możesz zaimportować następujące pulpity nawigacyjne:
Dostosowywanie metryk płaszczyzny sterowania
Usługa AKS zawiera wstępnie skonfigurowany zestaw metryk do zbierania i przechowywania dla każdego składnika. API server
i etcd
są domyślnie włączone. Tę listę można dostosować za pomocą elementu ama-settings-configmap
.
Domyślne obiekty docelowe obejmują następujące wartości:
controlplane-apiserver = true
controlplane-cluster-autoscaler = false
controlplane-kube-scheduler = false
controlplane-kube-controller-manager = false
controlplane-etcd = true
Wszystkie ConfigMaps powinny być stosowane do kube-system
przestrzeni nazw dla dowolnego klastra.
Aby uzyskać więcej informacji na temat minimal-ingestion
metryk profilu, zobacz Minimalny profil pozyskiwania metryk płaszczyzny sterowania w zarządzanym rozwiązaniu Prometheus.
Pozyskiwanie tylko minimalnych metryk z domyślnych miejsc docelowych
Podczas ustawiania parametru
default-targets-metrics-keep-list.minimalIngestionProfile="true"
tylko minimalny zestaw metryk jest pozyskiwany dla każdego z domyślnych obiektów docelowych:controlplane-apiserver
icontrolplane-etcd
.Pozyskiwanie wszystkich metryk ze wszystkich miejsc docelowych
Zbierz wszystkie metryki ze wszystkich obiektów docelowych w klastrze, wykonując następujące kroki:
Pobierz plik ConfigMap ama-metrics-settings-configmap.yaml i zmień jego nazwę na
configmap-controlplane.yaml
.Ustaw wartość
minimalingestionprofile = false
.W obszarze
default-scrape-settings-enabled
sprawdź, czy obiekty docelowe, które chcesz zeskrobać, są ustawione natrue
. Jedynymi miejscami docelowymi, które można określić, są:controlplane-apiserver
, ,controlplane-cluster-autoscaler
controlplane-kube-scheduler
,controlplane-kube-controller-manager
icontrolplane-etcd
.Zastosuj ConfigMap przy użyciu
kubectl apply
polecenia .kubectl apply -f configmap-controlplane.yaml
Po zastosowaniu konfiguracji może upłynąć kilka minut, zanim metryki z określonych obiektów docelowych zostaną zeskromione z płaszczyzny sterowania w obszarze roboczym usługi Azure Monitor.
Pozyskiwanie kilku innych metryk oprócz minimalnych metryk
To
minimal ingestion profile
ustawienie pomaga zmniejszyć ilość metryk pozyskiwania, ponieważ zbiera tylko metryki używane domyślnie na pulpitach nawigacyjnych, domyślne reguły rejestrowania i są zbierane alerty domyślne. Aby dostosować to ustawienie, wykonaj następujące kroki:Pobierz plik ConfigMap ama-metrics-settings-configmap i zmień jego nazwę na
configmap-controlplane.yaml
.Ustaw wartość
minimalingestionprofile = true
.W obszarze
default-scrape-settings-enabled
sprawdź, czy obiekty docelowe, które chcesz zeskrobać, są ustawione natrue
. Jedynymi miejscami docelowymi, które można określić, są:controlplane-apiserver
, ,controlplane-cluster-autoscaler
controlplane-kube-scheduler
,controlplane-kube-controller-manager
icontrolplane-etcd
.W obszarze
default-targets-metrics-keep-list
określ listę metryk dlatrue
celów. Na przykład:controlplane-apiserver= "apiserver_admission_webhook_admission_duration_seconds| apiserver_longrunning_requests"
Zastosuj ConfigMap przy użyciu
kubectl apply
polecenia .kubectl apply -f configmap-controlplane.yaml
Po zastosowaniu konfiguracji może upłynąć kilka minut, zanim metryki z określonych obiektów docelowych zostaną zeskromione z płaszczyzny sterowania w obszarze roboczym usługi Azure Monitor.
Pozyskiwanie tylko określonych metryk z niektórych miejsc docelowych
Pobierz plik ConfigMap ama-metrics-settings-configmap i zmień jego nazwę na
configmap-controlplane.yaml
.Ustaw wartość
minimalingestionprofile = false
.W obszarze
default-scrape-settings-enabled
sprawdź, czy obiekty docelowe, które chcesz zeskrobać, są ustawione natrue
. Jedynymi miejscami docelowymi, które można określić w tym miejscu, sącontrolplane-apiserver
: ,controlplane-cluster-autoscaler
,controlplane-kube-scheduler
,controlplane-kube-controller-manager
icontrolplane-etcd
.W obszarze
default-targets-metrics-keep-list
określ listę metryk dlatrue
celów. Na przykład:controlplane-apiserver= "apiserver_admission_webhook_admission_duration_seconds| apiserver_longrunning_requests"
Zastosuj ConfigMap przy użyciu
kubectl apply
polecenia .kubectl apply -f configmap-controlplane.yaml
Po zastosowaniu konfiguracji może upłynąć kilka minut, zanim metryki z określonych obiektów docelowych zostaną zeskromione z płaszczyzny sterowania w obszarze roboczym usługi Azure Monitor.
Rozwiązywanie problemów z metrykami płaszczyzny sterowania
Upewnij się, że flaga AzureMonitorMetricsControlPlanePreview
funkcji jest włączona, a ama-metrics
zasobniki są uruchomione.
Uwaga
Metody rozwiązywania problemów z usługą zarządzaną platformy Azure Prometheus nie są tutaj bezpośrednio tłumaczone, ponieważ składniki złomujące płaszczyznę sterowania nie są obecne w zarządzanym dodatku Prometheus.
Formatowanie ConfigMap
Upewnij się, że używasz odpowiedniego formatowania w ConfigMap i że pola, w szczególności
default-targets-metrics-keep-list
,minimal-ingestion-profile
idefault-scrape-settings-enabled
, są poprawnie wypełnione ich zamierzonymi wartościami.Izolowanie płaszczyzny sterowania z płaszczyzny danych
Zacznij od ustawienia niektórych metryk
true
powiązanych z węzłem i sprawdź, czy metryki są przekazywane do obszaru roboczego. Pomaga to określić, czy problem jest specyficzny dla metryk płaszczyzny kontroli.Pozyskane zdarzenia
Po zastosowaniu zmian możesz otworzyć Eksploratora metryk na stronie przeglądu usługi Azure Monitor lub w sekcji Monitorowanie wybranego klastra i sprawdzić wzrost lub spadek liczby zdarzeń pozyskanych na minutę. Powinno to pomóc w ustaleniu, czy brakuje określonej metryki, czy brakuje wszystkich metryk.
Określona metryka nie jest uwidoczniona
Istnieją przypadki, w których metryki są udokumentowane, ale nie są widoczne z miejsca docelowego i nie są przekazywane do obszaru roboczego usługi Azure Monitor. W takim przypadku należy sprawdzić, czy inne metryki są przekazywane do obszaru roboczego.
Brak dostępu do obszaru roboczego usługi Azure Monitor
Po włączeniu dodatku możesz określić istniejący obszar roboczy, do którego nie masz dostępu. W takim przypadku może się wydawać, że metryki nie są zbierane i przekazywane. Upewnij się, że utworzono nowy obszar roboczy podczas włączania dodatku lub podczas tworzenia klastra.
Wyłączanie metryk płaszczyzny sterowania w klastrze usługi AKS
Metryki płaszczyzny sterowania można wyłączyć w dowolnym momencie, wyłączając zarządzany dodatek Prometheus i wyrejestrując flagę AzureMonitorMetricsControlPlanePreview
funkcji.
Usuń dodatek metryk, który złomuje metryki Prometheus przy użyciu
az aks update
polecenia .az aks update --disable-azure-monitor-metrics --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP
Wyłącz złomowanie metryk płaszczyzny sterowania w klastrze usługi AKS, wyrejestrując flagę
AzureMonitorMetricsControlPlanePreview
funkcji przy użyciuaz feature unregister
polecenia .az feature unregister "Microsoft.ContainerService" --name "AzureMonitorMetricsControlPlanePreview"
Często zadawane pytania
Czy mogę zeskrobać metryki płaszczyzny sterowania z własnym hostem Prometheus?
Nie, obecnie nie można złomować metryk płaszczyzny sterowania z własnym hostem Prometheus. Self hosted Prometheus może tylko zeskrobać pojedyncze wystąpienie w zależności od modułu równoważenia obciążenia. Metryki nie są niezawodne, ponieważ często istnieje wiele replik metryk płaszczyzny sterowania są widoczne tylko za pośrednictwem zarządzanego rozwiązania Prometheus
Dlaczego agent użytkownika nie jest dostępny za pośrednictwem metryk płaszczyzny sterowania?
Metryki płaszczyzny sterowania na platformie Kubernetes nie mają agenta użytkownika. Agent użytkownika jest dostępny tylko za pośrednictwem dzienników płaszczyzny sterowania dostępnych w ustawieniach diagnostycznych.
Dzienniki zasobów usługi Azure Monitor
Dzienniki zasobów zapewniają wgląd w operacje wykonywane przez zasób platformy Azure. Dzienniki są generowane automatycznie, ale należy skierować je do dzienników usługi Azure Monitor, aby je zapisać lub wysłać do nich zapytanie. Dzienniki są zorganizowane w kategoriach. Dana przestrzeń nazw może mieć wiele kategorii dziennika zasobów.
Kolekcja: dzienniki zasobów nie są zbierane i przechowywane do momentu utworzenia ustawienia diagnostycznego i kierowania dzienników do co najmniej jednej lokalizacji. Podczas tworzenia ustawienia diagnostycznego należy określić kategorie dzienników, które mają być zbierane. Istnieje wiele sposobów tworzenia i konserwacji ustawień diagnostycznych, w tym witryny Azure Portal, programowo i choć usługi Azure Policy.
Routing: sugerowaną wartością domyślną jest kierowanie dzienników zasobów do dzienników usługi Azure Monitor, co umożliwia wykonywanie zapytań względem nich przy użyciu innych danych dziennika. Dostępne są również inne lokalizacje, takie jak Azure Storage, Azure Event Hubs i niektórzy partnerzy monitorowania firmy Microsoft. Aby uzyskać więcej informacji, zobacz Dzienniki zasobów platformy Azure i lokalizacje docelowe dziennika zasobów.
Aby uzyskać szczegółowe informacje na temat zbierania, przechowywania i routingu dzienników zasobów, zobacz Ustawienia diagnostyczne w usłudze Azure Monitor.
Aby uzyskać listę wszystkich dostępnych kategorii dzienników zasobów w usłudze Azure Monitor, zobacz Obsługiwane dzienniki zasobów w usłudze Azure Monitor.
Wszystkie dzienniki zasobów w usłudze Azure Monitor mają te same pola nagłówka, a następnie pola specyficzne dla usługi. Typowy schemat jest opisany w schemacie dziennika zasobów usługi Azure Monitor.
Aby uzyskać dostępne kategorie dzienników zasobów, skojarzone z nimi tabele usługi Log Analytics i schematy dzienników dla usługi AKS, zobacz Dokumentacja danych monitorowania usługi Azure Kubernetes Service.
Dzienniki płaszczyzny sterowania/zasobu usługi AKS
Dzienniki płaszczyzny sterowania dla klastrów usługi AKS są implementowane jako dzienniki zasobów w usłudze Azure Monitor. Dzienniki zasobów nie są zbierane i przechowywane do momentu utworzenia ustawienia diagnostycznego w celu kierowania ich do co najmniej jednej lokalizacji. Zazwyczaj są one wysyłane do obszaru roboczego usługi Log Analytics, w którym jest przechowywana większość danych usługi Container Insights.
Zobacz Tworzenie ustawień diagnostycznych dla szczegółowego procesu tworzenia ustawienia diagnostycznego przy użyciu witryny Azure Portal, interfejsu wiersza polecenia lub programu PowerShell. Podczas tworzenia ustawienia diagnostycznego należy określić kategorie dzienników, które mają być zbierane. Kategorie usługi AKS są wymienione w dokumentacji danych monitorowania usługi AKS.
Ważne
W przypadku zbierania dzienników zasobów dla usługi AKS może wystąpić znaczny koszt, szczególnie w przypadku dzienników inspekcji kube-audit . Rozważ następujące zalecenia, aby zmniejszyć ilość zebranych danych:
- Wyłącz rejestrowanie kube-audit, jeśli nie jest to wymagane.
- Włącz zbieranie z usługi kube-audit-admin, która wyklucza zdarzenia pobierania i wyświetlania listy zdarzeń inspekcji.
- Włącz dzienniki specyficzne dla zasobów zgodnie z opisem w tym miejscu i skonfiguruj
AKSAudit
tabelę jako podstawowe dzienniki.
Zobacz Monitorowanie klastrów Kubernetes przy użyciu usług platformy Azure i narzędzi natywnych dla chmury, aby uzyskać więcej zaleceń i optymalizacji kosztów oraz usługi Azure Monitor , aby uzyskać dalsze strategie zmniejszenia kosztów monitorowania.
Usługa AKS obsługuje tryb diagnostyki platformy Azure lub tryb specyficzny dla zasobów dla dzienników zasobów. Ten tryb określa tabele w obszarze roboczym usługi Log Analytics, w którym są wysyłane dane. Tryb diagnostyki platformy Azure wysyła wszystkie dane do tabeli AzureDiagnostics, podczas gdy tryb specyficzny dla zasobu wysyła dane do usługi AKS Audit, AKS Audit Admin i AKS Control Plane, jak pokazano w tabeli w obszarze Dzienniki zasobów.
Tryb specyficzny dla zasobu jest zalecany dla usługi AKS z następujących powodów:
- Dane są łatwiejsze do wykonywania zapytań, ponieważ są w poszczególnych tabelach przeznaczonych dla usługi AKS.
- Obsługuje konfigurację jako podstawowe dzienniki w celu uzyskania znaczących oszczędności kosztów.
Aby uzyskać więcej informacji na temat różnic między trybami kolekcji, w tym sposób zmiany istniejącego ustawienia, zobacz Wybieranie trybu zbierania.
Uwaga
Można również skonfigurować ustawienia diagnostyczne za pomocą interfejsu wiersza polecenia. W takich przypadkach nie ma gwarancji, że działa pomyślnie, ponieważ nie sprawdza stanu aprowizacji klastra. Pamiętaj, aby sprawdzić ustawienia diagnostyczne klastra, aby odzwierciedlić je po skonfigurowaniu.
az monitor diagnostic-settings create --name AKS-Diagnostics --resource /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myresourcegroup/providers/Microsoft.ContainerService/managedClusters/my-cluster --logs '[{"category": "kube-audit","enabled": true}, {"category": "kube-audit-admin", "enabled": true}, {"category": "kube-apiserver", "enabled": true}, {"category": "kube-controller-manager", "enabled": true}, {"category": "kube-scheduler", "enabled": true}, {"category": "cluster-autoscaler", "enabled": true}, {"category": "cloud-controller-manager", "enabled": true}, {"category": "guard", "enabled": true}, {"category": "csi-azuredisk-controller", "enabled": true}, {"category": "csi-azurefile-controller", "enabled": true}, {"category": "csi-snapshot-controller", "enabled": true}]' --workspace /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/myresourcegroup/providers/microsoft.operationalinsights/workspaces/myworkspace --export-to-resource-specific true
Przykładowe zapytania dziennika
Ważne
Po wybraniu pozycji Dzienniki z menu klastra usługi AKS usługa Log Analytics zostanie otwarta z zakresem zapytania ustawionym na bieżący klaster. Oznacza to, że zapytania dziennika będą zawierać tylko dane z tego zasobu. Jeśli chcesz uruchomić zapytanie zawierające dane z innych klastrów lub danych z innych usług platformy Azure, wybierz pozycję Dzienniki z menu usługi Azure Monitor . Aby uzyskać szczegółowe informacje, zobacz Zakres zapytań dzienników i zakres czasu w usłudze Azure Monitor Log Analytics .
Jeśli ustawienie diagnostyczne klastra używa trybu diagnostyki platformy Azure, dzienniki zasobów dla usługi AKS są przechowywane w tabeli AzureDiagnostics. Różne dzienniki można odróżnić od kolumny Kategoria . Opis każdej kategorii można znaleźć w artykule AKS reference resource logs (Dzienniki zasobów referencyjnych usługi AKS).
opis | Zapytanie dziennika |
---|---|
Zlicz dzienniki dla każdej kategorii (Tryb diagnostyki platformy Azure) |
AzureDiagnostics | where ResourceType == "MANAGEDCLUSTERS" | summarize count() by Category |
Wszystkie dzienniki serwera interfejsu API (Tryb diagnostyki platformy Azure) |
AzureDiagnostics | where Category == "kube-apiserver" |
Wszystkie dzienniki kube-audit w zakresie czasu (Tryb diagnostyki platformy Azure) |
let starttime = datetime("2023-02-23"); let endtime = datetime("2023-02-24"); AzureDiagnostics | gdzie TimeGenerated between(starttime.. endtime) | where Category == "kube-audit" | extend event = parse_json(log_s) | extend HttpMethod = tostring(event.verb) | extend User = tostring(event.user.username) | extend Apiserver = pod_s | extend SourceIP = tostring(event.sourceIPs[0]) | project TimeGenerated, Category, HttpMethod, User, Apiserver, SourceIP, OperationName, event |
Wszystkie dzienniki inspekcji (tryb specyficzny dla zasobu) |
AKSAudit |
Wszystkie dzienniki inspekcji z wyłączeniem zdarzeń pobierania i wyświetlania listy zdarzeń inspekcji (tryb specyficzny dla zasobu) |
AKSAuditAdmin |
Wszystkie dzienniki serwera interfejsu API (tryb specyficzny dla zasobu) |
AKSControlPlane | where Category == "kube-apiserver" |
Aby uzyskać dostęp do zestawu wstępnie utworzonych zapytań w obszarze roboczym usługi Log Analytics, zobacz interfejs zapytań usługi Log Analytics i wybierz typ zasobu Kubernetes Services. Aby uzyskać listę typowych zapytań dotyczących szczegółowych informacji o kontenerze, zobacz Zapytania usługi Container Insights.
Płaszczyzna danych usługi AKS/dzienniki usługi Container Insights
Usługa Container Insights zbiera różne typy danych telemetrycznych z kontenerów i klastrów Kubernetes, aby ułatwić monitorowanie, rozwiązywanie problemów i uzyskiwanie wglądu w konteneryzowane aplikacje działające w klastrach usługi AKS. Aby uzyskać listę tabel i ich szczegółowe opisy używane przez usługę Container Insights, zobacz dokumentację tabeli usługi Azure Monitor. Wszystkie te tabele są dostępne dla zapytań dzienników.
Ustawienia optymalizacji kosztów umożliwiają dostosowywanie i kontrolowanie danych metryk zebranych za pośrednictwem agenta usługi Container Insights. Ta funkcja obsługuje ustawienia zbierania danych dla poszczególnych opcji tabeli, interwałów zbierania danych i przestrzeni nazw w celu wykluczenia zbierania danych za pomocą reguł zbierania danych (DCR) usługi Azure Monitor. Te ustawienia kontrolują ilość pozyskiwania i zmniejszają koszty monitorowania szczegółowych informacji o kontenerach. Szczegółowe informacje o kontenerach Zebrane dane można dostosować za pomocą witryny Azure Portal, korzystając z następujących opcji. Wybranie wszystkich opcji innych niż Wszystkie (domyślne) prowadzi do niedostępności środowiska szczegółowych informacji o kontenerze.
Grupowanie | Tabele | Uwagi |
---|---|---|
Wszystkie (ustawienie domyślne) | Wszystkie standardowe tabele szczegółowych informacji o kontenerach | Wymagane do włączenia domyślnych wizualizacji szczegółowych informacji o kontenerach |
Wydajność | Perf, InsightsMetrics | |
Dzienniki i zdarzenia | ContainerLog lub ContainerLogV2, KubeEvents, KubePodInventory | Zalecane, jeśli włączono zarządzane metryki rozwiązania Prometheus |
Obciążenia, wdrożenia i hpa | InsightsMetrics, KubePodInventory, KubeEvents, ContainerInventory, ContainerNodeInventory, KubeNodeInventory, KubeServices | |
Trwałe woluminy | InsightsMetrics, KubePVInventory |
Grupowanie dzienników i zdarzeń przechwytuje dzienniki z tabel ContainerLog lub ContainerLogV2, KubeEvents, KubePodInventory, ale nie z metryk. Zalecaną ścieżką do zbierania metryk jest włączenie usługi zarządzanej usługi Azure Monitor Prometheus dla rozwiązania Prometheus z klastra usługi AKS oraz użycie narzędzia Azure Managed Grafana na potrzeby wizualizacji danych. Aby uzyskać więcej informacji, zobacz Zarządzanie obszarem roboczym usługi Azure Monitor.
Schemat ContainerLogV2
Usługa Azure Monitor Container Insights udostępnia schemat dzienników kontenerów znany jako ContainerLogV2, co jest zalecaną opcją. Ten format zawiera następujące pola, które ułatwiają typowe zapytania dotyczące wyświetlania danych związanych z usługami AKS i klastrami Kubernetes z obsługą usługi Azure Arc:
- NazwaKontenera
- Nazwa zasobnika
- PodNamespace
Ponadto ten schemat jest zgodny z planem danych dzienników podstawowych, który oferuje tanią alternatywę dla standardowych dzienników analitycznych. Podstawowy plan danych dziennika pozwala zaoszczędzić na kosztach pozyskiwania i przechowywania pełnych dzienników w obszarze roboczym usługi Log Analytics na potrzeby debugowania, rozwiązywania problemów i inspekcji. Nie ma to wpływu na koszty analizy i alertów. Aby uzyskać więcej informacji, zobacz Zarządzanie tabelami w obszarze roboczym usługi Log Analytics.
KontenerLogV2 jest zalecanym podejściem i jest domyślnym schematem dla klientów dołączania szczegółowych informacji o kontenerze przy użyciu uwierzytelniania tożsamości zarządzanej przy użyciu usługi ARM, Bicep, Terraform, Zasad i witryny Azure Portal. Aby uzyskać więcej informacji na temat włączania konteneraLogV2 za pomocą reguły zbierania danych klastra (DCR) lub ConfigMap, zobacz Włączanie schematu ContainerLogV2.
Dziennik aktywności platformy Azure
Dziennik aktywności zawiera zdarzenia na poziomie subskrypcji, które śledzą operacje dla każdego zasobu platformy Azure widoczne spoza tego zasobu; na przykład utworzenie nowego zasobu lub uruchomienie maszyny wirtualnej.
Kolekcja: zdarzenia dziennika aktywności są generowane automatycznie i zbierane w osobnym magazynie do wyświetlania w witrynie Azure Portal.
Routing: możesz wysyłać dane dziennika aktywności do dzienników usługi Azure Monitor, aby móc analizować je wraz z innymi danymi dziennika. Dostępne są również inne lokalizacje, takie jak Azure Storage, Azure Event Hubs i niektórzy partnerzy monitorowania firmy Microsoft. Aby uzyskać więcej informacji na temat kierowania dziennika aktywności, zobacz Omówienie dziennika aktywności platformy Azure.
Wyświetlanie dzienników, zdarzeń i zasobników usługi Azure Kubernetes Service (AKS) w czasie rzeczywistym
W tej sekcji dowiesz się, jak używać funkcji danych na żywo w usłudze Container Insights do wyświetlania dzienników kontenerów, zdarzeń i zasobników usługi Azure Kubernetes Service (AKS) w czasie rzeczywistym. Ta funkcja zapewnia bezpośredni dostęp do kubectl logs -c
zdarzeń i kubectl get
kubectl top pods
ułatwia rozwiązywanie problemów w czasie rzeczywistym.
Uwaga
Usługa AKS używa architektur rejestrowania na poziomie klastra Kubernetes. Dzienniki kontenera znajdują się wewnątrz /var/log/containers
węzła. Aby uzyskać dostęp do węzła, zobacz Nawiązywanie połączenia z węzłami klastra usługi Azure Kubernetes Service (AKS).
Aby uzyskać pomoc dotyczącą konfigurowania funkcji danych na żywo, zobacz Konfigurowanie danych na żywo w usłudze Container Insights. Ta funkcja uzyskuje bezpośredni dostęp do interfejsu API platformy Kubernetes. Aby uzyskać więcej informacji na temat modelu uwierzytelniania, zobacz Interfejs API platformy Kubernetes.
Wyświetlanie dzienników na żywo zasobów usługi AKS
Uwaga
Aby uzyskać dostęp do dzienników z klastra prywatnego, musisz być na maszynie w tej samej sieci prywatnej co klaster.
W witrynie Azure Portal przejdź do klastra usługi AKS.
W obszarze Zasoby kubernetes wybierz pozycję Obciążenia.
Wybierz pozycję Wdrożenie, Zasobnik, Zestaw replik, Zestaw stanowy, Zadanie lub Zadanie Cron, dla którego chcesz wyświetlić dzienniki, a następnie wybierz pozycję Dzienniki aktywne.
Wybierz zasób, dla którego chcesz wyświetlić dzienniki.
W poniższym przykładzie przedstawiono dzienniki zasobu zasobnika:
Wyświetlanie dzienników na żywo
Dane dziennika w czasie rzeczywistym można wyświetlać, gdy aparat kontenera generuje je w klastrze, węzłach, kontrolerach lub kontenerach.
W witrynie Azure Portal przejdź do klastra usługi AKS.
W obszarze Monitorowanie wybierz pozycję Analizy.
Wybierz kartę Klaster, Węzły, Kontrolery lub Kontenery, a następnie wybierz obiekt, dla którego chcesz wyświetlić dzienniki.
W obszarze Przegląd zasobu wybierz pozycję Dzienniki na żywo.
Uwaga
Aby wyświetlić dane z obszaru roboczego usługi Log Analytics, wybierz pozycję Wyświetl dzienniki w usłudze Log Analytics. Aby dowiedzieć się więcej na temat wyświetlania dzienników historycznych, zdarzeń i metryk, zobacz Jak wykonywać zapytania o dzienniki z usługi Container Insights.
Po pomyślnym uwierzytelnieniu, jeśli dane można pobrać, rozpoczyna przesyłanie strumieniowe na kartę Dzienniki na żywo. Dane dziennika można wyświetlić tutaj w strumieniu ciągłym. Na poniższej ilustracji przedstawiono dzienniki zasobu kontenera:
Wyświetlanie wydarzeń na żywo
Dane zdarzeń w czasie rzeczywistym można wyświetlać, gdy aparat kontenera generuje je w klastrze, węzłach, kontrolerach lub kontenerach.
W witrynie Azure Portal przejdź do klastra usługi AKS.
W obszarze Monitorowanie wybierz pozycję Analizy.
Wybierz kartę Klaster, Węzły, Kontrolery lub Kontenery, a następnie wybierz obiekt, dla którego chcesz wyświetlić zdarzenia.
Na stronie Przegląd zasobu wybierz pozycję Wydarzenia na żywo.
Uwaga
Aby wyświetlić dane z obszaru roboczego usługi Log Analytics, wybierz pozycję Wyświetl zdarzenia w usłudze Log Analytics. Aby dowiedzieć się więcej na temat wyświetlania dzienników historycznych, zdarzeń i metryk, zobacz Jak wykonywać zapytania o dzienniki z usługi Container Insights.
Po pomyślnym uwierzytelnieniu, jeśli dane można pobrać, rozpoczyna przesyłanie strumieniowe na kartę Wydarzenia na żywo. Na poniższej ilustracji przedstawiono zdarzenia dla zasobu kontenera:
Wyświetlanie metryk
Dane metryk w czasie rzeczywistym można wyświetlać, gdy aparat kontenera generuje je w węzłach lub kontrolerach , wybierając zasób Zasobnik .
W witrynie Azure Portal przejdź do klastra usługi AKS.
W obszarze Monitorowanie wybierz pozycję Analizy.
Wybierz kartę Węzły lub kontrolery, a następnie wybierz obiekt Zasobnik, dla którego chcesz wyświetlić metryki.
Na stronie Przegląd zasobu wybierz pozycję Metryki na żywo.
Uwaga
Aby wyświetlić dane z obszaru roboczego usługi Log Analytics, wybierz pozycję Wyświetl zdarzenia w usłudze Log Analytics. Aby dowiedzieć się więcej na temat wyświetlania dzienników historycznych, zdarzeń i metryk, zobacz Jak wykonywać zapytania o dzienniki z usługi Container Insights.
Po pomyślnym uwierzytelnieniu, jeśli dane można pobrać, rozpoczyna przesyłanie strumieniowe na kartę Metryki na żywo. Na poniższej ilustracji przedstawiono metryki zasobu zasobnika:
Analizowanie danych monitorowania
Istnieje wiele narzędzi do analizowania danych monitorowania.
Narzędzia usługi Azure Monitor
Usługa Azure Monitor obsługuje następujące podstawowe narzędzia:
Eksplorator metryk — narzędzie w witrynie Azure Portal, które umożliwia wyświetlanie i analizowanie metryk dla zasobów platformy Azure. Aby uzyskać więcej informacji, zobacz Analizowanie metryk za pomocą Eksploratora metryk usługi Azure Monitor.
Log Analytics — narzędzie w witrynie Azure Portal, które umożliwia wykonywanie zapytań i analizowanie danych dzienników przy użyciu języka zapytań Kusto (KQL). Aby uzyskać więcej informacji, zobacz Rozpoczynanie pracy z zapytaniami dzienników w usłudze Azure Monitor.
Dziennik aktywności, który zawiera interfejs użytkownika w witrynie Azure Portal do wyświetlania i podstawowych wyszukiwań. Aby przeprowadzić bardziej szczegółową analizę, musisz kierować dane do dzienników usługi Azure Monitor i uruchamiać bardziej złożone zapytania w usłudze Log Analytics.
Narzędzia, które umożliwiają bardziej złożoną wizualizację, obejmują:
- Pulpity nawigacyjne, które umożliwiają łączenie różnych rodzajów danych w jednym okienku w witrynie Azure Portal.
- Skoroszyty, dostosowywalne raporty, które można utworzyć w witrynie Azure Portal. Skoroszyty mogą zawierać tekst, metryki i zapytania dziennika.
- Grafana to otwarte narzędzie platformy, które wyróżnia się na operacyjnych pulpitach nawigacyjnych. Za pomocą narzędzia Grafana można tworzyć pulpity nawigacyjne zawierające dane z wielu źródeł innych niż usługa Azure Monitor.
- Power BI, usługa analizy biznesowej, która udostępnia interaktywne wizualizacje w różnych źródłach danych. Usługę Power BI można skonfigurować tak, aby automatycznie importować dane dziennika z usługi Azure Monitor, aby korzystać z tych wizualizacji.
Narzędzia eksportu usługi Azure Monitor
Dane z usługi Azure Monitor można pobrać do innych narzędzi przy użyciu następujących metod:
Metryki: użyj interfejsu API REST dla metryk , aby wyodrębnić dane metryk z bazy danych metryk usługi Azure Monitor. Interfejs API obsługuje wyrażenia filtrów w celu uściślinia pobranych danych. Aby uzyskać więcej informacji, zobacz Dokumentacja interfejsu API REST usługi Azure Monitor.
Dzienniki: użyj interfejsu API REST lub skojarzonych bibliotek klienckich.
Aby rozpocząć pracę z interfejsem API REST dla usługi Azure Monitor, zobacz Przewodnik po interfejsie API REST monitorowania platformy Azure.
Strona przeglądu monitorowania w witrynie Azure Portal
Karta Monitorowanie na stronie Przegląd zasobu klastra usługi AKS umożliwia szybkie rozpoczęcie wyświetlania danych monitorowania w witrynie Azure Portal. Ta karta zawiera wykresy z typowymi metrykami dla klastra oddzielonego pulą węzłów. Możesz wybrać dowolny z tych wykresów, aby dokładniej analizować dane w Eksploratorze metryk.
Karta Monitorowanie zawiera również linki do zarządzanego rozwiązania Prometheus i usługi Container Insights dla klastra. Jeśli musisz włączyć te narzędzia, możesz je włączyć tutaj. W górnej części ekranu może również zostać wyświetlony baner z zaleceniem włączenia innych funkcji w celu ulepszenia monitorowania klastra.
Napiwek
Aby uzyskać dostęp do funkcji monitorowania dla wszystkich klastrów usługi AKS w ramach subskrypcji, wybierz pozycję Azure Monitor na stronie głównej witryny Azure Portal.
Zapytania usługi Kusto
Dane monitorowania można analizować w magazynie dzienników usługi Azure Monitor /Log Analytics przy użyciu języka zapytań Kusto (KQL).
Ważne
Po wybraniu pozycji Dzienniki z menu usługi w portalu usługa Log Analytics zostanie otwarta z zakresem zapytania ustawionym na bieżącą usługę. Ten zakres oznacza, że zapytania dziennika będą zawierać tylko dane z tego typu zasobu. Jeśli chcesz uruchomić zapytanie zawierające dane z innych usług platformy Azure, wybierz pozycję Dzienniki z menu usługi Azure Monitor . Aby uzyskać szczegółowe informacje, zobacz Zakres zapytań dzienników i zakres czasu w usłudze Azure Monitor Log Analytics .
Aby uzyskać listę typowych zapytań dotyczących dowolnej usługi, zobacz interfejs zapytań usługi Log Analytics.
Alerty
Alerty usługi Azure Monitor proaktywnie powiadamiają o znalezieniu określonych warunków w danych monitorowania. Alerty umożliwiają identyfikowanie i rozwiązywanie problemów w systemie przed ich zauważeniem przez klientów. Aby uzyskać więcej informacji, zobacz Alerty usługi Azure Monitor.
Istnieje wiele źródeł typowych alertów dotyczących zasobów platformy Azure. Przykłady typowych alertów dotyczących zasobów platformy Azure można znaleźć w temacie Przykładowe zapytania alertów dziennika. Witryna Alerty bazowe usługi Azure Monitor (AMBA) udostępnia częściowo zautomatyzowaną metodę implementowania ważnych alertów metryk platformy, pulpitów nawigacyjnych i wytycznych. Witryna ma zastosowanie do stale powiększającego się podzestawu usług platformy Azure, w tym wszystkich usług, które są częścią strefy docelowej platformy Azure (ALZ).
Typowy schemat alertu standandaryzuje użycie powiadomień o alertach usługi Azure Monitor. Aby uzyskać więcej informacji, zobacz Wspólny schemat alertów.
Typy alertów
Możesz otrzymywać alerty dotyczące dowolnej metryki lub źródła danych dziennika na platformie danych usługi Azure Monitor. Istnieje wiele różnych typów alertów w zależności od usług, które monitorujesz i zbieranych danych monitorowania. Różne typy alertów mają różne zalety i wady. Aby uzyskać więcej informacji, zobacz Wybieranie odpowiedniego typu alertu monitorowania.
Poniższa lista zawiera opis typów alertów usługi Azure Monitor, które można utworzyć:
- Alerty metryk oceniają metryki zasobów w regularnych odstępach czasu. Metryki mogą być metrykami platformy, metrykami niestandardowymi, dziennikami z usługi Azure Monitor przekonwertowanym na metryki lub metrykami usługi Application Insights. Alerty metryk mogą również stosować wiele warunków i progów dynamicznych.
- Alerty dzienników umożliwiają użytkownikom używanie zapytania usługi Log Analytics do oceny dzienników zasobów z wstępnie zdefiniowaną częstotliwością.
- Alerty dziennika aktywności są wyzwalane, gdy wystąpi nowe zdarzenie dziennika aktywności zgodne ze zdefiniowanymi warunkami. Alerty usługi Resource Health i alerty usługi Service Health to alerty dziennika aktywności, które zgłaszają kondycję usługi i zasobów.
Niektóre usługi platformy Azure obsługują również alerty wykrywania inteligentnego, alerty Prometheus lub zalecane reguły alertów.
W przypadku niektórych usług można monitorować na dużą skalę, stosując tę samą regułę alertu metryki do wielu zasobów tego samego typu, które istnieją w tym samym regionie świadczenia usługi Azure. Poszczególne powiadomienia są wysyłane dla każdego monitorowanego zasobu. Aby uzyskać informacje o obsługiwanych usługach i chmurach platformy Azure, zobacz Monitorowanie wielu zasobów przy użyciu jednej reguły alertu.
Zalecane reguły alertów
W przypadku niektórych usług platformy Azure możesz włączyć zalecane gotowe reguły alertów.
System kompiluje listę zalecanych reguł alertów na podstawie:
- Wiedza dostawcy zasobów na temat ważnych sygnałów i progów monitorowania zasobu.
- Dane, które informują o tym, co klienci często ostrzegają o tym zasobie.
Uwaga
Zalecane reguły alertów są dostępne dla:
- Maszyny wirtualne
- Zasoby usługi Azure Kubernetes Service (AKS)
- Obszary robocze usługi Log Analytics
Alerty oparte na metrykach rozwiązania Prometheus
Po włączeniu zbierania metryk rozwiązania Prometheus dla klastra możesz pobrać kolekcję zalecanych reguł alertów Rozwiązania Prometheus. Ten plik do pobrania zawiera następujące reguły:
Poziom | Alerty |
---|---|
Na poziomie klastra | KubeCPUQuotaOvercommit KubeMemoryQuotaOvercommit KubeContainerOOMKilledCount KubeClientErrors KubePersistentVolumeFillingUp KubePersistentVolumeInodesFillingUp KubePersistentVolumeErrors KubeContainerWaiting KubeDaemonSetNotScheduled KubeDaemonSetMisScheduled KubeQuotaAlmostFull |
Poziom węzła | KubeNodeUnreachable KubeNodeReadinessFlapping |
Poziom zasobnika | KubePVUsageHigh KubeDeploymentReplicasMismatch KubeStatefulSetReplicasMismatch KubeHpaReplicasMismatch KubeHpaMaxedOut KubePodCrashLooping KubeJobStale KubePodContainerRestart KubePodReadyStateLow KubePodFailedState KubePodNotReadyByController KubeStatefulSetGenerationMismatch KubeJobFailed KubeContainerAverageCPUHigh KubeContainerAverageMemoryHigh KubeletPodStartUpLatencyHigh |
Zobacz How to create log alerts from Container Insights and How to query logs from Container Insights (Jak tworzyć alerty dzienników z usługi Container Insights) i How to query logs from Container Insights (Jak tworzyć alerty dzienników z usługi Container Insights) i How to query logs from Container Alerty dzienników mogą mierzyć dwie różne rzeczy, które mogą służyć do monitorowania w różnych scenariuszach:
- Liczba wyników: zlicza liczbę wierszy zwracanych przez zapytanie i może służyć do pracy ze zdarzeniami, takimi jak dzienniki zdarzeń systemu Windows, dziennik syslog i wyjątki aplikacji.
- Obliczanie wartości: tworzy obliczenie na podstawie kolumny liczbowej i może służyć do uwzględnienia dowolnej liczby zasobów. Przykładem jest procent procesora CPU.
W zależności od wymaganego scenariusza zgłaszania alertów należy utworzyć zapytania dziennika porównujące wartość DateTime z bieżącą godziną przy użyciu now
operatora i wracając o jedną godzinę. Aby dowiedzieć się, jak tworzyć alerty oparte na dzienniku, zobacz Tworzenie alertów dzienników na podstawie szczegółowych informacji o kontenerze.
Reguły alertów usługi AKS
W poniższej tabeli wymieniono sugerowane reguły alertów dla usługi AKS. Te alerty są tylko przykładami. Alerty można ustawić dla dowolnej metryki, wpisu dziennika lub wpisu dziennika aktywności wymienionego w dokumentacji danych monitorowania usługi Azure Kubernetes Service.
Warunek | opis |
---|---|
Procent > użycia procesora CPU 95 | Uruchamia się, gdy średnie użycie procesora CPU we wszystkich węzłach przekracza próg. |
Procent pracy > zestawu roboczego pamięci 100 | Uruchamia się, gdy średni zestaw roboczy we wszystkich węzłach przekracza próg. |
Zalecenia doradcy
W przypadku niektórych usług, jeśli podczas operacji zasobów wystąpią krytyczne warunki lub nieuchronne zmiany, na stronie Przegląd usługi w portalu zostanie wyświetlony alert. Więcej informacji i zalecanych poprawek alertu można znaleźć w temacie Zalecenia usługi Advisor w obszarze Monitorowanie w menu po lewej stronie. Podczas normalnych operacji nie są wyświetlane żadne zalecenia doradcy.
Aby uzyskać więcej informacji na temat usługi Azure Advisor, zobacz Omówienie usługi Azure Advisor.
Uwaga
Jeśli tworzysz lub uruchamiasz aplikację działającą w usłudze, usługa Azure Monitor application insights może oferować więcej typów alertów.
Obserwowanie sieci
Obserwowanie sieci jest ważną częścią utrzymania klastra Kubernetes w dobrej kondycji i wydajnego. Zbierając i analizując dane dotyczące ruchu sieciowego, możesz uzyskać wgląd w sposób działania klastra i zidentyfikować potencjalne problemy, zanim spowodują awarie lub spadek wydajności.
Po włączeniu dodatku Do obserwacji sieci zbiera i konwertuje przydatne metryki na format Prometheus, który można zwizualizować w narzędziu Grafana. Po włączeniu zebrane metryki są automatycznie pozyskiwane do usługi zarządzanej Azure Monitor dla rozwiązania Prometheus. Pulpit nawigacyjny narzędzia Grafana jest dostępny w publicznym repozytorium pulpitu nawigacyjnego Grafana w celu wizualizacji metryk widoczności sieci zebranych przez rozwiązanie Prometheus. Aby uzyskać więcej informacji, zobacz Konfiguracja obserwacji sieci, aby uzyskać szczegółowe instrukcje.
Powiązana zawartość
- Zobacz Dokumentację danych monitorowania usługi Azure Kubernetes Service, aby zapoznać się z dokumentacją metryk, dzienników i innych ważnych wartości utworzonych dla usługi AKS.
- Zobacz Monitorowanie zasobów platformy Azure za pomocą usługi Azure Monitor , aby uzyskać ogólne informacje na temat monitorowania zasobów platformy Azure.
Azure Kubernetes Service