Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Platforma Kubernetes to złożony, rozproszony system. Wdrożenie platformy Kubernetes należy monitorować na wielu poziomach. Mimo że usługa Azure Kubernetes Service (AKS) jest zarządzaną usługą Kubernetes, ten sam rygor jest wymagany do monitorowania wdrożenia na wielu poziomach. Ten artykuł zawiera ogólne informacje i najlepsze praktyki dotyczące monitorowania klastra 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 zebrać dane metryk z klastrów Kubernetes, zobacz Managed service for Prometheus in Azure Monitor (Usługa zarządzana dla rozwiązania Prometheus w usłudze Azure Monitor).
- 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.
Napiwek
Aby skonfigurować monitorowanie w klastrach usługi AKS w witrynie Azure Portal, możesz użyć rozwiązania Microsoft Copilot na platformie Azure. Aby uzyskać więcej informacji, zobacz Praca z klastrami AKS wydajnie przy użyciu rozwiązania Microsoft Copilot na platformie Azure.
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 Container Insights w usłudze Azure Monitor zbiera niestandardowe metryki dla węzłów, zasobników, kontenerów i woluminów trwałych. Aby uzyskać więcej informacji, zobacz Metryki zbierane przez Container insights.
Usługa Application Insights ułatwia monitorowanie wydajności aplikacji. 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 AKS. Aby uzyskać więcej informacji na temat instrumentacji, dowiedz się więcej o podstawach zbierania danych.
Dane monitorowania
Usługa AKS generuje te same rodzaje danych monitorowania co inne zasoby platformy Azure, zgodnie z opisem w temacie Monitorowanie danych z zasobów platformy Azure. Aby uzyskać szczegółowe informacje na temat metryk i dzienników utworzonych przez usługę AKS, zobacz dokumentację dotyczącą danych monitorowania 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.
Źródło | opis |
---|---|
Metryki platformy | Metryki usługi platformy są automatycznie zbierane dla klastrów AKS bez ponoszenia kosztów. Możesz przeanalizować te metryki przy użyciu Eksploratora metryk lub użyć ich do tworzenia alertów metryk. |
Metryki Prometheusa | Po włączeniu zbierania metryk dla klastra zarządzana usługa dla Prometheus w Azure Monitor zbiera metryki Prometheus i przechowuje je w obszarze roboczym Azure Monitor. Przeanalizuj te metryki przy użyciu gotowych pulpitów nawigacyjnych w Azure Managed Grafana i alertów Prometheus. |
Dzienniki aktywności | Dziennik aktywności usługi Azure Monitor automatycznie zbiera niektóre dane dla klastrów usługi AKS bez ponoszenia kosztów. Te pliki dziennika śledzą informacje, takie jak po utworzeniu klastra lub wprowadzeniu zmian w konfiguracji klastra. Aby analizować dane dziennika aktywności przy użyciu innych danych dziennika, wyślij dane dziennika 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 wysyłać dzienniki do obszaru roboczego usługi Log Analytics. W obszarze roboczym można analizować dzienniki przy użyciu zapytań i konfigurować alerty na podstawie informacji dziennika. |
Analizy kontenerów | Usługa Container Insights zbiera różne dzienniki i dane wydajności z klastra i przechowuje je w obszarze roboczym usługi Log Analytics i w metrykach usługi Azure Monitor. Analizowanie danych takich jak strumienie stdout i stderr za pomocą widoków i skoroszytów w Container Insights lub poprzez Log Analytics oraz eksplorator metryk. |
Application Insights | Application Insights, funkcja usługi Azure Monitor, zbiera dzienniki, metryki i rozproszone ślady. Dane telemetryczne są przechowywane 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, zwanych także 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 w usłudze AKS, zobacz dokumentację dotyczącą danych monitorowania usługi AKS.
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 przekierować dane dotyczące metryk 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: Azure Monitor automatycznie zbiera metryki platformy. Nie jest wymagana żadna konfiguracja.
Routing: możesz również kierować niektóre 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. Sprawdź ustawienie eksportu DS dla każdej metryki, aby sprawdzić, czy możesz użyć ustawienia diagnostycznego, aby kierować metrykę do dzienników usługi Azure Monitor/ usługi Log Analytics.
- Aby uzyskać więcej informacji, zobacz ustawienie diagnostyczne Metryki.
- Aby skonfigurować ustawienia diagnostyczne 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ę metryk, które można zbierać dla usługi AKS, zobacz dokumentację danych monitorowania usługi AKS.
Metryki odgrywają ważną rolę w monitorowaniu klastrów, identyfikowaniu problemów i optymalizowaniu wydajności w klastrach AKS. Metryki platformy są przechwytywane przy użyciu standardowego serwera metryk zainstalowanego w kube-system
przestrzeni nazw, który okresowo pobiera metryki ze wszystkich węzłów AKS obsługiwanych przez narzędzie kubelet. Należy również włączyć usługę zarządzaną dla metryk rozwiązania Prometheus w celu zbierania metryk kontenera i metryk obiektów Kubernetes, w tym stanu wdrożenia obiektu.
Możesz wyświetlić listę domyślnych usług zarządzanych dla metryk Rozwiązania Prometheus.
Aby uzyskać więcej informacji, zobacz Zbieranie zarządzanej usługi dla metryk Prometheus z klastra AKS.
Usługa AKS udostępnia również metryki z krytycznych składników płaszczyzny sterowania, takich jak serwer interfejsu API itp., oraz harmonogram za pośrednictwem usługi zarządzanej dla rozwiązania Prometheus. Obecnie ta funkcja jest dostępna w wersji zapoznawczej. Aby uzyskać więcej informacji, zobacz Monitorowanie metryk płaszczyzny sterowania usługi AKS (wersja zapoznawcza). Podzestaw metryk płaszczyzny sterowania dla serwera interfejsu API itp. jest dostępny bezpłatnie za pośrednictwem metryk platformy usługi Azure Monitor. Metryki są zbierane domyślnie i można użyć metryk do tworzenia alertów opartych na metrykach.
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.
Do monitorowania klastrów usługi AKS można użyć następujących usług platformy Azure i funkcji usługi Azure Monitor. Włączasz te funkcje podczas tworzenia klastra usługi AKS.
W witrynie Azure Portal użyj karty Integracje lub użyj interfejsu wiersza polecenia platformy Azure, narzędzia Terraform lub usługi Azure Policy. W niektórych przypadkach można dołączyć klaster do usługi monitorowania lub funkcji po utworzeniu klastra. Każda usługa lub funkcja może ponieść koszty, dlatego przed jej włączeniem zobacz informacje o cenach dla każdego składnika.
Usługa lub funkcja | opis |
---|---|
Szczegółowe informacje o kontenerze | Używa konteneryzowanej wersji agenta usługi Azure Monitor do zbierania stdout i stderr rejestrowania 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 AKS, aby poznać inne opcje włączenia.Usługa Container Insights przechowuje większość swoich danych w obszarze roboczym usługi Log Analytics. Zazwyczaj używasz tego samego obszaru roboczego usługi Log Analytics co dzienniki zasobów dla klastra. Aby uzyskać wskazówki dotyczące liczby obszarów roboczych, których należy używać i gdzie je zlokalizować, zobacz Projektowanie architektury obszaru roboczego usługi Log Analytics. |
Usługa zarządzana dla rozwiązania Prometheus w usłudze Azure Monitor |
Prometheus to rozwiązanie metryk chmurowych opracowane przez Cloud Native Computing Foundation. Jest to najczęściej używane narzędzie do zbierania i analizowania danych metryk z klastrów Kubernetes. Zarządzana usługa dla Prometheus w usłudze Azure Monitor to w pełni zarządzana usługa monitorowania zgodna z Prometheus. Jeśli nie włączysz usługi zarządzanej dla rozwiązania Prometheus podczas tworzenia klastra, zobacz Zbieranie metryk rozwiązania Prometheus z klastra usługi AKS , aby uzyskać inne opcje jej włączenia. Zarządzana usługa prometheus w usłudze Azure Monitor przechowuje swoje dane w obszarze roboczym usługi Azure Monitorpołączonym z obszarem roboczym narzędzia Grafana. Do analizowania danych można użyć narzędzia Azure Managed Grafana. |
Azure Managed Grafana | W pełni zarządzana implementacja Grafana. Grafana to platforma wizualizacji danych typu open source, która jest często używana do prezentowania danych Rozwiązania Prometheus. Do monitorowania Kubernetes i rozwiązywania problemów z całym stosie technologicznym dostępnych jest wiele wstępnie zdefiniowanych pulpitów nawigacyjnych Grafana. Jeśli nie włączysz narzędzia Azure Managed Grafana podczas tworzenia klastra, zobacz Łączenie obszaru roboczego Grafana. Możesz połączyć go z obszarem roboczym usługi Azure Monitor, aby uzyskać dostęp do metryk rozwiązania Prometheus z klastra. |
Monitorowanie metryk płaszczyzny sterowania AKS (wersja zapoznawcza)
Usługa AKS udostępnia również metryki z krytycznych składników płaszczyzny sterowania, takich jak serwer interfejsu API itp., oraz harmonogram za pośrednictwem usługi zarządzanej dla rozwiązania Prometheus w usłudze Azure Monitor. Obecnie ta funkcja jest dostępna w wersji zapoznawczej. Aby uzyskać więcej informacji, zobacz Monitorowanie metryk płaszczyzny sterowania usługi AKS. Podzestaw metryk płaszczyzny sterowania dla serwera interfejsu API itp. jest dostępny bezpłatnie za pośrednictwem metryk platformy usługi Azure Monitor. Te metryki są domyślnie zbierane. Metryki umożliwiają tworzenie alertów.
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 za pomocą portalu Azure, programistycznie oraz przez 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 dokumentację dotyczącą danych monitorowania usługi AKS.
Dzienniki zasobów płaszczyzny sterowania usługi AKS
Dzienniki płaszczyzny kontrolnej 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 dzienniki zasobów są wysyłane do obszaru roboczego usługi Log Analytics, w którym są przechowywane większość danych dla usługi Container Insights.
Aby dowiedzieć się, jak utworzyć ustawienie diagnostyczne przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell, zobacz Tworzenie ustawień diagnostycznych. 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.
Ostrzeżenie
Można ponieść znaczne koszty, zbierając dzienniki zasobów dla usługi AKS, szczególnie w odniesieniu do dzienników kube-audit. Rozważ następujące zalecenia, aby zmniejszyć ilość zebranych danych:
- Wyłącz
kube-audit
rejestrowanie, gdy nie jest to wymagane. - Włącz zbieranie z
kube-audit-admin
, które wyklucza zdarzeniaget
ilist
inspekcji. - Włącz dzienniki specyficzne dla zasobów zgodnie z opisem w tym artykule i skonfiguruj tabelę AKSAudit jako dzienniki podstawowe.
Aby uzyskać więcej zaleceń dotyczących monitorowania, zobacz Monitorowanie klastrów usługi AKS przy użyciu usług platformy Azure i narzędzi natywnych dla chmury. Aby uzyskać strategie zmniejszenia kosztów monitorowania, zobacz Optymalizacja kosztów i Usługa Azure Monitor.
Usługa AKS obsługuje tryb diagnostyki platformy Azure lub tryb specyficzny dla zasobów dla dzienników zasobów. Tryb diagnostyki platformy Azure wysyła wszystkie dane do tabeli AzureDiagnostics. Tryb specyficzny dla zasobu określa tabele w obszarze roboczym usługi Log Analytics, w którym są wysyłane dane. Wysyła również dane do AKSAudit
, AKSAuditAdmin
i AKSControlPlane
, jak pokazano w tabeli w dziennikach zasobów.
Zalecamy używanie trybu specyficznego dla zasobów dla usługi AKS z następujących powodów:
- Dane są łatwiejsze do wykonywania zapytań, ponieważ znajdują się w poszczególnych tabelach przeznaczonych dla usługi AKS.
- Tryb specyficzny dla zasobów umożliwia konfigurację jako dzienniki podstawowe, co pozwala na znaczne 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
Ustawienia diagnostyczne można skonfigurować przy użyciu interfejsu wiersza polecenia platformy Azure. Takie podejście nie gwarantuje sukcesu, ponieważ nie sprawdza stanu wdrożenia klastra. Po zmianie ustawień diagnostycznych upewnij się, że klaster odzwierciedla zmiany ustawień.
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 w menu klastra usługi AKS usługa Log Analytics zostanie otwarta z zakresem zapytania ustawionym na bieżący klaster. Zapytania dziennika obejmują tylko dane z tego zasobu. Aby uruchomić zapytanie zawierające dane z innych klastrów lub danych z innych usług platformy Azure, w menu usługi Azure Monitor wybierz pozycję Dzienniki. Aby uzyskać więcej informacji, zobacz Zakres zapytań dzienników i zakres czasu w usłudze Log Analytics.
Jeśli ustawienia diagnostyczne klastra korzystają z trybu diagnostyki platformy Azure, dzienniki zasobów dla usługi AKS są przechowywane w tabeli AzureDiagnostics . Zidentyfikuj dzienniki za pomocą kolumny Kategoria . Opis każdej kategorii znajduje się w artykule Dzienniki zasobów referencyjnych usługi AKS.
opis | Zapytanie logów |
---|---|
Zlicz logi 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 logi kube-audit w przedziale czasowym (Tryb diagnostyki platformy Azure) |
let starttime = datetime("2023-02-23"); let endtime = datetime("2023-02-24"); AzureDiagnostics | where 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 audytu z wyłączeniem zdarzeń audytu get i list (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 Usługi Kubernetes Services . Aby uzyskać listę typowych zapytań dotyczących szczegółowych informacji o kontenerze, zobacz Zapytania usługi Container Insights.
Dzienniki usługi Azure Container Insights płaszczyzny danych usługi AKS
Usługa Container Insights zbiera różne typy danych telemetrycznych z kontenerów i klastrów usługi AKS, 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 Container insights, zobacz odniesienie do tabel Azure Monitor. Wszystkie tabele są dostępne dla zapytań dzienników.
Użyj ustawień optymalizacji kosztów , aby dostosować i kontrolować dane metryk zebranych za pośrednictwem agenta usługi Container Insights. Ta funkcja obsługuje ustawienia zbierania danych dla poszczególnych wyborów tabel, 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 usługi Container Insights. Dane monitorowania kontenerów zebrane w portalu Azure można dostosować, korzystając z poniższych opcji. Wybranie wszystkich opcji innych niż Wszystkie (domyślne) sprawia, że środowisko analizy kontenera jest niedostępne.
Grupowanie | Tabele | Uwagi |
---|---|---|
Wszystkie (ustawienie domyślne) | Wszystkie standardowe tabele usługi Container Insights | Wymagane do włączenia domyślnych wizualizacji usługi Container Insights. |
Wydajność | Perf, InsightsMetrics | |
Dzienniki i zdarzenia | ContainerLog lub ContainerLogV2, KubeEvents, KubePodInventory | Zalecane, jeśli włączono usługę zarządzaną dla metryk Prometheus. |
Obciążenia, wdrożenia i HPA | InsightsMetrics, KubePodInventory, KubeEvents, ContainerInventory, ContainerNodeInventory, KubeNodeInventory, KubeServices | |
Woluminy trwałe | InsightsMetrics, KubePVInventory |
Grupowanie dzienników i zdarzeń przechwytuje dzienniki z tabel ContainerLog lub ContainerLogV2, KubeEvents i KubePodInventory, ale nie z metryk. Zalecaną ścieżką do zbierania metryk jest włączenie usługi zarządzanej dla rozwiązania Prometheus z klastra usługi AKS i użycie narzędzia Azure Managed Grafana do wizualizacji danych. Aby uzyskać więcej informacji, zobacz Zarządzanie obszarem roboczym usługi Azure Monitor.
Schemat ContainerLogV2
Usługa Container Insights w usłudze Azure Monitor udostępnia zalecany schemat dzienników kontenerów ContainerLogV2. Format zawiera następujące pola dla typowych zapytań umożliwiających wyświetlanie danych związanych z usługami AKS i klastrami Kubernetes z obsługą usługi Azure Arc:
- ContainerName
- Nazwa zasobnika
- PodNamespace
Ten schemat jest zgodny z planem danych tabeli dzienników podstawowych , który oferuje tanią alternatywę dla standardowych dzienników analitycznych. Użyj planu danych tabeli dzienników podstawowych, aby zaoszczędzić na kosztach pozyskiwania i przechowywania dużych ilości 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.
Zalecamy użycie domyślnego schematu ContainerLogV2 w przypadku dołączania usługi Container Insights za pośrednictwem uwierzytelniania tożsamości zarządzanej przy użyciu szablonu Azure Resource Manager (ARM), Bicep, Terraform, Azure Policy lub portalu Azure. Aby uzyskać więcej informacji na temat włączania ContainerLogV2 przez kontroler DCR klastra 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 kontenerów, zdarzeń i podów usługi AKS w czasie rzeczywistym
Funkcja danych na żywo w Container Insights umożliwia wyświetlanie dzienników kontenerów, zdarzeń oraz metryk podów AKS. Uzyskaj bezpośredni dostęp do kubectl logs -c
, wydarzeń kubectl get
i kubectl top pods
, aby ułatwić rozwiązywanie problemów w czasie rzeczywistym.
Uwaga
Usługa AKS używa architektur rejestrowania na poziomie klastra Kubernetes. Dzienniki kontenera znajdują się na /var/log/containers
na węźle. Aby uzyskać dostęp do węzła, zobacz Łączenie z węzłami klastra usługi AKS.
Aby dowiedzieć się, jak skonfigurować tę funkcję, zobacz Konfigurowanie danych na żywo w usłudze Container Insights. 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, należy użyć komputera, który znajduje się w tej samej sieci prywatnej co klaster.
- W portalu Azure przejdź do klastra AKS.
- W obszarze Zasoby kubernetes wybierz pozycję Obciążenia.
- Dla Wdrożenie, Pod, Zestaw replik, Zestaw z zachowaniem stanu, Zadanie lub Zadanie Cron, wybierz wartość, a następnie wybierz pozycję Dzienniki na żywo.
- Wybierz dziennik zasobów do wyświetlenia.
W poniższym przykładzie przedstawiono dzienniki zasobu podu:
Wyświetlanie dzienników na żywo
Dane dziennika w czasie rzeczywistym można wyświetlać, gdy aparat kontenera generuje je na karcie Klaster, Węzły, Kontrolery lub Kontenery.
- W portalu Azure przejdź do klastra AKS.
- W obszarze Monitorowanie wybierz pozycję Analizy.
- Na karcie Klaster, Węzły, Kontrolery lub Kontenery wybierz wartość.
- W okienku 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 Zapytywanie dzienników z usługi Container Insights.
Po pomyślnym uwierzytelnieniu, jeśli dane można pobrać, rozpoczyna się przesyłanie strumieniowe na kartę Rejestry na żywo. Dane dziennika są wyświetlane tutaj w ciągłym strumieniu.
Na poniższej ilustracji przedstawiono dzienniki zasobu kontenera:
Wyświetlanie wydarzeń na żywo
Dane zdarzeń w czasie rzeczywistym można oglądać, gdy silnik kontenerów generuje je na karcie Klaster, Węzły, Kontrolery lub Kontenery.
- W portalu Azure przejdź do klastra AKS.
- W obszarze Monitorowanie wybierz pozycję Analizy.
- Wybierz kartę Klaster, Węzły, Kontrolery lub Kontenery , a następnie wybierz obiekt.
- W okienku 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 Zapytywanie dzienników z usługi Container Insights.
Po pomyślnym uwierzytelnieniu, jeśli dane można odzyskać, rozpoczyna się przesyłanie strumieniowe na kartę Wydarzenia na żywo. Na poniższej ilustracji przedstawiono zdarzenia dla zasobu typu kontener:
Wyświetlanie metryk
Dane metryk w czasie rzeczywistym można wyświetlać, gdy silnik kontenera je generuje, na karcie Węzły lub Kontrolery, wybierając zasób poda.
- W portalu Azure przejdź do klastra AKS.
- W obszarze Monitorowanie wybierz pozycję Analizy.
- Wybierz kartę Węzły lub Kontrolery, a następnie wybierz obiekt podu.
- W okienku 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 Zapytywanie dzienników z usługi Container Insights.
Po pomyślnym uwierzytelnieniu, jeśli można uzyskać dostęp do danych, rozpoczyna się ich przesyłanie strumieniowe do karty Metryki na żywo. Na poniższym obrazku przedstawiono metryki dla 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 portalu Azure, które umożliwia wyświetlanie i analizowanie metryk dla zasobów 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 portalu Azure 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 narzędzie otwartej platformy, które wyróżnia się w tworzeniu operacyjnych pulpitów 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.
Monitorowanie za pośrednictwem okienka przeglądu w witrynie Azure Portal
Karta Monitorowanie w okienku 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 usługi zarządzanej platformy Azure dla rozwiązania Prometheus i usługi Container Insights dla klastra. Te narzędzia można włączyć na karcie Monitorowanie . W górnej części okienka może również zostać wyświetlony baner, który zaleca inne funkcje w celu ulepszenia monitorowania klastra.
Napiwek
Aby uzyskać dostęp do funkcji monitorowania dla wszystkich klastrów usługi AKS w ramach subskrypcji, na stronie głównej witryny Azure Portal wybierz pozycję Azure Monitor.
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 dziennika dotyczących zasobów platformy Azure można znaleźć w temacie Przykładowe zapytania alertów. Witryna Azure Monitor Baseline Alerts (AMBA) udostępnia częściowo zautomatyzowaną metodę wdrażania ważnych alertów metryk platformy, dashboardów 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 dotyczące 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 dla metryk mogą także stosować wiele warunków i zmienne progi.
- 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 metrycznego do wielu zasobów tego samego typu w tym samym regionie Azure. Poszczególne powiadomienia są wysyłane dla każdego monitorowanego zasobu. Aby uzyskać informacje o obsługiwanych usługach i chmurach platformy Azure, zapoznaj się z 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 zgłaszają jako problem z tym zasobem.
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 zarządzanej usługi Prometheus dla klastra możesz pobrać kolekcję zalecanych reguł alertów zarządzanej usługi Prometheus.
Pobieranie 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 modułu | KubePVUsageHigh KubeDeploymentReplicasMismatch KubeStatefulSetReplicasMismatch KubeHpaReplicasMismatch KubeHpaMaxedOut KubePodCrashLooping KubeJobStale KubePodContainerRestart KubePodReadyStateLow KubePodFailedState KubePodNotReadyByController KubeStatefulSetGenerationMismatch KubeJobFailed KubeContainerAverageCPUHigh KubeContainerAverageMemoryHigh KubeletPodStartUpLatencyHigh |
Aby uzyskać więcej informacji, zobacz Tworzenie alertów dzienników na podstawie szczegółowych informacji o kontenerze oraz Zapytania o dzienniki z usługi Container Insights.
Alerty dzienników mogą mierzyć dwa typy informacji, aby ułatwić monitorowanie różnych scenariuszy:
- Liczba wyników: zlicza liczbę wierszy zwracanych przez zapytanie. Te informacje umożliwiają pracę z zdarzeniami, takimi jak dzienniki zdarzeń systemu Windows, zdarzenia dziennika systemu i wyjątki aplikacji.
- Obliczanie wartości: wykonuje obliczenia na podstawie kolumny liczbowej. Skorzystaj z tych informacji, aby uwzględnić różne zasoby. Przykładem jest wykorzystanie CPU w procentach.
Większość zapytań dziennika porównuje wartość DateTime
z bieżącym czasem, używając operatora now
i wracając o jedną godzinę. Aby dowiedzieć się, jak tworzyć alerty oparte na dziennikach, zobacz Tworzenie alertów na podstawie dzienników w Container insights.
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 AKS.
Warunek | opis |
---|---|
Procent >użycia procesora CPU95 | Alerty, gdy średnie użycie CPU we wszystkich węzłach przekracza próg. |
Procent użycia pamięci roboczej>100 | Powiadamia, gdy średni zestaw roboczy na 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.
Metryki sieci węzła
Metryki sieci węzłów mają kluczowe znaczenie dla utrzymania klastra Kubernetes w dobrej kondycji i wydajności. Zbierając i analizując dane dotyczące ruchu sieciowego, możesz uzyskać cenne informacje o operacji klastra i zidentyfikować potencjalne problemy, zanim doprowadzą one do awarii lub utraty wydajności.
W usłudze Kubernetes w wersji 1.29 lub nowszej metryki sieci węzłów są domyślnie włączone dla wszystkich klastrów z włączoną usługą Azure Monitor.
Następujące metryki sieciowe węzła są domyślnie włączone i są agregowane na węzeł. Wszystkie metryki zawierają etykiety: klaster oraz instancja (nazwa węzła). Te metryki można łatwo wyświetlić, korzystając z pulpitu nawigacyjnego Zarządzany Grafana w sekcji Azure Managed Prometheus>Kubernetes>Sieci>Klastry.
Metryki na poziomie węzła
Następujące metryki są agregowane na każdy węzeł.
Wszystkie metryki obejmują następujące etykiety:
cluster
-
instance
(nazwa węzła)
W przypadku scenariuszy płaszczyzny danych Cilium funkcja obserwacji sieci kontenerów udostępnia metryki tylko dla systemu Linux. Obecnie system Windows nie jest obsługiwany w przypadku metryk obserwacji sieci kontenerów.
Cilium udostępnia kilka metryk, które wykorzystuje obserwowalność sieci kontenerów.
Nazwa metryki | opis | Dodatkowe etykiety | Linux | Windows |
---|---|---|---|---|
cilium_forward_count_total | Łączna liczba przekazanych pakietów | direction |
✅ | ❌ |
cilium_forward_bytes_total | Łączna liczba przekazanych bajtów | direction |
✅ | ❌ |
cilium_drop_count_total | Łączna liczba porzuconych pakietów |
direction , reason |
✅ | ❌ |
cilium_drop_bytes_total | Łączna liczba porzuconych bajtów |
direction , reason |
✅ | ❌ |
Aby uzyskać szczegółowe metryki na poziomie podów i DNS, zobacz Advanced Container Networking Services.
Powiązana zawartość
- Aby zapoznać się z dokumentacją metryk, dzienników i innych ważnych wartości utworzonych dla usługi AKS, zobacz dokumentację dotyczącą danych monitorowania usługi AKS.
- Aby uzyskać ogólne informacje na temat monitorowania zasobów platformy Azure, zobacz Monitorowanie zasobów platformy Azure przy użyciu usługi Azure Monitor.
Azure Kubernetes Service