Monitoraggio dell'integrità del sistema con rilevatore problemi nodo

A partire da Milestone 77, Container-Optimized OS include Rilevamento problemi dei nodi dell'agente. Puoi utilizzare questa funzionalità per monitorare lo stato di salute del sistema delle istanze COS. Node Problem Detector monitora l'integrità dell'istanza e genera report sulle metriche relative all'integrità in Cloud Monitoring, incluse le metriche relative a capacità ed errori che puoi visualizzare con le dashboard di Google Cloud Observability. Le metriche raccolte dalla configurazione predefinita sono gratuite. Google utilizzerà le metriche aggregate per comprendere i problemi dei nodi e migliorare l'affidabilità di Container-Optimized OS.

L'agente è preconfigurato con l'insieme di metriche da esportare. Al momento, la personalizzazione delle metriche registrate per l'agente integrato non è supportata. Rilevamento problemi nodo corrente: software open source. Puoi esaminare il codice sorgente e le configurazioni nei rispettivi repository di origine.

Attivazione del monitoraggio dello stato di integrità

L'agente Node Problem Detector è disattivato per impostazione predefinita all'avvio. Puoi attivare questa funzionalità utilizzando:

Utilizzo di uno script di avvio

Puoi abilitare il rilevatore dei problemi dei nodi utilizzando un'interfaccia script di avvio.

Utilizzo di cloud-init

L'esempio cloud-init spiega le nozioni di base per la configurazione di un'istanza Container-Optimized OS. Puoi usa cloud-init per abilitare il monitoraggio dello stato di integrità con i seguenti cloud-config esempio:

#cloud-config

runcmd:
- systemctl start node-problem-detector

Utilizzo dei metadati

In Container-Optimized OS Milestone 88 e versioni successive, Node Problem Detector può essere attivato anche impostando il valore di google-monitoring-enabled su true nella sezione dei metadati personalizzati.

Per abilitare il monitoraggio durante la creazione di un'istanza:

gcloud compute instances create VM_NAME \
    --image=IMAGE \
    --image-project=cos-cloud \
    --metadata=google-monitoring-enabled=true

Sostituisci quanto segue:

  • VM_NAME: il nome della nuova VM
  • IMAGE: una versione specifica di un'immagine Container-Optimized OS pubblica. Ad esempio, --image=cos-113-18244-85-29.

Per attivare il monitoraggio in un'istanza esistente:

gcloud compute instances add-metadata VM_NAME \
    --metadata=google-monitoring-enabled=true

Sostituisci VM_NAME con il nome della VM.

A partire dal traguardo 97, il monitoraggio può essere attivato nei metadati del progetto:

gcloud compute project-info add-metadata \
    --metadata google-monitoring-enabled=true

Dopo l'esecuzione, il servizio di rilevamento dei problemi del nodo verrà abilitato.

Utilizzare i criteri guest definiti dall'utente

Container-Optimized OS include l'agente di configurazione del sistema operativo, che utilizza le utilità di sistema del sistema operativo per mantenere lo stato della VM specificato nel criterio guest. Per informazioni dettagliate sui criteri ospite, consulta Attivare l'agente di configurazione del sistema operativo e Creare un criterio ospite. Il seguente criterio guest abilita l'agente rilevatore di problemi dei nodi su tutte le istanze.

recipes:
- name: recipe-enable-npd
  desiredState: INSTALLED
  installSteps:
  - scriptRun:
      interpreter: SHELL
      script: |-
        #!/bin/bash
        systemctl start node-problem-detector

Visualizzazione delle metriche raccolte

Node Problem Detector genera un elenco di metriche relative a una risorsa monitorata di istanze Compute Engine. Le metriche sono documentate nell'elenco delle metriche di monitoraggio, con prefisso compute.googleapis.com/guest/. Puoi visualizzare le metriche raccolte utilizzando Esplora metriche di Monitoring:

  1. Nella console Google Cloud, vai a Monitoraggio o utilizza il pulsante seguente:

    Vai a Monitoring

  2. Nel riquadro di navigazione di Monitoring, fai clic su Metrics Explorer.

  3. Per il tipo di risorsa, seleziona Istanza VM Compute Engine.

  4. Seleziona una metrica, ad esempio "Numero di problemi".

  5. I grafici e le statistiche dovrebbero essere visualizzati sul lato destro. Per visualizzare il risultato per un'istanza di Container-Optimized OS specifica, imposta il filtro su "instance_id=[INSTANCE_ID]", sostituzione di [INSTANCE_ID] con l'ID dell'istanza desiderata.

Disabilitazione del monitoraggio dello stato di integrità

Per disattivare il servizio che è già stato attivato tramite il tuo cloud-config o tramite lo script di avvio, rimuovi il passaggio systemctl start node-problem-detector, quindi riavvia Istanza Container-Optimized OS. Se abilitato da metadata, assicurati che la chiave google-monitoring-enabled sia impostata su false.