Condividi tramite


Regole di avviso consigliate per i cluster Kubernetes

Gli avvisi in Monitoraggio di Azure identificano in modo proattivo i problemi relativi all'integrità e alle prestazioni delle risorse di Azure. Questo articolo descrive come abilitare e modificare un set di regole di avviso delle metriche consigliate predefinite per i cluster Kubernetes.

Usare uno dei metodi seguenti per abilitare le regole di avviso consigliate per il cluster. È possibile abilitare le regole di avviso per le metriche di Prometheus e della piattaforma per lo stesso cluster.

Nota

I modelli Azure Resource Manager (ARM) sono l'unico metodo supportato per abilitare gli avvisi consigliati nei cluster Kubernetes abilitati per ARC.

Usando il portale di Azure, il gruppo di regole Prometheus verrà creato nella stessa area del cluster.

  1. Dal menu Avvisi per il cluster, selezionare Configura consigli.

    Screenshot del cluster del servizio Azure Kubernetes che mostra il pulsante Configura consigli.

  2. Le regole di avviso di Prometheus e della piattaforma disponibili vengono visualizzate con le regole Prometheus organizzate per pod, cluster e livello di nodo. Attivare o disattivare un gruppo di regole Prometheus per abilitare tale set di regole. Espandere il gruppo per visualizzare le singole regole. È possibile lasciare le impostazioni predefinite o disabilitare regole singole e modificarne il nome e la gravità.

    Screenshot dell'abilitazione della regola di avviso Prometheus.

  3. Attivare o disattivare una regola delle metriche della piattaforma per abilitare tale regola. È possibile espandere la regola per modificarne i dettagli, ad esempio il nome, la gravità e la soglia.

    Screenshot dell'abilitazione della regola di avviso delle metriche della piattaforma.

  4. Selezionare uno o più metodi di notifica per creare un nuovo gruppo di azioni, oppure selezionare un gruppo di azioni esistente con i dettagli della notifica per questo set di regole di avviso.

  5. Fare clic su Salva per salvare il gruppo di regole.

Dopo aver creato il gruppo di regole, non è possibile usare la stessa pagina nel portale per modificare le regole. Per le metriche di Prometheus, è necessario modificare il gruppo di regole per modificare le regole in esso contenute, inclusa l'abilitazione di tutte le regole che non sono già abilitate. Per le metriche della piattaforma, è possibile modificare ogni regola di avviso.

  1. Dal menu Avvisi per il cluster, selezionare Configura consigli. Tutte le regole o i gruppi di regole già creati verranno etichettati come Già creati.

  2. Espandere la regola o il gruppo di regole. Fare clic su Visualizza gruppo di regole per Prometheus e Visualizza regola di avviso per le metriche della piattaforma.

    Screenshot dell'opzione di visualizzazione del gruppo di regole.

  3. Per i gruppi di regole Prometheus:

    1. selezionare Regole per visualizzare le regole di avviso nel gruppo.

    2. Fare clic sull'icona Modifica accanto a una regola che si desidera modificare. Usare le indicazioni riportate in Creare una regola di avviso per modificare la regola.

      Screenshot dell'opzione per modificare le regole di avviso di Prometheus.

    3. Al termine della modifica delle regole nel gruppo, fare clic su Salva per salvare il gruppo di regole.

  4. Per le metriche della piattaforma:

    1. fare clic su Modifica per aprire i dettagli per la regola di avviso. Usare le indicazioni riportate in Creare una regola di avviso per modificare la regola.

      Screenshot dell'opzione per modificare la regola delle metriche della piattaforma.

Disabilitare il gruppo di regole di avviso

Disabilitare il gruppo di regole per interrompere la ricezione di avvisi dalle regole.

  1. Visualizzare il gruppo di regole di avviso Prometheus o la regola di avviso della metrica della piattaforma come descritto in Modificare le regole di avviso consigliate.

  2. Dal menu Panoramica, selezionare Disabilita.

    Screenshot dell'opzione per disabilitare un gruppo di regole.

Le tabelle seguenti elencano i dettagli di ogni regola di avviso consigliata. Il codice sorgente per ognuno di essi è disponibile in GitHub insieme alle guide alla risoluzione dei problemi della community di Prometheus.

Regole di avviso della community di Prometheus

Avvisi a livello di cluster

