Configurer l'agent pour les charges de travail Microsoft SQL Server

Ce document explique comment installer Agent for Compute Workloads sur des instances Compute Engine et le configurer pour qu'il se connecte à une charge de travail Microsoft SQL Server exécutée sur ces instances de calcul.

Une fois l'agent installé et configuré, il collecte les métriques de votre charge de travail SQL Server et des instances de calcul sous-jacentes, puis les envoie à Workload Manager. Vous pouvez ensuite utiliser l'évaluation Workload Manager pour analyser vos charges de travail SQL Server et détecter les écarts par rapport aux bonnes pratiques concernant les configurations d'infrastructure, de système d'exploitation et de charge de travail.

Avant de commencer

Avant d'installer et de configurer Agent for Compute Workloads, vous devez vous assurer que les conditions préalables suivantes sont remplies :

Rôles IAM requis pour l'agent

Agent for Compute Workloads utilise le compte de service associé à l'instance de calcul pour l'authentification et pour accéder aux ressources Google Cloud .

Pour améliorer la sécurité, nous vous recommandons d'utiliser un compte de service à usage unique plutôt que le compte de service Compute Engine par défaut.

Pour vous assurer que le compte de service dispose des autorisations nécessaires pour permettre à Agent for Compute Workloads de s'authentifier auprès deGoogle Cloud et d'accéder aux ressources Google Cloud , demandez à votre administrateur d'accorder au compte de service les rôles IAM suivants dans votre projet :

Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Votre administrateur peut également attribuer au compte de service les autorisations requises à l'aide de rôles personnalisés ou d'autres rôles prédéfinis.

Activer l'accès aux APIs Cloud

Compute Engine recommande de configurer vos instances de façon à accorder un niveau d'accès complet à toutes les APIs Cloud et à n'utiliser que les autorisations IAM du compte de service de l'instance pour contrôler les accès aux ressourcesGoogle Cloud . Pour en savoir plus, consultez Créer une VM qui utilise un compte de service géré par l'utilisateur.

Si vous limitez l'accès aux APIs Cloud, Agent for Compute Workloads nécessite au minimum les niveaux d'accès suivants aux APIs Cloud sur l'instance de calcul hôte :

https://www.googleapis.com/auth/cloud-platform

Pour en savoir plus, consultez les bonnes pratiques concernant les niveaux d'accès.

Si vous exécutez des applications SQL Server sur une instance de calcul qui ne possède pas d'adresse IP externe, vous devez activer l'accès privé à Google sur le sous-réseau de l'instance afin qu'Agent for Compute Workloads puisse accéder aux API et services Google. Pour savoir comment activer l'accès privé à Google, consultez Configurer l'accès privé à Google.

Autorisations requises sur SQL Server

Utilisez le script suivant pour attribuer les autorisations requises au compte utilisateur configuré dans l'agent.

    USE [master]
    GO 
GRANT VIEW SERVER STATE TO [user_name] GRANT VIEW ANY DEFINITION TO [user_name]
-- Adds db_datareader role to the user EXEC sp_MSForEachDB ' USE ? IF NOT EXISTS(SELECT * FROM sys.database_principals WHERE name = ''user_name'') BEGIN CREATE USER [user_name] FOR LOGIN [user_name] END EXEC sp_addrolemember ''db_datareader'', ''user_name'' '

Installer et configurer l'agent à l'aide du gestionnaire de packages

Cette section vous explique comment installer l'agent Agent for Compute Workloads sur votre instance de calcul et le configurer pour qu'il se connecte à une instance SQL Server à l'aide d'un gestionnaire de packages.

Pour installer Agent for Compute Workloads, procédez comme suit :

Windows

Sous Windows, vous installez Agent for Compute Workloads à l'aide de la commande de gestion de packages googet. Cette commande effectue les tâches suivantes :

  • Elle télécharge la dernière version de l'agent.
  • Elle crée un service Windows nommé google-cloud-workload-agent.
  • Elle crée une tâche planifiée qui s'exécute toutes les minutes pour vérifier si le service est en cours d'exécution et, si nécessaire, le redémarrer.

