Usare gli eventi Kubernetes per la risoluzione dei problemi in servizio Azure Kubernetes (servizio Azure Kubernetes)
Questo articolo illustra come usare gli eventi Kubernetes per monitorare e risolvere i problemi nei cluster servizio Azure Kubernetes (servizio Azure Kubernetes).
Che cosa sono gli eventi kubernetes?
Gli eventi sono una delle origini più importanti per il monitoraggio e la risoluzione dei problemi in Kubernetes. Acquisiscono e registrano informazioni sul ciclo di vita di vari oggetti Kubernetes, ad esempio pod, nodi, servizi e distribuzioni. Monitorando gli eventi, è possibile ottenere visibilità sulle attività del cluster, identificare i problemi e risolvere i problemi in modo efficace.
Gli eventi Kubernetes non vengono mantenuti durante il ciclo di vita del cluster, perché non esiste alcun meccanismo di conservazione. Gli eventi sono disponibili solo per un'ora dopo la generazione dell'evento. Per archiviare gli eventi per un periodo di tempo più lungo, abilitare Informazioni dettagliate sui contenitori.
Oggetti evento Kubernetes
La tabella seguente elenca alcuni oggetti evento Kubernetes principali:
Nome del campo | Descrizione |
---|---|
type | Il tipo si basa sulla gravità dell'evento: Gli eventi di avviso segnalano situazioni potenzialmente problematiche, ad esempio un errore ripetuto di un pod o un nodo che esaurisce le risorse. Richiedono attenzione, ma potrebbero non causare un errore immediato. Gli eventi normali rappresentano operazioni di routine, ad esempio un pod pianificato o una scalabilità verticale della distribuzione. In genere indicano un comportamento del cluster integro. |
reason | Motivo per cui l'evento è stato generato. Ad esempio, FailedScheduling o CrashLoopBackoff. |
messaggio | Messaggio leggibile che descrive l'evento. |
namespace | Spazio dei nomi dell'oggetto Kubernetes a cui è associato l'evento. |
firstSeen | Timestamp quando l'evento è stato osservato per la prima volta. |
lastSeen | Timestamp dell'ultimo rilevamento dell'evento. |
reportingController | Nome del controller che ha segnalato l'evento. Ad esempio: kubernetes.io/kubelet . |
oggetto | Nome dell'oggetto Kubernetes a cui è associato l'evento. |
Per altre informazioni, vedere la documentazione ufficiale di Kubernetes.
Visualizzare gli eventi kubernetes
Elencare tutti gli eventi nel cluster usando il
kubectl get events
comando .kubectl get events
Esaminare gli eventi di un pod specifico individuando prima il nome del pod e quindi usando il
kubectl describe pod
comando .kubectl get pods kubectl describe pod <pod-name>
Procedure consigliate per la risoluzione dei problemi con gli eventi
Filtro degli eventi per pertinenza
Potrebbero essere presenti vari spazi dei nomi e servizi in esecuzione nel cluster del servizio Azure Kubernetes. Il filtro degli eventi in base al tipo di oggetto, allo spazio dei nomi o al motivo può contribuire a limitare i risultati alle informazioni più rilevanti.
Ad esempio, è possibile usare il comando seguente per filtrare gli eventi all'interno di uno spazio dei nomi specifico:
kubectl get events --namespace <namespace-name>
Notifiche automatica di eventi
Per garantire una risposta tempestiva agli eventi critici nel cluster del servizio Azure Kubernetes, configurare le notifiche automatizzate. Azure offre l'integrazione con servizi di monitoraggio e avvisi come Monitoraggio di Azure. È possibile configurare gli avvisi per l'attivazione in base a modelli di eventi specifici. In questo modo, si viene immediatamente informati sui problemi cruciali che richiedono attenzione.
Revisione regolare degli eventi
È consigliabile esaminare regolarmente gli eventi nel cluster del servizio Azure Kubernetes. Questo approccio proattivo consente di identificare le tendenze, rilevare potenziali problemi in anticipo e prevenire le escalation. Mantenendosi aggiornati sugli eventi, è possibile mantenere la stabilità e le prestazioni delle applicazioni.
Passaggi successivi
Ora che si conoscono gli eventi Kubernetes, è possibile continuare il percorso di monitoraggio e osservabilità abilitando Informazioni dettagliate sui contenitori.
Azure Kubernetes Service