Vérifier la configuration de VM Manager


Ce document vous permet de vérifier que VM Manager est correctement configuré. Pour en savoir plus sur la configuration de VM Manager, consultez la section Configurer VM Manager.

Pour vérifier la configuration, vous pouvez utiliser la commande de dépannage ou effectuer des vérifications manuelles sur l'instance de machine virtuelle (VM).

Avant de commencer

  • Pour les VM Windows, utilisez PowerShell 3.0 ou version ultérieure.
  • Si ce n'est pas déjà fait, configurez l'authentification. L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud. Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine comme suit :

    Sélectionnez l'onglet correspondant à la façon dont vous prévoyez d'utiliser les exemples de cette page :

    Console

    Lorsque vous utilisez la console Google Cloud pour accéder aux services et aux API Google Cloud, vous n'avez pas besoin de configurer l'authentification.

    gcloud

    1. Installez Google Cloud CLI, puis initialisez-la en exécutant la commande suivante :

      gcloud init
    2. Définissez une région et une zone par défaut.

Utiliser la commande de dépannage

Exécutez la commande os-config troubleshoot pour vérifier la configuration. Si l'une des vérifications échoue, vous recevrez des commentaires sur la façon de résoudre le problème.

gcloud compute os-config troubleshoot VM_NAME \
   --zone=ZONE

Remplacez les éléments suivants :

  • VM_NAME : nom de l'instance de VM que vous souhaitez dépanner
  • ZONE : zone où se trouve l'instance

Examples

  • Exemple 1 : affiche le résultat de la commande os-config troubleshoot lorsque l'instance de VM rencontre des problèmes avec la configuration
  • Exemple 2 : affiche le résultat de la commande os-config troubleshoot lorsque l'instance de VM est correctement configurée.

Exemple 1

Pour résoudre un problème d'instance de VM appelée my-instance-1 dans la zone asia-east2-b, exécutez la commande suivante :

gcloud compute os-config troubleshoot my-instance-1 \
    --zone=asia-east2-b

Le résultat se présente comme suit :

OS Config troubleshooter tool is checking if there are issues with the
VM Manager setup for this VM instance.

> Is the OS Config API enabled? Yes
> Is the OS Config agent enabled? Yes
> Is the OS Config agent up to date? No

The version of OS Config agent running on this VM instance is not the
latest version.
See https://cloud.google.com/compute/docs/manage-os/upgrade-vm-manager#update-agent
on how to update the agent.

Exemple 2

Pour résoudre un problème d'instance de VM appelée my-instance-2 dans la zone us-west1-b, exécutez la commande suivante :

gcloud compute os-config troubleshoot my-instance-2 \
    --zone=us-west1-b

Le résultat se présente comme suit :

OS Config troubleshooter tool is checking if there are issues with the
VM Manager setup for this VM instance.

> Is the OS Config API enabled? Yes
> Is the OS Config agent enabled? Yes
> Is the OS Config agent up to date? Yes
> Is a service account present on the instance? Yes
> Is the OS Config Service account present for this instance? Yes
> Does this instance have a public IP or Private Google Access? Yes
This instance has a public IP.

Validation manuelle

Pour vérifier manuellement que VM Manager est correctement configuré, procédez comme suit :

Si VM Manager est correctement configuré, mais que vous rencontrez toujours des problèmes, consultez la page Résoudre les problèmes liés à VM Manager.

Vérifier si l'API OS Config est activée

Dans votre projet Google Cloud, vérifiez si l'API est activée.

Console

Dans Google Cloud Console, accédez à la page API OS Config.

Accéder à l'API OS Config

gcloud

gcloud services list --enabled

Si l'API est activée, le résultat se présente comme suit :

osconfig.googleapis.com              OS Config API

Si l'API n'est pas activée, activez l'API OS Config.

Vérifier si les métadonnées sont activées

Linux

Pour les métadonnées de projet, procédez comme suit sur la VM :

  1. Interrogez le point de terminaison des attributs du projet :

    curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/" \
    -H "Metadata-Flavor: Google"
    

    Si la valeur de métadonnées de l'agent est définie, le résultat se présente comme suit :

    enable-osconfig
    
  2. Si la valeur enable-osconfig s'affiche, interrogez le point de terminaison :

    curl "http://metadata.google.internal/computeMetadata/v1/project/attributes/enable-osconfig" \
    -H "Metadata-Flavor: Google"

    S'il est activé, le point de terminaison renvoie TRUE.

Si les métadonnées ne sont pas activées, activez les métadonnées OS Config.

