A partire da Milestone 77, Container-Optimized OS include l'agente Node Problem Detector. Puoi utilizzare questa funzionalità per monitorare l'integrità del sistema delle istanze COS. Il rilevatore di problemi dei nodi monitora l'integrità dell'istanza e segnala le metriche correlate a integrità a Cloud Monitoring, incluse le metriche di capacità ed errori che puoi visualizzare con le dashboard di Google Cloud Observability. Le metriche raccolte dalla configurazione predefinita sono gratuite. Google utilizzerà 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. La personalizzazione delle metriche dei report per l'agente integrato non è al momento supportata. Il rilevatore di problemi dei nodi è un software open source. Puoi esaminare il relativo codice sorgente e le relative configurazioni nei rispettivi repository di codice sorgente.
Abilitazione del monitoraggio dello stato di integrità in corso...
L'agente Node Problem Detector è disabilitato per impostazione predefinita al momento dell'avvio. Puoi attivare questa funzionalità utilizzando:
Utilizzo di uno script di avvio
Puoi abilitare il rilevatore di problemi dei nodi utilizzando uno script di avvio.
Utilizzo di cloud-init
L'esempio di cloud-init
spiega le nozioni di base per configurare un'istanza Container-Optimized OS. Puoi
utilizzare cloud-init
per abilitare il monitoraggio dello stato di integrità con il seguente
esempio di cloud-config
:
#cloud-config
runcmd:
- systemctl start node-problem-detector
Utilizzo dei metadati
Nel programma Container-Optimized OS Milestone 88 e versioni successive, è possibile abilitare il rilevatore dei problemi dei nodi anche impostando il valore google-monitoring-enabled
su true
nella sezione dei metadati personalizzati.
Per abilitare il monitoraggio durante la creazione di un'istanza:
gcloud compute instances create instance-name \
--image-family cos-stable \
--image-project cos-cloud \
--metadata google-monitoring-enabled=true
Per abilitare il monitoraggio in un'istanza esistente:
gcloud compute instances add-metadata instance-name \
--metadata google-monitoring-enabled=true
A partire dalla versione milestone 97, il monitoraggio può essere abilitato nei metadati del progetto:
gcloud compute project-info add-metadata \
--metadata google-monitoring-enabled=true
Dopo l'esecuzione, il servizio di rilevamento dei problemi dei nodi verrà abilitato.
Utilizzo dei criteri guest definiti dall'utente
Container-Optimized OS include l'agente OS Config, che utilizza le utilità di sistema del sistema operativo per mantenere lo stato della VM specificata nel criterio guest. Per maggiori dettagli sui criteri guest, vedi Abilitare l'agente OS Config e Creare un criterio guest. Il seguente criterio guest abilita l'agente Node problem Detector su tutte le istanze.
recipes:
- name: recipe-enable-npd
desiredState: INSTALLED
installSteps:
- scriptRun:
interpreter: SHELL
script: |-
#!/bin/bash
systemctl start node-problem-detector
Visualizzare le metriche raccolte
Il rilevatore dei problemi dei nodi segnala un elenco di metriche relative a una risorsa monitorata dell'istanza Compute Engine.
Le metriche sono documentate
nell'elenco delle metriche di Monitoring, con prefisso compute.googleapis.com/guest/
. Puoi visualizzare le metriche raccolte utilizzando Monitoring Metrics Explorer:
Nella console Google Cloud, vai a Monitoring o utilizza il pulsante seguente:
Nel riquadro di navigazione di Monitoring, fai clic su Metrics Explorer.
Per il tipo di risorsa, seleziona Istanza VM di Compute Engine.
Seleziona una metrica, ad esempio "Conteggio problemi".
Dovresti visualizzare grafici e statistiche a destra. Per visualizzare il risultato per una specifica istanza di Container-Optimized OS, imposta il filtro su
"instance_id=[INSTANCE_ID]"
, sostituendo [INSTANCE_ID] con l'ID dell'istanza desiderata.
Disabilitazione del monitoraggio dello stato di integrità
Per disabilitare il servizio che è già stato abilitato tramite cloud-config
o tramite lo script di avvio, rimuovi il passaggio systemctl start node-problem-detector
, quindi riavvia l'istanza del sistema operativo Container-Optimized OS. Se attivata dai metadati, assicurati che la chiave
google-monitoring-enabled
sia impostata su false
.