Ce document explique comment créer des stratégies d'extension de VM, qui vous permettent d'installer et de gérer automatiquement des extensions sur un parc de machines virtuelles (VM) Compute Engine. En définissant une règle, vous pouvez vous assurer que des extensions spécifiques sont installées et gérées sur toutes les VM qui correspondent aux critères que vous spécifiez, tels que les libellés de VM.
Avant de commencer
- Installez le composant bêta en exécutant la commande suivante :
gcloud components install beta
- Consultez les principes de base de VM Extension Manager.
- Consultez les quotas de VM Extension Manager.
- Activez l'API Compute Engine dans votre projet Google Cloud si elle n'est pas déjà activée.
- Assurez-vous que votre VM exécute la version
20241209.01ou une version ultérieure de l'agent invité. - Pour afficher les journaux de débogage des événements VM Extension Manager, configurez les paramètres de journalisation de l'agent invité.
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification permet 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 en sélectionnant l'une des options suivantes :
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Installez la Google Cloud CLI. Une fois que la Google Cloud CLI est installée, initialisez-la en exécutant la commande suivante :
gcloud initSi vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.
- Set a default region and zone.
Rôles IAM requis
Pour obtenir l'autorisation nécessaire pour créer une stratégie d'extension, demandez à votre administrateur de vous accorder le rôle IAM Administrateur des stratégies d'extension de VM (
roles/compute.vmExtensionPolicyAdmin). Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.Ce rôle prédéfini contient l'autorisation
compute.vmExtensionPolicies.create, qui est nécessaire pour créer une stratégie d'extension.Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur les rôles et autorisations IAM dans Compute Engine, consultez Rôles et autorisations Compute Engine.
Créer une règle d'extension de VM
Utilisez l'une des méthodes suivantes pour créer une règle d'extension de VM. Cette règle définit les extensions à installer et les VM sur lesquelles les installer.
Console
- Dans la console Google Cloud , accédez à la page Règles d'extension de VM.
- Cliquez sur Créer une règle d'extension.
- Dans le champ Nom, saisissez un nom pour la règle.
- Facultatif : Dans le champ Description, saisissez une description de la règle.
- 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 1 000.
- Dans la liste Zone, sélectionnez la zone dans laquelle vous souhaitez appliquer cette règle.
- Dans la section Extensions, cliquez sur Ajouter une extension, puis procédez comme suit pour chaque extension que vous souhaitez installer sur les VM cibles :
- Dans la liste Extension, sélectionnez une extension. Consultez la section Extensions compatibles.
- Dans la liste Version, indiquez le numéro de version de l'extension. Laissez ce champ vide pour sélectionner la dernière version.
- Pour l'agent Ops, vous pouvez spécifier la version
2.58.0ou ultérieure. - Pour les charges de travail Extension pour SAP et Extension pour Compute, laissez le champ vide pour sélectionner la dernière version.
- Pour l'agent Ops, vous pouvez spécifier la version
- Facultatif : Dans le champ Contenu du fichier de configuration, saisissez les paramètres de configuration de l'extension.
- Dans la section Instances de VM cibles, sélectionnez les VM pour la règle. Pour sélectionner des VM avec des libellés spécifiques, cliquez sur Ajouter des libellés, puis ajoutez la paire clé-valeur.
- Cliquez sur Créer.
gcloud
Pour créer une stratégie d'extension de VM et la déployer sur des VM dans une zone spécifique, utilisez la commande
gcloud beta compute zone-vm-extension-policies create:gcloud beta compute zone-vm-extension-policies create POLICY_NAME \ --zone=ZONE \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY
Remplacez les éléments suivants :
POLICY_NAME: nom de la règle d'extension de VM.ZONE: zone à laquelle s'applique cette règle.DESCRIPTION: description facultative de la règle.EXTENSION_NAME_1,EXTENSION_NAME_2: liste d'extensions à ajouter à la stratégie, séparées par une virgule. Vous devez spécifier au moins une extension. Voici les valeurs valides pour les extensions :ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: liste de paires clé/valeur séparées par une virgule, où la clé correspond au nom de l'extension et la valeur à la version de l'extension. Si vous ne spécifiez pas de version pour une extension, le gestionnaire d'extensions de VM utilise la dernière version disponible et la met à niveau automatiquement lorsque de nouvelles versions sont disponibles.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: liste de paires clé-valeur séparées par des virgules, où la clé est le nom de l'extension et la valeur est le chemin d'accès au fichier de configuration de cette extension. Ce chemin d'accès se trouve sur la VM sur laquelle vous exécutez la commandegcloud, et non sur celle sur laquelle vous installez l'extension.Vous pouvez également fournir la configuration sous forme de chaîne intégrée à l'aide de l'option
--configau lieu de--config-from-file, par exempleEXTENSION_NAME_1="CONFIG_1". Vous pouvez utiliser--config-from-fileou--config, mais pas les deux dans la même commande.KEY_1=VALUE_1: liste de paires clé/valeur séparées par une virgule qui définissent les libellés d'inclusion pour un sélecteur. Pour être ciblées, les VM doivent comporter tous les libellés spécifiés dans un sélecteur. Si vous spécifiez--inclusion-labelsplusieurs 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 65 535 qui définit la priorité de la stratégie. Plus le nombre est faible, plus la priorité est élevée. La valeur par défaut est 1 000.La commande échoue si une règle portant le nom spécifié existe déjà dans la zone.
Exemple 1
La commande suivante crée une règle nommée
test-extension-policyqui installe l'extensionops-agentdans la zoneus-central1-fpour le projettest-project. L'indicateur--config-from-filespécifie le chemin d'accès à un fichier local contenant une configuration YAML pour l'agent Ops.gcloud beta compute zone-vm-extension-policies create test-extension-policy \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml"
Exemple 2
La commande suivante crée une règle nommée
test-extension-policy-2qui installe l'extensionops-agentdans la zoneus-central1-fpour le projettest-projectsur les VM portant le libelléenv=prod. La priorité de la règle est définie sur500, et l'indicateur--config-from-filespécifie le chemin d'accès à un fichier local contenant une configuration YAML pour l'agent Ops.gcloud beta compute zone-vm-extension-policies create test-extension-policy-2 \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --priority=500 \ --inclusion-labels=env=prod
Étapes suivantes
- Découvrez comment gérer les extensions de VM.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/12/10 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/12/10 (UTC)."],[],[]] -