Pour installer et configurer Agent for Compute Workloads sur une instance de calcul basée sur Windows, procédez comme suit :

  1. Établissez une connexion avec votre instance de calcul à l'aide de RDP.

    Pour savoir comment procéder, consultez Se connecter à des VM Windows à l'aide de RDP.

  2. En tant qu'administrateur, exécutez les commandes suivantes à partir de PowerShell :

    googet addrepo google-cloud-workload-agent  https://packages.cloud.google.com/yuck/repos/google-cloud-workload-agent-windows-x86_64
    googet install google-cloud-workload-agent
    
  3. Modifiez le fichier de configuration de l'agent :

    %ProgramFiles%\Google\google-cloud-workload-agent\conf\configuration.json
    
  4. Spécifiez des valeurs pour tous les paramètres obligatoires, comme décrit dans Paramètres de configuration.

  5. Enregistrez le fichier de configuration.

  6. Redémarrez l'agent pour que les modifications prennent effet.

RHEL

Sur Red Hat Enterprise Linux (RHEL), vous installez Agent for Compute Workloads à l'aide de la commande de gestion de packages yum. Cette commande effectue les tâches suivantes :

  • Elle télécharge la dernière version de l'agent.
  • Elle crée un service systemd pour l'agent, nommé google-cloud-workload-agent.
  • Elle active et démarre le service google-cloud-workload-agent.

Pour installer et configurer Agent for Compute Workloads sur une instance de calcul basée sur RHEL, procédez comme suit :

  1. Établissez une connexion SSH avec votre instance de calcul.

  2. Dans votre terminal, installez l'agent :

    sudo tee /etc/yum.repos.d/google-cloud-workload-agent.repo << EOM
    [google-cloud-workload-agent]
    name=Google Cloud Agent for Compute Workloads
    baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-$basearch
    enabled=1
    gpgcheck=0
    repo_gpgcheck=1
    gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    EOM
    sudo yum install google-cloud-workload-agent
    
  3. Modifiez le fichier de configuration de l'agent :

    /etc/google-cloud-workload-agent/configuration.json
    
  4. Spécifiez des valeurs pour tous les paramètres obligatoires, comme décrit dans Paramètres de configuration.

  5. Enregistrez le fichier de configuration.

  6. Redémarrez l'agent pour que les modifications prennent effet.

SLES

Sur SUSE Linux Enterprise Server (SLES), vous installez Agent for Compute Workloads à l'aide de la commande de gestion des packages zypper. Cette commande effectue les tâches suivantes :

  • Elle télécharge la dernière version de l'agent.
  • Elle crée un service systemd pour l'agent, nommé google-cloud-workload-agent.
  • Elle active et démarre le service google-cloud-workload-agent.

Pour installer et configurer Agent for Compute Workloads sur une instance de calcul basée sur SLES, procédez comme suit :

  1. Établissez une connexion SSH avec votre instance de calcul.

  2. Dans votre terminal, installez l'agent :

    sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-$basearch
    google-cloud-workload-agent
    sudo zypper install google-cloud-workload-agent
    
  3. Modifiez le fichier de configuration de l'agent :

    /etc/google-cloud-workload-agent/configuration.json
    
  4. Spécifiez des valeurs pour tous les paramètres obligatoires, comme décrit dans Paramètres de configuration.

  5. Enregistrez le fichier de configuration.

  6. Redémarrez l'agent pour que les modifications prennent effet.

Debian

Sur Debian, vous installez Agent for Compute Workloads à l'aide de la commande de gestion des packages apt. Cette commande effectue les tâches suivantes :

  • Elle télécharge la dernière version de l'agent.
  • Elle crée un service systemd pour l'agent, nommé google-cloud-workload-agent.
  • Elle active et démarre le service google-cloud-workload-agent.

Pour installer et configurer Agent for Compute Workloads sur une instance de calcul basée sur Debian, procédez comme suit :

  1. Établissez une connexion SSH avec votre instance de calcul.

  2. Dans votre terminal, installez l'agent :

    echo 'deb https://packages.cloud.google.com/apt google-cloud-workload-agent-x86-64-apt main' | sudo tee -a /etc/apt/sources.list.d/google-cloud-workload-agent.list
    sudo apt-get update
    sudo apt-get install google-cloud-workload-agent
    
  3. Modifiez le fichier de configuration de l'agent :

    /etc/google-cloud-workload-agent/configuration.json
    
  4. Spécifiez des valeurs pour tous les paramètres obligatoires, comme décrit dans Paramètres de configuration.

  5. Enregistrez le fichier de configuration.

  6. Redémarrez l'agent pour que les modifications prennent effet.

