Monitorowanie i rejestrowanie danych
Dotyczy: AKS na platformie Azure Local 22H2, AKS na Windows Server
W tym artykule opisano, jak monitorować wdrożenie usługi Azure Kubernetes Service (AKS) i zbierać dane rejestrowania w usłudze AKS włączone przez usługę Azure Arc. Dowiesz się, jak skonfigurować i uzyskać dostęp do monitorowania lokalnego przy użyciu Prometheus
i Graphana
oraz jak zbierać i wyświetlać dzienniki przy użyciu Elasticsearch
, Fluent Bit
i Kibana
(EFK).
Dostępne są dwa typy rozwiązań do monitorowania i rejestrowania, zgodnie z opisem w poniższej tabeli:
Rozwiązanie | Łączność platformy Azure | Pomoc techniczna i serwis | Koszt | Wdrażania |
---|---|---|---|---|
Azure Monitor | Wymaga połączenia klastra Kubernetes z platformą Azure przy użyciu usługi Azure Arc dla platformy Kubernetes. | Pełna pomoc techniczna i obsługa firmy Microsoft. | Wymaga zarejestrowania się w usłudze Azure Monitor. | Użyj usługi Azure Arc na potrzeby klastrów monitorowania . |
Lokalne monitorowanie i rejestrowanie | Nie wymaga łączności platformy Azure. | Obsługiwane jako oprogramowanie typu open source przez firmę Microsoft (bez umów pomocy technicznej lub umów SLA), społeczności i/lub dostawców zewnętrznych. | Zależne od dostawcy. | Sterowane przez klienta. Zobacz Monitorowanie klastrów przy użyciu lokalnego monitorowania. |
Aby użyć usługi Azure Monitor z klastrami Kubernetes, zobacz Omówienie usługi Azure Monitor.
Korzystanie z monitorowania lokalnego
Ważne jest, aby monitorować kondycję, wydajność i użycie zasobów węzłów i obciążeń płaszczyzny sterowania w klastrze podczas uruchamiania aplikacji w środowisku produkcyjnym. Zalecane rozwiązanie do monitorowania obejmuje następujące dwa narzędzia:
- Prometheus to zestaw narzędzi do monitorowania i zgłaszania alertów, którego można użyć do monitorowania konteneryzowanych obciążeń. Rozwiązanie Prometheus współpracuje z różnymi typami modułów zbierających i agentów w celu zbierania metryk i przechowywania ich w bazie danych, w której można wykonywać zapytania dotyczące danych i wyświetlać raporty. Usługa AKS Arc ułatwia wdrażanie rozwiązania Prometheus opisanego w dalszej części tego artykułu.
- Grafana to narzędzie służące do wyświetlania, wykonywania zapytań i wizualizowania metryk na tablicach Grafana. Możesz również skonfigurować narzędzie Grafana do używania rozwiązania Prometheus jako źródła danych. Musisz mieć własną licencjonowaną kopię narzędzia Grafana z usługą AKS Arc.
Omówienie rozwiązania do monitorowania
W ramach rozwiązania Prometheus w AKS uruchomionego przez Arc następujące składniki są wdrażane i konfigurowane automatycznie:
- operator Prometheus
- Prometheus
- metryk stanu platformy Kube
- eksporter węzła
- eksporter systemu Windows
Wdrożenie jest oparte na publicznie dostępnym wykresie Kube-Prometheus-stack Helm, który został rozszerzony w celu obsługi eksportera systemu Windows i zabezpiecza skrawki metryk między rozwiązaniami Prometheus i agentami. Po wdrożeniu rozwiązania Prometheus eksporter Node działa w każdym węźle systemu Linux, a eksporter systemu Windows działa w każdym węźle systemu Windows.
Notatka
Ponieważ operator Prometheus, Prometheus i komponenty metryk stanu Kube są obsługiwane tylko w systemie Linux, należy przydzielić co najmniej jeden węzeł Linux w klastrze AKS, aby wdrożyć to rozwiązanie.
Obiekty i punkty końcowe, które rozwiązanie Prometheus zeskrobuje, obejmują następujące elementy:
- Metryki stanu platformy Kube do zbierania różnych metryk udostępnianych przez platformę Kubernetes
- Serwer API Kubernetes
- Kubelet
- Eksporter węzłów do zbierania metryk dla węzłów systemu Linux
- Eksporter systemu Windows do zbierania metryk dla węzłów systemu Windows
Aby wyświetlić pulpity nawigacyjne narzędzia Grafana dostępne w usłudze AKS Arc, zobacz pulpity nawigacyjne narzędzia Grafana dostępne w usłudze AKS Arc.
Wdrażanie rozwiązania do monitorowania przy użyciu programu PowerShell
W tej sekcji opisano dwie opcje, których można użyć do wdrożenia monitorowania w klastrze obciążenia.
Opcja 1. Wdrażanie rozwiązania do monitorowania podczas tworzenia klastra obciążenia
Aby włączyć monitorowanie, podaj parametr -enableMonitoring
podczas używania New-AksHciCluster do utworzenia klastra obciążenia, jak pokazano w poniższym przykładzie:
New-AksHciCluster -name mynewcluster -enableMonitoring
Monitorowanie jest instalowane z następującą konfiguracją domyślną:
- Rozmiar woluminu trwałego aprowizowanego do przechowywania metryk (
storageSizeGB
) wynosi 100 GB. - Czas przechowywania zebranych metryk (
retentionTimeHours
) wynosi 240 godzin (lub 10 dni).
Opcja 2. Wdrażanie rozwiązania do monitorowania w istniejącym klastrze obciążenia
Uruchom polecenie Install-AksHciMonitoring, aby wdrożyć rozwiązanie do monitorowania w istniejącym klastrze obciążenia w następujący sposób:
Install-AksHciMonitoring -Name mycluster -storageSizeGB 100 -retentionTimeHours 240
Parametr -storageSizeGB
określa rozmiar woluminu trwałego aprowizowanego do przechowywania metryk, a parametr -retentionTimeHours
określa ilość czasu przechowywania zebranych metryk.
Rozwiązanie do monitorowania jest instalowane w oddzielnej przestrzeni nazw o nazwie monitoring
i używa klasy StorageClass o nazwie monitoring-sc
. Prometheus jest wystawiony na wewnętrznym punkcie końcowym, który jest dostępny tylko w klastrze na http://akshci-monitoring-prometheus-svc.monitoring:9090
.
Odinstalowywanie rozwiązania do monitorowania przy użyciu programu PowerShell
Uruchom polecenie PowerShell Uninstall-AksHciMonitoring
, aby odinstalować rozwiązanie monitorujące AKS Arc w następujący sposób:
Uninstall-AksHciMonitoring -Name <target cluster name>
Proces odinstalowywania usuwa wszystkie elementy, w tym przestrzeń nazw, klasę StorageClass oraz rzeczywiste dane i metryki woluminu trwałego.
Wdrażanie narzędzia Grafana i konfigurowanie go do korzystania z rozwiązania Prometheus
Możesz postępować zgodnie z dowolnymi wskazówkami dotyczącymi wdrażania narzędzia Grafana, które są publicznie dostępne. Możesz również wyświetlić wskazówki dotyczące wdrażania firmy Microsoft, aby użyć narzędzia Grafana, w którym szczegółowo opisano sposób wdrażania i konfigurowania narzędzia Grafana w celu połączenia go z wystąpieniem usługi Prometheus usługi AKS. Na tej stronie GitHub opisano również, jak dodać pulpity nawigacyjne Grafana dostępne przez Microsoft dla AKS z obsługą Arc.
Rejestrowanie lokalne
Rejestrowanie ma kluczowe znaczenie dla rozwiązywania problemów i diagnostyki. Rozwiązanie do logowania w AKS Arc jest oparte na Elasticsearch, Fluent Bit oraz Kibana (EFK). Wszystkie te składniki są wdrażane jako kontenery:
- Fluent Bit to procesor logów i moduł przesyłania, który zbiera dane i dzienniki z różnych źródeł. Następnie formatuje, łączy i przechowuje je w usłudze Elasticsearch.
- Elasticsearch to rozproszony aparat wyszukiwania i analizy, który umożliwia centralne przechowywanie dzienników na potrzeby szybkiego wyszukiwania i analizy danych.
- Aplikacja Kibana udostępnia interaktywne wizualizacje na pulpicie nawigacyjnym internetowym. To narzędzie umożliwia wyświetlanie i wykonywanie zapytań dotyczących dzienników przechowywanych w usłudze Elasticsearch, a następnie wizualizowanie ich za pomocą grafów i pulpitów nawigacyjnych.
Aby skonfigurować lokalne rozwiązanie do logowania, zapoznaj się z krokami dotyczącymi konfiguracji logowania w celu uzyskania dostępu do usługi Kibana. Ten artykuł zawiera wszystkie składniki wymagane do zbierania, agregowania i wykonywania zapytań dotyczących dzienników kontenerów w klastrze.
Aby zapoznać się z zaawansowanymi krokami konfiguracji, zobacz logowanie Windows.
Następne kroki
- wdrażanie aplikacji systemu Linux w klastrze Kubernetes
- wdrażanie aplikacji systemu Windows Server w klastrze Kubernetes
- podstawowe pojęcia dotyczące platformy Kubernetes