Nome avviso Descrizione Soglia predefinita Intervallo di tempo (minuti)
KubeCPUQuotaOvercommit La quota di risorse CPU allocata agli spazi dei nomi supera le risorse della CPU disponibili nei nodi del cluster di oltre il 50% per gli ultimi 5 minuti. >1.5 5
KubeMemoryQuotaOvercommit La quota di risorse di memoria allocata agli spazi dei nomi supera le risorse della memoria disponibili nei nodi del cluster di oltre il 50% per gli ultimi 5 minuti. >1.5 5
KubeContainerOOMKilledCount Uno o più contenitori all'interno dei pod sono stati eliminati a causa di eventi di memoria insufficiente (OOM) per gli ultimi 5 minuti. >0 5
KubeClientErrors La frequenza degli errori client (codici di stato HTTP a partire da 5xx) nelle richieste API Kubernetes supera l’1% della frequenza totale delle richieste API per gli ultimi 15 minuti. >0.01 15
KubePersistentVolumeFillingUp Il volume persistente si sta riempiendo ed è previsto che si esaurisca lo spazio disponibile valutato in base al rapporto di spazio disponibile, allo spazio usato e alla tendenza lineare lineare prevista dello spazio disponibile nelle ultime 6 ore. Queste condizioni vengono valutate negli ultimi 60 minuti. N/D 60
KubePersistentVolumeInodesFillingUp Per gli ultimi 15 minuti sono disponibili meno del 3% degli inodi all'interno di un volume permanente. <0.03 15
KubePersistentVolumeErrors Uno o più volumi persistenti si trovano in una fase non riuscita o in sospeso per gli ultimi 5 minuti. >0 5
KubeContainerWaiting Uno o più contenitori all'interno dei pod Kubernetes hanno uno stato di attesa per gli ultimi 60 minuti. >0 60
KubeDaemonSetNotScheduled Uno o più pod non sono pianificati in alcun nodo per gli ultimi 15 minuti. >0 15
KubeDaemonSetMisScheduled Uno o più pod non vengono pianificati all'interno del cluster per gli ultimi 15 minuti. >0 15
KubeQuotaAlmostFull L'utilizzo delle quote di risorse Kubernetes è compreso tra il 90% e il 100% dei limiti rigidi per gli ultimi 15 minuti. >0.9 <1 15

Avvisi a livello di nodo

Nome avviso Descrizione Soglia predefinita Intervallo di tempo (minuti)
KubeNodeUnreachable Un nodo non è raggiungibile per gli ultimi 15 minuti. 1 15
KubeNodeReadinessFlapping Lo stato di conformità di un nodo è cambiato più di 2 volte per gli ultimi 15 minuti. 2 15

Avvisi a livello di pod

Nome avviso Descrizione Soglia predefinita Intervallo di tempo (minuti)
KubePVUsageHigh L'utilizzo medio dei volumi persistenti (PV) nel pod supera l'80% per gli ultimi 15 minuti. >0.8 15
KubeDeploymentReplicasMismatch Non vi è corrispondenza tra il numero desiderato di repliche e il numero di repliche disponibili per gli ultimi 10 minuti. N/D 10
KubeStatefulSetReplicasMismatch Il numero di repliche pronte nell'oggetto StatefulSet non corrisponde al numero totale di repliche nell'oggetto StatefulSet per gli ultimi 15 minuti. N/D 15
KubeHpaReplicasMismatch La scalabilità automatica orizzontale dei pod nel cluster non corrisponde al numero desiderato di repliche per gli ultimi 15 minuti. N/D 15
KubeHpaMaxedOut L'utilità di scalabilità automatica orizzontale dei pod nel cluster è stata eseguita con il massimo numero di repliche per gli ultimi 15 minuti. N/D 15
KubePodCrashLooping Uno o più pod si trovano in una condizione CrashLoopBackOff, in cui il pod si arresta continuamente in modo anomalo dopo l'avvio e non riesce a eseguire correttamente il ripristino per gli ultimi 15 minuti. >=1 15
KubeJobStale Almeno un'istanza del processo non è stata completata correttamente per le ultime 6 ore. >0 360
KubePodContainerRestart Uno o più contenitori all'interno dei pod nel cluster Kubernetes sono stati riavviati almeno una volta nell'ultima ora. >0 15
KubePodReadyStateLow La percentuale di pod in uno stato pronto scende al di sotto dell'80% per qualsiasi distribuzione o daemonset nel cluster Kubernetes per gli ultimi 5 minuti. <0.8 5
KubePodFailedState Uno o più pod si trovano in uno stato di errore per gli ultimi 5 minuti. >0 5
KubePodNotReadyByController Uno o più pod non sono in uno stato pronto (ad esempio, nella fase "In sospeso" o "Sconosciuto") per gli ultimi 15 minuti. >0 15
KubeStatefulSetGenerationMismatch La generazione di un oggetto Kubernetes StatefulSet osservata non corrisponde alla generazione dei metadati per gli ultimi 15 minuti. N/D 15
KubeJobFailed Uno o più processi Kubernetes hanno avuto esito negativo negli ultimi 15 minuti. >0 15
KubeContainerAverageCPUHigh L'utilizzo medio della CPU per contenitore supera il 95% per gli ultimi 5 minuti. >0.95 5
KubeContainerAverageMemoryHigh L'utilizzo medio della memoria per contenitore supera il 95% per gli ultimi 5 minuti. >0.95 10
KubeletPodStartUpLatencyHigh Il 99° percentile della latenza di avvio del pod supera i 60 secondi per gli ultimi 10 minuti. >60 10