Installer et gérer l'agent sur un parc de VM à l'aide de VM Extension Manager

Configurer VM Extension Manager

Pour configurer VM Extension Manager, procédez comme suit :

Installer l'agent sur un parc de VM

Pour installer la dernière version d'Agent for Compute Workloads sur votre parc de VM dans une zone spécifique à l'aide d'une stratégie VM Extension Manager, procédez comme suit :

Console

  1. Dans la console Google Cloud , accédez à la page Règles d'extension de VM.

    Accéder aux règles d'extension de VM

  2. Cliquez sur Créer une règle d'extension.

  3. Dans le champ Nom, saisissez un nom pour la règle.

  4. Facultatif : Dans le champ Description, saisissez une description de la règle.

  5. Dans le champ Priorité, spécifiez un numéro de priorité pour résoudre les conflits entre les règles. Plus le nombre est faible, plus la priorité est élevée. La valeur par défaut est 1000.

  6. Dans les listes Région et Zone, sélectionnez la zone dans laquelle vous souhaitez appliquer cette règle.

  7. Dans la section Extensions, cliquez sur Ajouter une extension, puis procédez comme suit :

    1. Dans la liste Extension, sélectionnez Extension Google Cloud pour les charges de travail Compute.
    2. Laissez le champ Version vide.

      Cette directive indique à la stratégie d'installer la dernière version d'Agent for Compute Workloads.

    3. Dans le champ Contenu du fichier de configuration, saisissez la configuration que vous souhaitez appliquer à l'agent.

      Pour en savoir plus sur les paramètres de configuration compatibles avec l'agent pour votre charge de travail SQL Server, consultez Paramètres de configuration.

    4. Cliquez sur OK.

  8. Facultatif : Pour limiter le déploiement de la règle aux VM requises, procédez comme suit :

    1. Cliquez sur Ajouter des libellés et incluez les libellés qui identifient les VM requises.
    2. Cliquez sur OK.
  9. Cliquez sur Créer.

gcloud

gcloud beta compute zone-vm-extension-policies create POLICY_NAME \
    --zone=ZONE \
    --extensions=google-cloud-workload-extension \
    --config-from-file=google-cloud-workload-extension=CONFIG_FILE_PATH \
    [--description="DESCRIPTION" \]
    [--inclusion-labels=KEY_1=VALUE_1 \]
    [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \]
    [--priority=PRIORITY]

Remplacez les éléments suivants :

  • POLICY_NAME : nom de la règle d'extension de VM.

    La commande échoue si une règle portant le nom spécifié existe déjà dans la zone.

  • ZONE : zone à laquelle appliquer cette règle.

  • CONFIG_FILE_PATH : chemin d'accès local au fichier JSON contenant la configuration permettant à l'agent pour les charges de travail Compute de se connecter à votre charge de travail SQL Server.

    • Vous pouvez également fournir la configuration sous forme de chaîne intégrée à l'aide de l'indicateur --config au lieu de --config-from-file. Exemple : --config=google-cloud-workload-extension="CONFIG". Google Cloud vous recommande d'utiliser --config-from-file.
    • Vous pouvez utiliser --config-from-file ou --config, mais pas les deux dans la même commande.
    • Pour en savoir plus sur les paramètres de configuration compatibles avec l'agent pour votre charge de travail SQL Server, consultez Paramètres de configuration.
  • DESCRIPTION : description facultative de la règle.

  • KEY_1=VALUE_1 : liste de paires clé-valeur séparées par une virgule qui définissent les libellés utilisés par la règle pour cibler les VM.

    • Pour qu'une VM soit ciblée par votre règle, elle doit comporter tous les libellés spécifiés.
    • Si vous spécifiez --inclusion-labels plusieurs fois, la règle cible les VM qui correspondent à l'un des sélecteurs fournis (OR logique). Si vous omettez cet indicateur, la règle cible toutes les VM de la zone spécifiée.
  • PRIORITY : entier compris entre 0 et 65535 qui définit la priorité de la règle. Plus le nombre est faible, plus la priorité est élevée. La valeur par défaut est 1000.

Exemple :

