Udostępnij za pośrednictwem


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.