Windows

Pour les métadonnées de projet, sur une VM, ouvrez un terminal PowerShell en tant qu'administrateur, puis exécutez la commande suivante :

  1. Interrogez le point de terminaison des attributs du projet :

    $value = (Invoke-RestMethod `
             -Headers @{'Metadata-Flavor' = 'Google'} `
             -Uri "http://metadata.google.internal/computeMetadata/v1/project/attributes/")
    $value
    

    Si la valeur de métadonnées de l'agent est définie, le résultat se présente comme suit :

    enable-osconfig
    
  2. Si la valeur enable-osconfig s'affiche, interrogez le point de terminaison :

    $value = (Invoke-RestMethod `
             -Headers @{'Metadata-Flavor' = 'Google'} `
             -Uri "http://metadata.google.internal/computeMetadata/v1/project/attributes/enable-osconfig")
    $value
    

    S'il est activé, le point de terminaison renvoie TRUE.

Si les métadonnées ne sont pas activées, activez les métadonnées OS Config.

Vérifier si l'agent OS Config est installé et en cours d'exécution

Linux

Pour vérifier si l'agent est installé sur votre VM Linux, exécutez la commande suivante :

sudo systemctl status google-osconfig-agent

Si l'agent est installé et en cours d'exécution, le résultat se présente comme suit :

google-osconfig-agent.service - Google OSConfig Agent
Loaded: loaded (/lib/systemd/system/google-osconfig-agent.service; enabled; vendor preset:
Active: active (running) since Wed 2020-01-15 00:14:22 UTC; 6min ago
Main PID: 369 (google_osconfig)
 Tasks: 8 (limit: 4374)
Memory: 102.7M
CGroup: /system.slice/google-osconfig-agent.service
        └─369 /usr/bin/google_osconfig_agent

S'il n'est pas installé, installez l'agent OS Config.

Windows

Pour vérifier si l'agent est installé sur votre VM Windows, exécutez la commande suivante :

PowerShell Get-Service google_osconfig_agent

Si l'agent est installé et en cours d'exécution, le résultat se présente comme suit :

Status   Name               DisplayName
------   ----               -----------
Running  google_osconfig... Google OSConfig Agent

S'il n'est pas installé, installez l'agent OS Config.

Vérifier si le compte de service est activé

Pour en savoir plus sur les exigences relatives aux comptes de service, consultez la section Présentation de la configuration.

Linux

Sur la VM, exécutez la commande suivante :

curl "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/" \
-H "Metadata-Flavor: Google"

Le résultat doit au moins inclure le compte de service par défaut.

default/

Windows

Sur la VM, ouvrez un terminal PowerShell en tant qu'administrateur, puis exécutez la commande suivante :

$value = (Invoke-RestMethod `
         -Headers @{'Metadata-Flavor' = 'Google'} `
         -Uri "http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/")
$value

Le résultat doit au moins inclure le compte de service par défaut.

default/

Vérifier si la VM peut communiquer avec l'API OS Config

Pour vérifier si la VM peut communiquer avec l'API OS Config, exécutez la commande suivante sur votre VM Linux ou Windows :

ping osconfig.googleapis.com

Pour arrêter de pinguer l'API OS Config, appuyez sur Ctrl + C.

Si votre VM est exécutée sur un réseau VPC privé et ne dispose pas d'un accès Internet public, vérifiez que vous avez activé l'Accès privé à Google.

Après avoir activé l'accès privé à Google, vérifiez que l'agent peut communiquer avec l'API OS Config.

Linux

Sur la VM, exécutez la commande suivante :

 curl --ssl 'https://osconfig.googleapis.com/$discovery/rest' | head

Si la VM peut communiquer avec l'API OS Config, le résultat de la commande ressemble à ce qui suit:

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                             Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0{
"discoveryVersion": "v1",
"baseUrl": "https://osconfig.googleapis.com/",
"ownerName": "Google",
"version": "v1beta",
"schemas": {
  "GooSettings": {
    "description": "Googet patching is performed by running `googet update`.",
    "properties": {},
    "id": "GooSettings",
100  9569    0  9569    0     0   198k      0 --:--:-- --:--:-- --:--:--  198k

Windows

Sur la VM, ouvrez un terminal PowerShell en tant qu'administrateur, puis exécutez la commande suivante :

 Invoke-RestMethod  -Headers @{'Metadata-Flavor' = 'Google'}
 -Uri 'https://osconfig.googleapis.com/$discovery/rest'

Étape suivante