La commande suivante crée une règle nommée test-agent-policy dans le projetGoogle Cloud nommé test-project, qui installe la dernière version de l'agent pour les charges de travail Compute sur toutes les VM déployées dans la zone us-centrail-f. La configuration spécifiée dans agent-config.json est appliquée à l'agent.

gcloud beta compute zone-vm-extension-policies create test-agent-policy  \
    --project=test-project \
    --zone=us-central1-f \
    --extensions=google-cloud-workload-extension \
    --config-file-path=google-cloud-workload-extension="/usr/agent-config.json"

Vérifier l'installation de l'agent

Pour vérifier que l'agent s'exécute comme prévu, procédez comme suit :

Windows

  1. Établissez une connexion avec votre instance de calcul à l'aide de RDP.

    Pour savoir comment procéder, consultez Se connecter à des VM Windows à l'aide de RDP.

  2. En tant qu'administrateur, exécutez la commande suivante à partir de PowerShell :

    $(Get-Service -Name 'google-cloud-workload-agent' -ErrorAction Ignore).Status
    

    Si l'agent s'exécute comme prévu, l'état est Running.

RHEL

  1. Établissez une connexion SSH avec votre instance de calcul.

  2. Vérifiez l'état du package de l'agent :

    systemctl status google-cloud-workload-agent
    

    Si le package d'agent s'exécute comme prévu, la sortie contient active (running). Exemple :

    google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled)
    Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago
    Main PID: 14412 (google_cloud_sq)
      Tasks: 7
    Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M)
    CGroup: /system.slice/google-cloud-workload-agent.service
            └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run

SLES

  1. Établissez une connexion SSH avec votre instance de calcul.

  2. Vérifiez l'état du package de l'agent :

    systemctl status google-cloud-workload-agent
    

    Si le package d'agent s'exécute comme prévu, la sortie contient active (running). Exemple :

    google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled)
    Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago
    Main PID: 14412 (google_cloud_sq)
      Tasks: 7
    Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M)
    CGroup: /system.slice/google-cloud-workload-agent.service
            └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run

Debian

  1. Établissez une connexion SSH avec votre instance de calcul.

  2. Vérifiez l'état du package de l'agent :

    systemctl status google-cloud-workload-agent
    

    Si le package d'agent s'exécute comme prévu, la sortie contient active (running). Exemple :

    google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled)
    Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago
    Main PID: 14412 (google_cloud_sq)
      Tasks: 7
    Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M)
    CGroup: /system.slice/google-cloud-workload-agent.service
            └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run

Paramètres de configuration

Le tableau suivant décrit les paramètres du fichier de configuration de l'agent.

Paramètres
log_level

String

Pour définir le niveau de journalisation de l'agent, définissez la valeur requise. Les niveaux de journalisation disponibles sont les suivants :

  • DEBUG
  • INFO
  • WARNING
  • ERROR

Le niveau de journalisation par défaut est INFO. Ne modifiez pas le niveau de journalisation, sauf si vous êtes dirigé par le service client Cloud Customer Care.

log_to_cloud

Boolean

Pour rediriger les journaux de l'agent vers Cloud Logging, spécifiez true. La valeur par défaut est true.

agent_properties.log_usage_metrics

Boolean

Pour activer la journalisation des métriques d'état de l'agent, définissez la valeur sur true. La valeur par défaut est false.

common_discovery.collection_frequency

Duration

Spécifiez la fréquence, en secondes, à laquelle le service de découverte des charges de travail de l'agent s'exécute. La valeur par défaut est 10800s.

Assurez-vous que la valeur de ce paramètre se termine par un s en minuscules.

sqlserver_configuration.enabled

Boolean

Pour activer la collecte des métriques SQL Server dans l'agent, définissez la valeur sur true. La valeur par défaut est false.

sqlserver_configuration.collection_configuration.collect_guest_os_metrics

Boolean

Pour activer la collecte des métriques de l'OS, définissez la valeur sur true. La valeur par défaut est true.
Ne définissez pas sqlserver_configuration.collection_configuration.collect_guest_os_metrics sur false, sauf si vous êtes dirigé par le service client Cloud Customer Care.

sqlserver_configuration.collection_configuration.collect_sql_metrics

Boolean

Pour activer la collecte des métriques SQL Server, spécifiez true. La valeur par défaut est true.
Ne définissez pas sqlserver_configuration.collection_configuration.collect_sql_metrics sur false, sauf si vous êtes dirigé par le service client Cloud Customer Care.

