W tym artykule opisano sposób porównywania monitorowania usługi Azure Kubernetes Service (AKS) z usługą Amazon Elastic Kubernetes Service (Amazon EKS). W tym artykule przedstawiono różne opcje monitorowania dzienników klastra usługi AKS i jego obciążeń oraz zarządzania nimi.
Uwaga
Ten artykuł jest częścią serii artykułów, które ułatwiają specjalistom, którzy znają usługę Amazon EKS, aby zrozumieć usługę Azure Kubernetes Service (AKS).
Monitorowanie i rejestrowanie usługi Amazon EKS
Podobnie jak każda usługa Kubernetes, eks ma dwa główne składniki, płaszczyznę sterowania i węzły robocze. Istnieją konkretne możliwości dla każdej warstwy.
Płaszczyzna sterowania amazon EKS i monitorowanie klastra
Usługa Amazon EKS integruje się z dziennikami Amazon CloudWatch w celu zapewnienia rejestrowania i monitorowania płaszczyzny sterowania Amazon EKS. Ta integracja nie jest domyślnie włączona, ale po skonfigurowaniu zbiera dzienniki:
- Wywołania serwera interfejsu API i interfejsu API.
- Dzienniki inspekcji i interakcje użytkowników.
- Dzienniki wystawcy uwierzytelniającego.
- Dzienniki harmonogramu i kontrolera.
Usługa Amazon EKS uwidacznia metryki płaszczyzny sterowania w /metrics
punkcie końcowym w formacie tekstowym Prometheus. Usługa CloudWatch Container Insights może zbierać i przechowywać metryki Rozwiązania Prometheus. Możesz wdrożyć rozwiązanie Prometheus i samodzielnie zarządzać nim w ramach klastra EKS lub użyć usługi Amazon Managed service for Prometheus.
Usługa Amazon EKS integruje się również z usługą Amazon Web Services (AWS) CloudTrail w celu śledzenia akcji i wywołań interfejsu API. Aby uzyskać więcej informacji, zobacz Rejestrowanie wywołań interfejsu API Amazon EKS za pomocą usługi AWS CloudTrail.
Monitorowanie obciążeń amazon EKS
Usługa CloudWatch Container Insights może zbierać i agregować metryki i dzienniki z konteneryzowanych aplikacji wdrożonych w eks. Usługę Container Insights w usłudze Amazon EKS można zaimplementować za pomocą konteneryzowanej wersji agenta CloudWatch lub przy użyciu dystrybucji AWS dla platformy OpenTelemetry jako elementu DaemonSet. Dzienniki można wysyłać za pomocą biblioteki FluentBit.
Monitorowanie i rejestrowanie usługi AKS
Podobnie jak w przypadku innych zasobów platformy Azure usługa AKS generuje metryki platformy i dzienniki zasobów, których można użyć do monitorowania jego podstawowej kondycji i wydajności.
Pobierz plik programu Visio z tą architekturą.
Azure Monitor
Usługa AKS natywnie integruje się z usługą Azure Monitor. Usługa Azure Monitor przechowuje metryki i dzienniki w centralnej lokalizacji nazywanej obszarem roboczym usługi Log Analytics. Te dane są przetwarzane i analizowane w celu zapewnienia szczegółowych informacji i alertów. Aby uzyskać więcej informacji, zobacz Monitorowanie usługi Azure Kubernetes Service (AKS) przy użyciu usługi Azure Monitor.
Container Insights to funkcja usługi Azure Monitor, która zbiera, indeksuje i przechowuje dane generowane przez klaster usługi AKS. Usługę Container Insights można skonfigurować do monitorowania zarządzanych klastrów Kubernetes hostowanych w usłudze AKS i innych konfiguracjach klastra. Usługa Container Insights może monitorować kondycję i wydajność usługi AKS za pomocą wizualizacji dostosowanej do środowisk Kubernetes. Podobnie jak w przypadku eks, włączenie usługi Container Insights dla klastra usługi AKS powoduje wdrożenie konteneryzowanej wersji agenta usługi Log Analytics, która jest odpowiedzialna za wysyłanie danych do obszaru roboczego usługi Log Analytics.
Microsoft Sentinel
Usługa Microsoft Sentinel zapewnia inteligentną analizę zabezpieczeń i analizę zagrożeń w całym przedsiębiorstwie. Dzięki usłudze Microsoft Sentinel uzyskasz jedno rozwiązanie do wykrywania ataków, widoczności zagrożeń, proaktywnego wyszukiwania zagrożeń i reagowania na zagrożenia.
Usługa Microsoft Sentinel musi być połączona z usługą AKS. Ten łącznik umożliwia przesyłanie strumieniowe dzienników diagnostycznych usługi Azure Kubernetes Service (AKS) do usługi Microsoft Sentinel, co umożliwia ciągłe monitorowanie aktywności we wszystkich wystąpieniach.
Po połączeniu źródeł danych z usługą Microsoft Sentinel możesz wizualizować i monitorować dane przy użyciu skoroszytów usług Microsoft Sentinel i Azure Monitor, co zapewnia wszechstronność tworzenia niestandardowych pulpitów nawigacyjnych.
Monitorowanie klastra i obciążenia usługi AKS
Wdrożenie usługi AKS może podzielić się na składniki na poziomie klastra, zarządzane składniki usługi AKS, obiekty i obciążenia kubernetes, aplikacje i zasoby zewnętrzne. W poniższej tabeli przedstawiono wspólną strategię monitorowania klastra i aplikacji obciążeń usługi AKS. Każdy poziom ma odrębne wymagania dotyczące monitorowania.
Poziom | opis | Wymagania dotyczące monitorowania |
---|---|---|
Składniki na poziomie klastra | Zestawy skalowania maszyn wirtualnych abstrakcjonowane jako węzły usługi AKS i pule węzłów | Stan węzła i wykorzystanie zasobów, w tym procesor, pamięć, dysk i sieć |
Zarządzane składniki usługi AKS | Składniki płaszczyzny sterowania usługi AKS, w tym serwery interfejsów API, kontroler chmury i kubelet |
Dzienniki i metryki płaszczyzny sterowania z kube-system przestrzeni nazw |
Obiekty i obciążenia kubernetes | Obiekty kubernetes, takie jak wdrożenia, kontenery i zestawy replik | Wykorzystanie zasobów i błędy |
Aplikacje | Obciążenia aplikacji uruchomione w klastrze usługi AKS | Monitorowanie specyficzne dla architektury, ale w tym dzienniki aplikacji i transakcje usług |
Zewnętrzne | Zasoby zewnętrzne, które nie są częścią usługi AKS, ale są wymagane do skalowalności klastra i zarządzania nimi | Specyficzne dla każdego składnika |
Składniki na poziomie klastra: istniejące widoki i raporty usługi Container Insights umożliwiają monitorowanie składników na poziomie klastra w celu zrozumienia ich kondycji, gotowości, wydajności, wykorzystania zasobów procesora CPU i pamięci oraz trendów.
Zarządzane składniki usługi AKS: możesz użyć Eksploratora metryk, aby wyświetlić licznik Żądań inflight. Ten widok obejmuje opóźnienie żądań i czas przetwarzania kolejki pracy.
Obiekty i obciążenia platformy Kubernetes: możesz użyć istniejących widoków i raportów usługi Container Insights do monitorowania wdrożeń, kontrolerów, zasobników i kontenerów. Użyj widoków Węzły i kontrolery, aby wyświetlić kondycję i wydajność zasobników uruchomionych na węzłach i kontrolerach oraz zużycie zasobów pod względem procesora CPU i pamięci.
W widoku Kontenery usługi Container Insights można wyświetlić kondycję i wydajność kontenerów lub wybrać pojedynczy kontener i monitorować jego zdarzenia i dzienniki w czasie rzeczywistym. Aby uzyskać szczegółowe informacje na temat korzystania z tego widoku i analizowania kondycji i wydajności kontenera, zobacz Monitorowanie wydajności klastra Kubernetes za pomocą usługi Container Insights.
Aplikacje: usługi Application Insights można używać do monitorowania aplikacji działających w usłudze AKS i innych środowiskach. Application Insights to narzędzie do zarządzania wydajnością aplikacji, które zapewnia obsługę wielu języków programowania. W zależności od potrzeb możesz instrumentować kod aplikacji w celu przechwytywania żądań, śladów, dzienników, wyjątków, metryk niestandardowych i transakcji end-to-end oraz wysyłania tych danych do usługi Application Insights. Jeśli masz aplikację Java, możesz zapewnić monitorowanie bez instrumentowania kodu. Aby uzyskać więcej informacji, zobacz Monitorowanie aplikacji instrumentacji zerowej dla platformy Kubernetes.
Składniki zewnętrzne: funkcje usługi Azure Monitor umożliwiają monitorowanie dowolnej platformy Azure jako usługi (PaaS) używanej przez aplikacje obciążeń, takich jak bazy danych i inne zasoby platformy Azure.
Azure Monitor — usługa zarządzana dla rozwiązania Prometheus
Prometheus to popularne rozwiązanie do monitorowania metryk typu open source z poziomu platformy Cloud Native Compute Foundation i najbardziej typowe narzędzie używane 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 zgodne z rozwiązaniem Prometheus na platformie Azure, które przechowuje swoje dane w obszarze roboczym usługi Azure Monitor, które jest połączone z obszarem roboczym Grafana, co umożliwia analizowanie danych za pomocą usługi Azure Managed Grafana.
Rozwiązanie Prometheus można również wdrożyć niezależnie jako rozwiązanie zarządzane samodzielnie w klastrach usługi Azure Kubernetes Service. Możesz zintegrować własne rozwiązanie Prometheus z usługą Azure Monitor. Usługę Container Insights można skonfigurować do zbierania metryk rozwiązania Prometheus. Punkt końcowy metryk Rozwiązania Prometheus można uwidocznić za pośrednictwem eksporterów lub aplikacji zasobników, a konteneryzowany agent usługi Container Insights usunie metryki.
Azure Managed Grafana
Azure Managed Grafana to platforma do wizualizacji danych oparta na narzędziu Grafana. Została ona opracowana jako w pełni zarządzana usługa platformy Azure obsługiwana i wspierana przez firmę Microsoft. 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.
Narzędzie Azure Managed Grafana jest zoptymalizowane pod kątem środowiska platformy Azure i współpracuje z wieloma usługami platformy Azure i zapewnia proste funkcje integracji. Alternatywnie możesz również wdrożyć narzędzie Grafana niezależnie jako rozwiązanie zarządzane samodzielnie. Aby uzyskać więcej informacji, zobacz Monitorowanie usług platformy Azure w narzędziu Grafana.
Koszty monitorowania usługi AKS
Model cen usługi Azure Monitor jest oparty głównie na ilości danych pozyskanych dziennie w obszarze roboczym usługi Log Analytics. Koszt zależy od wybranego planu i okresu przechowywania.
Przed włączeniem usługi Container Insights należy oszacować koszty i zrozumieć, jak kontrolować pozyskiwanie danych i ich koszty. Aby uzyskać szczegółowe wskazówki, zobacz Szacowanie kosztów w celu monitorowania klastra usługi AKS.
Współautorzy
Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.
Autorzy zabezpieczeń:
- Ketan Chawda | Starszy inżynier klienta
- Paolo Salvatori | Główny inżynier usługi
- Laura Nicolas | Starszy inżynier oprogramowania
Inni współautorzy:
- Chad Kittel | Główny inżynier oprogramowania
- Cena Ed | Starszy menedżer programu zawartości
- Theano Petersen | Składnik zapisywania technicznego
Aby wyświetlić niepubalne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.
Następne kroki
- Usługa AKS dla specjalistów amazon EKS
- Zarządzanie tożsamościami i dostępem na platformie Kubernetes
- Zabezpieczanie dostępu sieciowego do platformy Kubernetes
- Opcje magazynu dla klastra Kubernetes
- Zarządzanie kosztami dla platformy Kubernetes
- Zarządzanie węzłami i pulami węzłów kubernetes
- Nadzór nad klastrem
Powiązane zasoby
- Korzystanie z zakresu usługi Azure Monitor Private Link
- Monitorowanie usługi Azure Kubernetes Service (AKS) przy użyciu usługi Azure Monitor
- Dokumentacja danych usługi AKS monitorowania
- Omówienie usługi Container Insights
- Włączanie usługi Container Insights
- Dzienniki zasobów usługi AKS
- Konfigurowanie złomowania metryk rozwiązania Prometheus za pomocą usługi Container Insights
- Jak wykonywać zapytania dotyczące dzienników z usługi Container Insights
- Źródło danych usługi Azure Monitor dla narzędzia Grafana
- Monitorowanie i tworzenie kopii zapasowych zasobów platformy Azure
- Instrumentacja rozwiązań do obsługi monitorowania i rejestrowania
- Projektowanie rozwiązania do rejestrowania i monitorowania zasobów platformy Azure
- Monitorowanie użycia, wydajności i dostępności zasobów za pomocą usługi Azure Monitor