Używanie zdarzeń kubernetes do rozwiązywania problemów w usłudze Azure Kubernetes Service (AKS)
W tym artykule pokazano, jak używać zdarzeń kubernetes do monitorowania i rozwiązywania problemów w klastrach usługi Azure Kubernetes Service (AKS).
Co to są zdarzenia kubernetes?
Zdarzenia są jednym z najbardziej znanych źródeł monitorowania i rozwiązywania problemów w rozwiązaniu Kubernetes. Przechwytują i rejestrują informacje o cyklu życia różnych obiektów Kubernetes, takich jak zasobniki, węzły, usługi i wdrożenia. Monitorując zdarzenia, można uzyskać wgląd w działania klastra, identyfikować problemy i skutecznie rozwiązywać problemy.
Zdarzenia kubernetes nie są utrwalane w całym cyklu życia klastra, ponieważ nie ma mechanizmu przechowywania. Zdarzenia są dostępne tylko przez jedną godzinę po wygenerowaniu zdarzenia. Aby przechowywać zdarzenia przez dłuższy czas, włącz usługę Container Insights.
Obiekty zdarzeń kubernetes
W poniższej tabeli wymieniono niektóre kluczowe obiekty zdarzeń Kubernetes:
Nazwa pola | opis |
---|---|
type | Typ jest oparty na ważności zdarzenia: Zdarzenia ostrzegawcze sygnalizuje potencjalnie problematyczne sytuacje, takie jak wielokrotne niepowodzenie zasobnika lub brak zasobów węzła. Wymagają one uwagi, ale mogą nie spowodować natychmiastowego niepowodzenia. Zdarzenia normalne reprezentują rutynowe operacje, takie jak zaplanowany zasobnik lub skalowanie wdrożenia w górę. Zwykle wskazują zachowanie klastra w dobrej kondycji. |
reason | Przyczyna wygenerowania zdarzenia. Na przykład FailedScheduling lub CrashLoopBackoff. |
wiadomość | Czytelny dla człowieka komunikat opisujący zdarzenie. |
namespace | Przestrzeń nazw obiektu Kubernetes, z którą jest skojarzone zdarzenie. |
firstSeen | Sygnatura czasowa, kiedy zdarzenie zostało zaobserwowane po raz pierwszy. |
lastSeen | Sygnatura czasowa ostatniego zaobserwowanego zdarzenia. |
reportingController | Nazwa kontrolera, który zgłosił zdarzenie. Na przykład kubernetes.io/kubelet . |
obiekt | Nazwa obiektu Kubernetes skojarzonego ze zdarzeniem. |
Aby uzyskać więcej informacji, zobacz oficjalną dokumentację platformy Kubernetes.
Wyświetlanie zdarzeń platformy Kubernetes
Wyświetl listę wszystkich zdarzeń w klastrze przy użyciu
kubectl get events
polecenia .kubectl get events
Przyjrzyj się zdarzeń określonego zasobnika, wyszukując najpierw nazwę zasobnika, a następnie używając
kubectl describe pod
polecenia .kubectl get pods kubectl describe pod <pod-name>
Najlepsze rozwiązania dotyczące rozwiązywania problemów ze zdarzeniami
Filtrowanie zdarzeń pod kątem istotności
W klastrze usługi AKS mogą być uruchomione różne przestrzenie nazw i usługi. Filtrowanie zdarzeń na podstawie typu obiektu, przestrzeni nazw lub przyczyny może pomóc zawęzić wyniki do najbardziej odpowiednich informacji.
Na przykład można użyć następującego polecenia, aby filtrować zdarzenia w określonej przestrzeni nazw:
kubectl get events --namespace <namespace-name>
Automatyzowanie powiadomień o zdarzeniach
Aby zapewnić terminową reakcję na zdarzenia krytyczne w klastrze usługi AKS, skonfiguruj automatyczne powiadomienia. Platforma Azure oferuje integrację z usługami monitorowania i alertów, takimi jak Azure Monitor. Alerty można skonfigurować do wyzwalania na podstawie określonych wzorców zdarzeń. Dzięki temu natychmiast informujesz o kluczowych kwestiach, które wymagają uwagi.
Regularne przeglądanie zdarzeń
Nawyk regularnego przeglądania zdarzeń w klastrze usługi AKS. Takie proaktywne podejście może pomóc zidentyfikować trendy, wcześnie złapać potencjalne problemy i zapobiec eskalacjom. Pozostając na bieżąco ze zdarzeniami, można zachować stabilność i wydajność aplikacji.
Następne kroki
Po zapoznaniu się ze zdarzeniami platformy Kubernetes możesz kontynuować proces monitorowania i obserwacji , włączając szczegółowe informacje o kontenerze.
Azure Kubernetes Service