sqlserver_configuration.collection_configuration.collection_frequency

Duration

Fréquence de collecte des métriques de l'agent pour les charges de travail de calcul, en secondes. La valeur par défaut est 3600s. Vous pouvez modifier la fréquence de collecte. Toutefois, nous vous recommandons de conserver la valeur par défaut.

sqlserver_configuration.credential_configurations[].connection_parameters[].host

String

Nom d'hôte SQL Server.

sqlserver_configuration.credential_configurations[].connection_parameters[].username

String

Spécifiez le compte utilisateur utilisé pour interroger l'instance SQL Server. Pour configurer les autorisations de compte, passez en revue les autorisations requises dans le script d'autorisation et accordez-les conformément à vos règles internes.

Remarque : Si vous utilisez l'authentification Windows, assurez-vous de spécifier le nom d'utilisateur au format suivant : domain-name\\user-name

sqlserver_configuration.credential_configurations[].connection_parameters[].secret.project_id

String

ID du projet dans lequel le secret est stocké. Définissez-le sur une chaîne vide ("") si le secret et l'instance de VM hôte existent dans le même projet Google Cloud .

sqlserver_configuration.credential_configurations[].connection_parameters[].secret.secret_name

String

Pour fournir le mot de passe du compte utilisateur de base de données utilisé par l'agent pour interroger SQL Server de manière sécurisée, spécifiez le nom du secret dans Secret Manager contenant les identifiants de sécurité du compte utilisateur de base de données.

Remarque : Le secret et l'instance de VM hôte doivent se trouver dans le même projet Google Cloud .

sqlserver_configuration.credential_configurations[].connection_parameters[].port

Int

Spécifiez le port sur lequel l'instance SQL Server accepte les requêtes.

sqlserver_configuration.credential_configurations[].remote_win.connection_parameters.host

String

Adresse IP ou nom de domaine complet de la VM Windows distante

sqlserver_configuration.credential_configurations[].remote_win.connection_parameters.username

String

Spécifiez le compte utilisateur utilisé pour vous connecter à distance à la VM Windows.

sqlserver_configuration.credential_configurations[].remote_win.connection_parameters.secret.secret_name

String

Pour fournir le mot de passe du compte utilisateur Windows utilisé par l'agent pour se connecter à distance à la VM de manière sécurisée, spécifiez le nom du secret dans Secret Manager contenant les identifiants de sécurité du compte utilisateur de base de données.

Remarque : Le secret et l'instance de VM hôte doivent se trouver dans le même projet Google Cloud .

sqlserver_configuration.credential_configurations[].local_collection

Boolean

Spécifiez true pour indiquer que l'agent collecte des données locales. La valeur par défaut est true.

sqlserver_configuration.credential_configurations[].remote_linux.connection_parameters.host

String

Adresse IP ou nom de domaine complet de la VM Linux distante.

sqlserver_configuration.credential_configurations[].remote_linux.connection_parameters.username

String

Spécifiez le compte utilisateur utilisé pour se connecter à distance à la VM Linux.

sqlserver_configuration.credential_configurations[].remote_linux.connection_parameter.port

Int

Spécifiez le numéro de port SSH pour la VM Linux distante.

sqlserver_configuration.credential_configurations[].remote_linux.linux_ssh_private_key_path

String

Spécifiez le chemin d'accès au fichier de clé privée SSH.

sqlserver_configuration.credential_configurations[].vm_properties.instance_name

String

Indiquez le nom de votre instance de VM Compute Engine.

Remarque : Facultatif pour la collecte locale.

sqlserver_configuration.credential_configurations[].vm_properties.instance_id

String

Indiquez l'ID de votre instance de VM Compute Engine.

Remarque : Facultatif pour la collecte locale.

sqlserver_configuration.collection_timeout

Duration

Délai avant expiration pour la collecte des métriques, en secondes. La valeur par défaut est "10s".

sqlserver_configuration.max_retries

Int

Nombre maximal de nouvelles tentatives en cas d'échec de la collecte. La valeur par défaut est "3".

sqlserver_configuration.retry_frequency

Duration

Spécifiez la fréquence à laquelle l'agent doit réessayer en cas d'échec de la collecte. La valeur par défaut est "3600s".

sqlserver_configuration.remote_collection

Boolean

