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 VMIMAGE
: 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:
Nella console Google Cloud, vai a Monitoraggio o utilizza il pulsante seguente:
Nel riquadro di navigazione di Monitoring, fai clic su Metrics Explorer.
Per il tipo di risorsa, seleziona Istanza VM Compute Engine.
Seleziona una metrica, ad esempio "Numero di problemi".
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
.