Regole di avviso per le metriche della piattaforma

Nome avviso Descrizione Soglia predefinita Intervallo di tempo (minuti)
La percentuale di CPU del nodo è maggiore del 95% La percentuale di CPU del nodo è maggiore del 95% per gli ultimi 5 minuti. 95 5
La percentuale del working set di memoria del nodo è maggiore del 100% La percentuale del working set di memoria del nodo è maggiore del 100% per gli ultimi 5 minuti. 100 5

Avvisi sulle metriche dei Dati analitici sui contenitori legacy (anteprima)

Le regole delle metriche in Informazioni dettagliate contenitore sono state ritirate il 31 maggio 2024. Queste regole erano in anteprima pubblica, ma erano state ritirate senza raggiungere la disponibilità generale perché sono ora disponibili i nuovi avvisi delle metriche consigliati descritti in questo articolo.

Se queste regole di avviso legacy sono già state abilitate, è necessario disabilitarle e abilitare la nuova esperienza.

Disabilitare le regole di avviso per le metriche

  1. Dal menu Dati analitici per il cluster, selezionare Avvisi consigliati (anteprima).
  2. Modificare lo stato per ogni regola di avviso impostando Disabilitata.

Mapping degli avvisi legacy

La tabella seguente esegue il mapping di tutti gli avvisi delle metriche di Dati analitici sui contenitori legacy negli avvisi delle metriche Prometheus consigliate equivalenti.

Avviso consigliato per la metrica personalizzata Avviso consigliato delle metriche Prometheus/della piattaforma equivalenti Condizione
Numero di processi completati KubeJobStale (avvisi a livello di pod) Almeno un'istanza del processo non è stata completata correttamente per le ultime 6 ore.
% CPU del contenitore KubeContainerAverageCPUHigh (avvisi a livello di pod) L'utilizzo medio della CPU per contenitore supera il 95% per gli ultimi 5 minuti.
% di utilizzo della memoria del working set del contenitore KubeContainerAverageMemoryHigh (avvisi a livello di pod) L'utilizzo medio della memoria per contenitore supera il 95% per gli ultimi 5 minuti.
Conteggi di pod non riusciti KubePodFailedState (avvisi a livello di pod) Uno o più pod si trovano in uno stato di errore per gli ultimi 5 minuti.
% CPU del nodo La percentuale di CPU del nodo è maggiore del 95% (metrica della piattaforma) La percentuale di CPU del nodo è maggiore del 95% per gli ultimi 5 minuti.
% di utilizzo del disco per nodo N/D L'utilizzo medio del disco per un nodo è maggiore dell'80%.
Stato Non pronto del nodo KubeNodeUnreachable (avvisi a livello di nodo) Un nodo non è raggiungibile per gli ultimi 15 minuti.
% di utilizzo memoria del working set del nodo La percentuale del working set di memoria del nodo è maggiore del 100% La percentuale del working set di memoria del nodo è maggiore del 100% per gli ultimi 5 minuti.
Contenitori terminati a causa di memoria insufficiente KubeContainerOOMKilledCount (avvisi a livello di cluster) Uno o più contenitori all'interno dei pod sono stati eliminati a causa di eventi di memoria insufficiente (OOM) per gli ultimi 5 minuti.
% di utilizzo del volume permanente KubePVUsageHigh (avvisi a livello di pod) L'utilizzo medio dei volumi persistenti (PV) nel pod supera l'80% per gli ultimi 15 minuti.
% pod pronti KubePodReadyStateLow (avvisi a livello di pod) La percentuale di pod in uno stato pronto scende al di sotto dell'80% per qualsiasi distribuzione o daemonset nel cluster Kubernetes per gli ultimi 5 minuti.
Numero di contenitori in fase di riavvio KubePodContainerRestart (avvisi a livello di pod) Uno o più contenitori all'interno dei pod nel cluster Kubernetes sono stati riavviati almeno una volta nell'ultima ora.

Passaggi successivi