Spécifiez true pour indiquer que l'agent collecte des données à distance. La valeur par défaut est false.

Exemple de fichier de configuration

Voici un exemple de configuration qui permet à Agent for Compute Workloads de se connecter à une instance SQL Server :

Collecte locale

{
"log_level": "INFO",
"common_discovery": {
    "collection_frequency": "10800s"
},
"sqlserver_configuration": {
    "enabled": true,
    "collection_configuration": {
        "collect_guest_os_metrics": true,
        "collect_sql_metrics": true,
        "collection_frequency": "60s"
    },
    "credential_configurations": [
        {
            "connection_parameters": [
                {
                    "host": ".",
                    "username": "db_user_name",
                    "secret": {
                        "project_id": "",
                        "secret_name": "idb_pwd_secret_name"
                    },
                    "port": 1433
                }
            ],
            "local_collection": true
        }
    ],
    "collection_timeout": "60s",
    "max_retries": 5,
    "retry_frequency": "3600s"
}
}

Collecte à distance

{
"log_level": "INFO",
"common_discovery": {
    "collection_frequency": "10800s"
},
"sqlserver_configuration": {
    "enabled": true,
    "collection_configuration": {
        "collect_guest_os_metrics": true,
        "collect_sql_metrics": true,
        "collection_frequency": "60s"
    },
    "credential_configurations": [
        {
            "connection_parameters": [
                {
                    "host": "sql_server_instance",
                    "username": "db_user_name",
                    "secret": {
                        "project_id": "",
                        "secret_name": "db_pwd_secret_name"
                    },
                    "port": 1433
                }
            ],
            "remote_win": {
                "connection_parameters": {
                    "host": "sql_server_instance",
                    "username": "user_name",
                    "secret": {
                        "project_id": "",
                        "secret_name": "pwd_secret_name"
                    }
                }
            },
            "vm_properties": {
                "instance_name": "db01",
                "instance_id": "9999999999999999999"
            }
        },
        {
            "connection_parameters": [
                {
                    "host": "sql_server_instance",
                    "username": "db_user_name",
                    "secret": {
                        "project_id": "",
                        "secret_name": "db_pwd_secret_name"
                    },
                    "port": 1433
                }
            ],
            "remote_linux": {
                "connection_parameters": {
                    "host": "sql_server_instance",
                    "username": "user_name",
                    "secret": {
                        "project_id": "",
                        "secret_name": "pwd_secret_name"
                    },
                    "port": 22
                },
                "linux_ssh_private_key_path": "path of the private key"
            },
            "vm_properties": {
                "instance_name": "db02",
                "instance_id": "9999999999999999999"
            }
        }
    ],
    "collection_timeout": "10s",
    "max_retries": 3,
    "retry_frequency": "3600s",
    "remote_collection": true
}
}

Vérifier la version de l'agent

Pour afficher la version de l'agent, procédez comme suit :

Windows

  1. Utilisez RDP pour vous connecter à la machine hôte.
  2. En tant qu'administrateur, exécutez la commande suivante à partir de PowerShell :
    googet installed google-cloud-workload-agent

RHEL

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    yum info google-cloud-workload-agent

SUSE

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    zypper info google-cloud-workload-agent

Debian

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    dpkg -s google-cloud-workload-agent | grep version

Redémarrer l'agent

Si Agent for Compute Workloads cesse de fonctionner ou si vous mettez à jour sa configuration, redémarrez l'agent.

Sélectionnez votre système d'exploitation, puis procédez comme suit :

Windows

  1. Utilisez RDP pour vous connecter à la machine hôte.
  2. En tant qu'administrateur, exécutez la commande suivante à partir de PowerShell :
    Restart-Service -Name 'google-cloud-workload-agent' -Force

Linux

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    sudo systemctl restart google-cloud-workload-agent

Mettre à jour l'agent

Pour vous assurer que vous disposez de la dernière version de l'agent, vous devez régulièrement vérifier si des mises à jour sont disponibles et mettre à jour l'agent.

Rechercher des mises à jour

Sélectionnez votre système d'exploitation, puis procédez comme suit :

Windows

  1. Utilisez RDP pour vous connecter à la machine hôte.
  2. En tant qu'administrateur, exécutez la commande suivante à partir de PowerShell :
    googet latest google-cloud-workload-agent

RHEL

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    sudo yum check-update google-cloud-workload-agent

