Les groupes de nœuds à locataire unique partagés sont semblables aux groupes de nœuds à locataire unique locaux. Par exemple, les groupes de nœuds partagés ont le même coût, consomment le même quota et résident dans un projet parent dans la hiérarchie des ressources.
La différence entre les groupes de nœuds partagés et les groupes de nœuds locaux est que d'autres projets de votre organisation peuvent provisionner des instances de machines virtuelles (VM) dans les groupes de nœuds partagés.
Le partage d'un groupe de nœuds entre plusieurs projets ou organisations peut vous aider à effectuer les opérations suivantes :
Regroupez les groupes de nœuds que vous gérez dans un seul projet, puis partagez ces nœuds avec d'autres projets ou l'ensemble de l'organisation
Réduire les coûts en supprimant les nœuds après le regroupement des VM de différents projets en groupes de nœuds sous-utilisés
Gérer les nœuds à locataire unique avec une seule équipe
Partager des nœuds à locataire unique avec des projets plus petits tout en conservant les limites de sécurité et de contrôle d'accès entre ces projets
Effectuer une migration à chaud entre des groupes de nœuds dans un même projet
Améliorez l'utilisation de vos groupes de nœuds et réduisez le nombre de nœuds de maintenance réservés lorsque vous utilisez la règle de maintenance Migrer dans le groupe de nœuds.
Le schéma suivant montre un groupe de nœuds partagé avec d'autres projets afin que les autres services qui gèrent les VM de ces projets puissent provisionner des VM dans un groupe de nœuds partagé.
Avantages de l'utilisation de groupes de nœuds partagés
Le tableau suivant compare les projets qui utilisent des groupes de nœuds locaux avec des projets utilisant des groupes de nœuds partagés. Notez que la sous-utilisation des processeurs virtuels diminue dans les projets utilisant des groupes de nœuds partagés.
Configuration du projet | Groupes de nœuds locaux | Groupes de nœuds partagés |
---|---|---|
Projets | 10 | 10 |
Processeur virtuel / projet | 24 | 24 |
Groupes de nœuds | 10 | 1 |
Nœuds / Groupes de nœuds | 1 | 3 |
Processeur virtuel / nœud | 80 | 80 |
Utilisation / Groupe de nœuds | 24 | 80 |
Sous-utilisation / Groupe de nœuds | 56 | 0 |
Sous-utilisation totale | 10 x 56 = 560 processeurs virtuels | 1 x 0 = 0 processeur virtuel |
Paramètres de partage des groupes de nœuds
Compute Engine utilise les paramètres suivants pour partager des groupes de nœuds et provisionner des VM dans les groupes de nœuds partagés :
Un paramètre de partage que vous configurez lorsque vous créez ou mettez à jour le groupe de nœuds à locataire unique. Pour spécifier si vous souhaitez partager le groupe de nœuds avec d'autres projets ou avec l'ensemble de l'organisation, utilisez les paramètres de la gcloud CLI (
--share-setting
,--share-with
) ou les paramètres REST (shareSetting
,shareWith
).Un libellé d'affinité de nœud
compute.googleapis.com/project
par défaut que vous utilisez lorsque vous provisionnez une VM dans un groupe de nœuds partagé à l'aide de libellés d'affinité de nœuds. Pour en savoir plus sur les autres libellés d'affinité de nœuds par défaut, consultez la section Libellés d'affinité par défaut.
Remarques sur les règles de maintenance
Lorsqu'un groupe de nœuds utilise la règle de maintenance Migrer dans le groupe de nœuds, Compute Engine réserve au moins un nœud pour les événements de migration à chaud. Le groupe de nœuds doit donc comporter au moins deux nœuds. Vous ne pouvez pas planifier de VM dans le nœud réservé. Par conséquent, les groupes de nœuds avec cette règle de maintenance présentent souvent une utilisation globale plus faible. Les charges de travail qui nécessitent la stratégie de maintenance Migrer dans le groupe de nœuds sont donc parfaitement adaptées au partage de groupes de nœuds, car elles présentent souvent le meilleur avantage d'une utilisation améliorée.
Rôles et autorisations IAM
Gardez à l'esprit les informations suivantes sur les rôles et les autorisations IAM lorsque vous partagez un groupe de nœuds :
Si un groupe de nœuds est partagé avec un projet, tout utilisateur pouvant créer des VM dans les projets répertoriés ou dans l'organisation peut provisionner des VM de ces projets dans les groupes de nœuds partagés sans modifier les rôles ni les autorisations IAM.
Le rôle IAM
compute.soleTenantViewer
vous permet de répertorier et d'afficher les groupes de nœuds (gcloud CLI/REST). Vous ne pouvez pas modifier les groupes de nœuds avec ce rôle. Tout utilisateur disposant de ce rôle ou disposant des autorisations nécessaires pour répertorier les groupes de nœuds, indépendamment des autorisations IAM sur la VM, peut afficher l'ID du projet, le nom, le type de machine et des informations sur les disques SSD locaux et les GPU pour toutes les VM du groupe de nœuds.
Limites
Limites des régimes de conformité :
- Indépendamment des autorisations IAM sur la VM, tout utilisateur disposant des autorisations nécessaires pour répertorier les groupes de nœuds peut afficher l'ID du projet, le nom et le type de machine de toutes les VM du groupe de nœuds. Par conséquent, en raison du risque de divulgation d'informations entre projets, les projets dont les VM sont provisionnées dans des groupes de nœuds partagés doivent être soumis au même régime de conformité.
Limites de la console Google Cloud :
- Si vous n'êtes pas autorisé à afficher les VM dans le groupe de nœuds partagé, ces VM n'apparaissent pas dans la liste des VM de la page Nœuds à locataire unique dans la console Google Cloud.
- Après avoir modifié les paramètres de partage sur la page Groupes de nœuds à locataire unique, le paramètre Partagé avec n'est pas mis à jour dans l'interface utilisateur. Pour afficher le paramètre Partagé avec mis à jour, accédez à la page Nœuds à locataire unique.
- Après avoir partagé un groupe de nœuds avec tous les projets ou certains projets d'une organisation, vous ne pouvez voir le groupe de nœuds partagé qu'à partir du projet dans lequel il se trouve, et non à partir des projets avec lesquels il a été partagé. Pour provisionner une VM dans le groupe de nœuds partagé, accédez à la page Instances de VM du projet avec lequel le groupe de nœuds est partagé, puis modifiez les libellés d'affinité des nœuds à locataire unique.
Restrictions de partage :
- Vous devez mettre à jour les paramètres de partage du projet propriétaire du groupe de nœuds.
- Vous pouvez spécifier un maximum de 100 projets lorsque vous utilisez le paramètre de partage
projects
. - Vous ne pouvez pas partager des groupes de nœuds entre des organisations. Par exemple, si vous migrez un projet contenant un groupe de nœuds partagé d'une organisation à une autre, vous devez également migrer tous les projets dont des VM s'exécutent dans ce groupe de nœuds partagé.
- Vous ne pouvez pas effectuer une migration à chaud entre des projets lorsque vous utilisez des groupes de nœuds à locataire unique partagés. Pour en savoir plus, consultez la page Migrer à chaud des VM manuellement.
Tarifs
Les VM des groupes de nœuds partagés n'entraînent pas de frais supplémentaires, et aucuns frais supplémentaires ne sont facturés pour le partage des groupes de nœuds. Pour en savoir plus sur la tarification des nœuds à locataire unique, consultez la section Tarifs des nœuds à locataire unique.
Avant de commencer
- Avant de créer un groupe de nœuds à locataire unique, créez un modèle de nœud à locataire unique.
- Avant de provisionner des VM sur un nœud à locataire unique, vérifiez votre quota. Selon le nombre et la taille des nœuds que vous réservez, vous devrez peut-être demander un quota supplémentaire.
-
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 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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
Créez un groupe de nœuds à locataire unique. Pour plus d'informations, consultez la section Créer un groupe de nœuds à locataire unique.
Configurez les paramètres de partage en spécifiant l'un des éléments suivants dans la section Configurer les paramètres de partage :
- Pour partager le groupe de nœuds avec tous les projets de votre organisation, sélectionnez Partager ce groupe de nœuds avec tous les projets de l'organisation.
- Pour partager le groupe de nœuds avec des projets spécifiques de votre organisation, sélectionnez Partager ce groupe de nœuds avec les projets sélectionnés au sein de l'organisation.
Si vous ne souhaitez pas partager le groupe de nœuds, sélectionnez Ne pas partager ce groupe de nœuds avec d'autres projets.
NODE_GROUP
: nom du groupe de nœudsZONE
: zone dans laquelle créer le groupe de nœuds.NODE_TEMPLATE
: nom du modèle de nœud créé précédemment.SIZE
: nombre de nœuds du groupe de nœuds.SHARE_SETTING
: paramètre de partage pour le groupe de nœuds. Définissez la valeur surprojects
pour le partager avec des projets spécifiques ou surorganization
pour le partager avec l'ensemble de l'organisation.PROJECTS
: liste des ID ou des numéros de projets avec lesquels partager le groupe de nœuds. Obligatoire uniquement si vous définissezSHARE_SETTING
surprojects
.PROJECT
: nom du projet dans lequel créer le groupe de nœuds.ZONE
: zone dans laquelle créer le groupe de nœuds.NODE_GROUP
: nom du groupe de nœudsNODE_TEMPLATE
: nom du modèle de nœud créé précédemment.SIZE
: nombre de nœuds du groupe de nœuds.SHARE_TYPE
: paramètre de partage pour le groupe de nœuds. Définissez la valeur surSPECIFIC_PROJECTS
pour le partager avec des projets spécifiques ou surORGANIZATION
pour le partager avec l'ensemble de l'organisation.PROJECTS
: liste des ID ou des numéros de projets avec lesquels partager le groupe de nœuds. Obligatoire uniquement si vous définissezSHARE_TYPE
surSPECIFIC_PROJECTS
.Dans la console Google Cloud, basculez vers un projet avec lequel vous avez partagé un groupe de nœuds.
Accédez à la page Instances de VM.
Cliquez sur Créer une instance.
Dans le champ Zone, sélectionnez la zone du groupe de nœuds partagé.
Dans Configuration de la machine > Série, choisissez le même type de machine que le modèle de groupe de nœuds à locataire unique partagé.
Développez la section Options avancées.
Développez la section Location unique.
Cliquez sur Parcourir.
Choisissez Sélectionner un projet et spécifiez le projet contenant le groupe de nœuds partagé.
Choisissez le groupe de nœuds à locataire unique ou un nœud à locataire unique spécifique dans ce groupe sur lequel provisionner la VM.
VM_NAME
: nom de la nouvelle VM à locataire unique à créer dans un groupe de nœuds partagé.MACHINE_TYPE
: type de machine de la nouvelle VM à locataire unique.NODE_GROUP
: nom du groupe de nœuds partagé dans lequel créer la VM à locataire uniqueNODE_PROJECT
: projet contenant le groupe de nœuds dans lequel provisionner la VMVM_NAME
: nom de la VM à locataire unique à créer dans un groupe de nœuds partagé à l'aide d'un libellé d'affinité.MACHINE_TYPE
: type de machine de la VM à locataire unique à créer dans un groupe de nœuds partagé.NODE_AFFINITY_FILE
: nom du fichier.json
contenant les informations d'affinité de nœuds. Dans le fichier d'affinité de nœud, définissez la clé du libellé d'affinité sur"compute.googleapis.com/project"
, l'opérateur sur"IN"
et la valeur sur le projet contenant le groupe de nœuds. Pour en savoir plus sur la configuration de l'affinité de nœuds, consultez la page Configurer des libellés d'affinité de nœuds.PROJECT
: nom du projet propriétaire du groupe de nœuds.ZONE
: zone du groupe de nœudsVM_NAME
: nom de la VM à locataire unique à créer dans un groupe de nœuds partagé à l'aide d'un libellé d'affinité.MACHINE_TYPE
: type de machine de la VM à locataire unique à créer dans un groupe de nœuds partagé.KEY
: libellé d'affinité. Défini sur"compute.googleapis.com/project"
.OPERATOR
: opérateur libellé de l'affinité. Défini sur"IN"
.VALUE
: projet contenant le groupe de nœuds dans lequel provisionner la VM. Spécifiez un projet à l'aide de son nom ou de son ID.Dans Google Cloud Console, accédez à la page Nœuds à locataire unique.
Pour afficher les propriétés du groupe de nœuds, cliquez sur le nom du groupe de nœuds dans la colonne Nom.
PROJECT
: nom du projet associé au groupe de nœuds pour lequel afficher les paramètres de partageZONE
: zone contenant le groupe de nœuds pour lequel vous souhaitez afficher les paramètres de partage.Dans Google Cloud Console, accédez à la page Nœuds à locataire unique.
Dans la colonne Nom, cliquez sur le nom du groupe de nœuds.
Pour partager le groupe de nœuds avec tous les projets de l'organisation ou avec des projets sélectionnés au sein de l'organisation, accédez à Présentation > Partagé avec, cliquez sur Modifier .
NODE_GROUP
: nom du groupe de nœuds pour lequel vous souhaitez mettre à jour les paramètres de partage.SHARE_SETTING
: paramètre de partage pour le groupe de nœuds. Définissez la valeur surprojects
pour le partager avec des projets spécifiques ou surorganization
pour le partager avec l'ensemble de l'organisation.PROJECTS
: liste des ID ou des numéros de projets avec lesquels partager le groupe de nœuds. Obligatoire uniquement si vous définissezSHARE_SETTING
surprojects
.PROJECT
: nom du projet contenant les groupes de nœuds pour lesquels mettre à jour les paramètres de partage.ZONE
: zone contenant les groupes de nœuds pour lesquels vous souhaitez mettre à jour les paramètres de partage.NODE_GROUP
: nom du groupe de nœuds pour lequel vous souhaitez mettre à jour les paramètres de partage.SHARE_TYPE
: paramètre de partage pour le groupe de nœuds. Définissez la valeur surprojects
pour le partager avec des projets spécifiques ou surorganization
pour le partager avec l'ensemble de l'organisation.PROJECTS
: liste des ID ou des numéros de projets avec lesquels partager le groupe de nœuds. Obligatoire uniquement si vous définissezSHARE_SETTING
surSPECIFIC_PROJECTS
.Dans Google Cloud Console, accédez à la page Nœuds à locataire unique.
Cliquez sur le nom du groupe de nœuds.
Dans Présentation > Partagé avec, cliquez sur Modifier .
Pour arrêter le partage, sélectionnez Ne pas partager ce groupe de nœuds avec d'autres projets.
PROJECT
: nom du projet avec le groupe de nœuds pour lequel arrêter le partage.ZONE
: zone contenant le groupe de nœuds pour arrêter le partage.NODE_GROUP
: nom du groupe de nœuds pour lequel arrêter le partage.Dans Google Cloud Console, accédez à la page Nœuds à locataire unique.
Dans la colonne Nom, cliquez sur le nom du groupe de nœuds.
Cliquez sur Supprimer.
PROJECT
: nom du projet avec le groupe de nœuds à supprimerZONE
: zone contenant le groupe de nœuds à supprimerNODE_GROUP
: nom du groupe de nœuds à supprimer
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.
Créer un groupe de nœuds et le partager
Pour créer un groupe de nœuds et le partager avec d'autres projets ou avec l'ensemble de l'organisation, utilisez la console Google Cloud, la gcloud CLI ou REST.
Console
gcloud
Pour créer un groupe de nœuds partagé, exécutez la commande
gcloud compute sole-tenancy node-groups create
suivante.gcloud compute sole-tenancy node-groups create NODE_GROUP \ --zone=ZONE \ --node-template=NODE_TEMPLATE \ --target-size=SIZE \ --share-setting=SHARE_SETTING \ --share-with=PROJECTS
Remplacez les éléments suivants :
REST
Pour créer un groupe de nœuds partagé, utilisez la méthode
nodeGroups.insert
suivante.POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups { ... "name": NODE_GROUP, "nodeTemplate": NODE_TEMPLATE, "size": SIZE, "shareSettings": { "shareType": SHARE_TYPE, "projectMap": { string: { "projectId": PROJECTS }, } } ... }
Remplacez les éléments suivants :
Provisionner une VM à locataire unique dans un groupe de nœuds partagé
Pour provisionner une VM à locataire unique dans un groupe de nœuds partagé, utilisez la console Google Cloud, la gcloud CLI ou REST.
Console
gcloud
Provisionner une VM dans un groupe de nœuds partagé à l'aide du nom du groupe de nœuds
Pour provisionner une VM à locataire unique dans un groupe de nœuds partagé à l'aide du nom du groupe de nœuds, exécutez la commande
gcloud compute instances create
suivante.gcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --node-group=NODE_GROUP \ --node-project=NODE_PROJECT
Remplacez les éléments suivants :
Provisionner une VM dans un groupe de nœuds partagé à l'aide d'un fichier d'affinité de nœuds
Pour provisionner une VM à locataire unique dans un groupe de nœuds partagé à l'aide d'un fichier d'affinité de nœud, utilisez la commande
gcloud compute instances create
suivante.gcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --node-affinity-file=NODE_AFFINITY_FILE
Remplacez les éléments suivants :
REST
Pour provisionner une VM à locataire unique dans un groupe de nœuds partagé à l'aide d'un fichier d'affinité de nœud, utilisez la méthode
nodeGroups.insert
suivante.POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances { ... "name": VM_NAME, "machineType": MACHINE_TYPE, "scheduling": { ... "nodeAffinities": [ { "key": KEY, "operator": OPERATOR, "values": [ VALUE ] } ], ... }, ... }
Remplacez les éléments suivants :
Pour en savoir plus sur la configuration de l'affinité de nœuds, consultez la page Configurer des libellés d'affinité de nœuds.
Afficher les paramètres de partage d'un groupe de nœuds
Pour afficher les paramètres de partage d'un groupe de nœuds, utilisez la console Google Cloud, la gcloud CLI ou REST.
Console
gcloud
Pour afficher les paramètres de partage d'un groupe de nœuds, utilisez la commande
gcloud compute sole-tenancy node-groups describe
suivante.gcloud compute sole-tenancy node-groups describe NODE_GROUP
Remplacez
NODE_GROUP
par le nom du groupe de nœuds pour lequel vous souhaitez afficher les paramètres de partage.REST
Pour afficher les paramètres de partage d'un groupe de nœuds, utilisez la méthode
nodeGroups.get
suivante.GET https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups
Remplacez les éléments suivants :
Partager un groupe de nœuds existant
Pour partager un groupe de nœuds existant avec d'autres projets ou l'ensemble de l'organisation, utilisez la console Google Cloud, la gcloud CLI ou REST.
Console
gcloud
Pour mettre à jour les paramètres de partage d'un groupe de nœuds, utilisez la commande
gcloud compute sole-tenancy node-groups update
suivante.gcloud compute sole-tenancy node-groups update NODE_GROUP \ --zone=ZONE \ --share-setting=SHARE_SETTING \ --share-with=PROJECTS
Remplacez les éléments suivants :
REST
Pour mettre à jour les paramètres de partage d'un groupe de nœuds, utilisez la méthode
nodeGroups.patch
suivante.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups/NODE_GROUP { "shareSettings": { "shareType": SHARE_TYPE, "projectMap": { string: { "projectId": PROJECTS }, } } }
Remplacez les éléments suivants :
Arrêter le partage d'un groupe de nœuds
Pour arrêter de partager un groupe de nœuds avec d'autres projets ou l'ensemble de l'organisation, utilisez la gcloud CLI ou REST.
Console
gcloud
Pour arrêter de partager un groupe de nœuds avec d'autres projets ou l'ensemble de l'organisation, utilisez la commande
gcloud compute sole-tenancy node-groups update
suivante.gcloud compute sole-tenancy node-groups update NODE_GROUP \ --zone=ZONE \ --share-setting=local
Remplacez
NODE_GROUP
par le nom du groupe de nœuds pour arrêter le partage.REST
Pour arrêter de partager un groupe de nœuds avec d'autres projets ou l'ensemble de l'organisation, utilisez la méthode
nodeGroups.patch
suivante.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups/NODE_GROUP { "shareSettings": { "shareType": LOCAL } }
Remplacez les éléments suivants :
Supprimer un groupe de nœuds partagé du projet propriétaire
Pour supprimer un groupe de nœuds partagé du projet propriétaire, utilisez la console Google Cloud, la gcloud CLI ou REST. Avant de supprimer un groupe de nœuds, arrêtez toutes les VM qui s'exécutent dans ce groupe.
Console
gcloud
Pour supprimer un groupe de nœuds partagé du projet propriétaire, utilisez la commande
gcloud compute sole-tenancy node-groups delete
suivante.gcloud compute sole-tenancy node-groups delete NODE_GROUP
Remplacez
NODE_GROUP
par le nom du groupe de nœuds à supprimer.REST
Pour supprimer un groupe de nœuds partagé du projet propriétaire, utilisez la méthode
nodeGroups.delete
suivante.DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups/NODE_GROUP
Remplacez les éléments suivants :
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 2024/12/22 (UTC).
-