À partir du jalon 77, Container-Optimized OS inclut le Détecteur de problèmes de nœuds un agent. Vous pouvez utiliser cette fonctionnalité pour surveiller l'intégrité du système des instances COS. Le détecteur de problèmes de nœuds surveille l'état de l'instance et signale les problèmes liés à l'état à Cloud Monitoring, y compris les métriques de capacité et d'erreur, vous pouvez ensuite les visualiser à l'aide des tableaux de bord d'observabilité Google Cloud. Les métriques collectées à partir de la configuration par défaut sont gratuites. Google utilise des métriques agrégées pour comprendre les problèmes liés aux nœuds et améliorer la fiabilité de Container-Optimized OS.
Le détecteur de problèmes de nœuds est préconfiguré avec l'ensemble de métriques à exporter. Il n'est actuellement pas possible de personnaliser les métriques signalées pour le détecteur intégré. Node Problem Detector est un logiciel Open Source. Vous pouvez consulter son code source et ses configurations dans les dépôts sources respectifs.
Activer la surveillance de l'intégrité
L'agent du détecteur de problèmes de nœuds est désactivé par défaut au démarrage. Vous pouvez activer cette fonctionnalité à l'aide des éléments suivants :
Utiliser un script de démarrage
Vous pouvez activer le détecteur de problèmes de nœuds à l'aide d'un script de démarrage.
Utiliser cloud-init
L'exemple cloud-init
explique les bases de la configuration d'une instance Container-Optimized OS. Vous pouvez utiliser cloud-init
pour activer la surveillance de l'état avec l'exemple cloud-config
suivant :
#cloud-config
runcmd:
- systemctl start node-problem-detector
Utiliser des métadonnées
Dans Container-Optimized OS version de jalon 88 et ultérieure, le détecteur de problèmes de nœuds peut également être activé en définissant la valeur de google-monitoring-enabled
sur true
dans la section des métadonnées personnalisées.
Pour activer la surveillance lors de la création d'une instance, procédez comme suit :
gcloud compute instances create VM_NAME \ --image=IMAGE \ --image-project=cos-cloud \ --metadata=google-monitoring-enabled=true
Remplacez les éléments suivants :
VM_NAME
: nom de la nouvelle VMIMAGE
: version spécifique d'une image Container-Optimized OS publique. Exemple :--image=cos-113-18244-85-29
Pour activer la surveillance dans une instance existante, procédez comme suit :
gcloud compute instances add-metadata VM_NAME \ --metadata=google-monitoring-enabled=true
Remplacez VM_NAME
par le nom de la VM.
À partir du jalon 97, la surveillance peut être activée dans les métadonnées du projet :
gcloud compute project-info add-metadata \
--metadata google-monitoring-enabled=true
Après l'exécution, le service de détection de problèmes de nœuds sera activé.
Utiliser des règles d'invités définies par l'utilisateur
Container-Optimized OS inclut un agent OS Config qui se sert d'utilitaires du système d'exploitation pour conserver l'état de la VM spécifiée dans la règle d'invité. Pour plus d'informations sur les règles d'invité, consultez les sections Activer l'agent OS Config et Créer une règle d'invité. La règle d'invité suivante active l'agent Node Problem Detector (détecteur de problèmes de nœuds).
recipes:
- name: recipe-enable-npd
desiredState: INSTALLED
installSteps:
- scriptRun:
interpreter: SHELL
script: |-
#!/bin/bash
systemctl start node-problem-detector
Afficher les métriques collectées
Le détecteur de problèmes de nœuds présente une liste de métriques associées à une ressource surveillée par une instance Compute Engine.
Les métriques sont documentées dans la liste des métriques Monitoring, précédées de compute.googleapis.com/guest/
. Vous pouvez afficher les métriques collectées à l'aide de l'explorateur de métriques de Monitoring :
Dans Cloud Console, accédez à Monitoring ou cliquez sur le bouton suivant :
Dans le volet de navigation "Surveillance", cliquez sur Explorateur de métriques.
Pour le type de ressource, sélectionnez Instance de VM Compute Engine.
Sélectionnez une métrique (par exemple : "Nombre de problèmes").
Des graphiques et des statistiques doivent s'afficher sur le côté droit. Pour afficher le résultat d'une instance Container-Optimized OS spécifique, définissez le filtre sur
"instance_id=[INSTANCE_ID]"
, en remplaçant [INSTANCE_ID] par l'ID de l'instance souhaitée.
Désactiver la surveillance de l'état
Pour désactiver le service déjà activé via votre cloud-config
ou votre script de démarrage, supprimez l'étape systemctl start node-problem-detector
, puis redémarrez l'instance Container-Optimized OS. Si cette option est activée par les métadonnées, assurez-vous que la clé google-monitoring-enabled
est définie sur false
.