SLES

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    sudo zypper list-updates -r google-cloud-workload-agent

Debian

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    sudo apt list google-cloud-workload-agent

Installer une mise à jour

Sélectionnez votre système d'exploitation, puis procédez comme suit :

Windows

  1. Utilisez RDP pour vous connecter à la machine hôte.
  2. En tant qu'administrateur, exécutez la commande suivante à partir de PowerShell :
    googet install google-cloud-workload-agent

RHEL

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    sudo yum --nogpgcheck update google-cloud-workload-agent

SLES

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    sudo zypper --no-gpg-checks update google-cloud-workload-agent

Debian

  1. Utilisez SSH pour vous connecter à la machine hôte.
  2. Exécutez la commande suivante :
    sudo apt-get install google-cloud-workload-agent

Afficher les journaux de l'agent dans Cloud Logging

Par défaut, les journaux de l'agent for Compute Workloads sont redirigés depuis vos instances de VM vers Cloud Logging.

Pour afficher les journaux de l'agent dans Logging, procédez comme suit :

  1. Dans la console Google Cloud , accédez à la page Explorateur de journaux.

    Accéder à l'explorateur de journaux

  2. Accédez au volet Requête.

  3. Dans le menu déroulant Ressources, sélectionnez Global, puis cliquez sur Appliquer.

  4. Dans l'éditeur de requêtes, saisissez google-cloud-workload-agent.

  5. Cliquez sur Exécuter la requête.

    Vous devriez voir les journaux générés par les instances d'agent s'exécutant sur l'ensemble de vos instances de VM. Pour filtrer les journaux d'une machine spécifique, utilisez les filtres disponibles dans l'interface.

Désactiver les journaux de l'agent dans Cloud Logging

Pour désactiver la redirection par défaut des journaux de l'agent vers Cloud Logging, procédez comme suit :

  1. Établissez une connexion RDP ou SSH avec votre instance de VM hôte.

  2. Modifiez le fichier de configuration de l'agent :

    Windows

    %ProgramFiles%\Google\google-cloud-workload-agent\conf\configuration.json

    Linux

    /etc/google-cloud-workload-agent/configuration.json

  3. Pour la propriété log_to_cloud, remplacez la valeur par false.

  4. Enregistrez le fichier de configuration.

  5. Redémarrez l'agent pour que cette modification soit prise en compte.

Résoudre les problèmes

Les sections suivantes fournissent des informations sur les problèmes courants liés à l'utilisation de l'agent pour les charges de travail Compute, leurs causes et leur résolution.

Champs d'application d'authentification insuffisants

Problème : Si vous limitez les niveaux d'accès sur votre instance de VM hôte, l'erreur de l'agent pour les charges de travail Compute peut afficher une erreur d'autorisation IAM insuffisante.

  googleapi: Error 403: Request had insufficient authentication scopes.
  Details:
  [
    {
      "@type": "type.googleapis.com/google.rpc.ErrorInfo",
      "domain": "googleapis.com",
      "metadata": {
        "method": "google.cloud.workloadmanager.datawarehouse.v1.DataCollectService.WriteInsight",
        "service": "workloadmanager.googleapis.com"
      },
      "reason": "ACCESS_TOKEN_SCOPE_INSUFFICIENT"
    }
  ]

More details: Reason: insufficientPermissions, Message: Insufficient Permission

Cause : Agent for Compute Workloads nécessite un minimum de niveaux d'accès aux API Cloud sur l'instance de VM hôte.

Solution : pour résoudre ce problème, activez les scopes d'accès requis.

Échec du chargement du fichier de configuration

Problème : si le fichier de configuration contient des valeurs non valides, l'erreur suivante s'affiche.

"Failed to load configuration","pid":3524,"error":"proto: (line 19:42): unknown
field "{field_name}"

Résolution : pour résoudre ce problème, mettez à jour le fichier de configuration en utilisant les informations de la section Paramètres de configuration.

Échec de l'initialisation de la collecte de données

Problème : Si le fichier de configuration n'est pas mis à jour après l'installation de l'agent, l'erreur suivante s'affiche :

"Failed to initialize guest collection","pid":2112,"error":"invalid value for "user_name" "secret_name"

Résolution : pour résoudre ce problème, initialisez la configuration des identifiants à l'aide des paramètres de configuration.

Étapes suivantes