Créer et gérer des pools de nœuds

Cette page explique comment créer et gérer des ressources de pool de nœuds Google Distributed Cloud dans une zone Distributed Cloud.

Sur les serveurs Distributed Cloud, les pools de nœuds sont créés et remplis automatiquement lorsque vous créez un cluster. Vous pouvez également configurer des pools de nœuds supplémentaires après avoir créé le cluster.

Pour en savoir plus sur les pools de nœuds Distributed Cloud, consultez la page Fonctionnement de Distributed Cloud.

Créer un pool de nœuds

Pour créer un pool de nœuds Distributed Cloud, suivez les étapes décrites dans cette section.

Pour effectuer cette tâche, vous devez disposer des rôles suivants dans votre Google Cloud projet :

  • Rôle Administrateur Edge Container (roles/edgecontainer.admin)
  • Rôle Utilisateur de machine Edge Container (roles/edgecontainer.machineUser)

    Vous devez également disposer de ce rôle sur le Google Cloud projet qui contient les machines Distributed Cloud qui seront attribuées à ce pool de nœuds si ce projet est différent du Google Cloud projet dans lequel vous créez le pool de nœuds.

Console

Si vous utilisez la Google Cloud console, vous ne pouvez créer un pool de nœuds que lorsque vous créez un cluster. Pour créer un pool de nœuds autonome, vous devez utiliser Google Cloud CLI ou l'API Distributed Cloud Edge Container.

gcloud

Exécutez la commande gcloud edge-cloud container clusters node-pools create :

gcloud edge-cloud container clusters node-pools create POOL_NAME \
    --project=PROJECT_ID \
    --location=REGION \
    --cluster=CLUSTER_NAME \
    --node-location=ZONE_NAME \
    --node-count=NODE_COUNT \
    --node-labels=NODE_LABELS \
    --machine-filter=MACHINE_FILTER \
    --local-disk-kms-key=POOL_KMS_KEY

Remplacez les éléments suivants :

  • POOL_NAME: nom descriptif qui identifie de manière unique ce pool de nœuds. Ce nom doit être conforme à la norme RFC 1213 et ne contenir que des caractères alphanumériques minuscules et des tirets (-). Il doit commencer et se terminer par un caractère alphanumérique.
  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud cible de ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.
  • ZONE_NAME: nom de la zone Distributed Cloud cible. Cette zone doit se trouver dans la région spécifiée dans REGION.
  • NODE_COUNT: nombre de nœuds que contient ce pool de nœuds.
  • NODE_LABELS: liste de paires clé-valeur séparées par une virgule qui composent les libellés des nœuds individuels du pool de nœuds.
  • MACHINE_FILTER (facultatif) : spécifie les critères de filtrage pour la sélection de la machine. Pour afficher les champs selon lesquels vous pouvez filtrer, consultez la page Obtenir des informations sur une machine. Seules les machines correspondant à ce filtre sont autorisées à rejoindre ce pool de nœuds.
  • POOL_KMS_KEY (facultatif) : chemin d'accès complet à la clé Cloud KMS que vous souhaitez utiliser avec ce pool de nœuds. Exemple :

    /projects/myProject/locations/us-west1-a/keyRings/myKeyRing/cryptoKeys/myGDCE-Key
    

    Cette option ne s'applique que si vous avez intégré Distributed Cloud à Cloud Key Management Service, comme décrit dans la section Activer la prise en charge des clés de chiffrement gérées par le client (CMEK) pour le stockage local.

API

Envoyez une requête POST à la méthode projects.locations.clusters.nodePools.create :

POST /v1/PROJECT_ID/locations/REGION/clusters/CLUSTER_NAME?nodePoolId=NODEPOOL_ID&requestId=REQUEST_ID
{
 "name": POOL_NAME,
 "labels": { LABELS,
  },
 "nodeLocation": ZONE_NAME,
 "nodeCount": NODE_COUNT,
 "nodeLabels": NODE_LABELS,
 "machineFilter": MACHINE_FILTER,
 "localDiskEncryption": {
   "kmsKey": POOL_KMS_KEY,
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud cible de ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.
  • NODEPOOL_ID: ID unique par programmation qui identifie cette ressource de pool de nœuds.
  • REQUEST_ID: ID unique par programmation qui identifie cette requête.
  • POOL_NAME: nom descriptif qui identifie de manière unique ce pool de nœuds.
  • LABELS: liste de libellés à appliquer à cette ressource de pool de nœuds.
  • ZONE_NAME: nom de la zone Distributed Cloud cible. Cette zone doit se trouver dans la région spécifiée dans REGION.
  • NODE_COUNT: nombre de nœuds que contient ce pool de nœuds.
  • NODE_LABELS: liste de paires clé-valeur séparées par une virgule qui composent les libellés des nœuds individuels du pool de nœuds.
  • MACHINE_FILTER (facultatif) : spécifie les critères de filtrage pour la sélection de la machine. Seules les machines correspondant à ce filtre sont autorisées à rejoindre ce pool de nœuds.
  • POOL_KMS_KEY (facultatif) : chemin d'accès complet à la clé Cloud KMS que vous souhaitez utiliser avec ce pool de nœuds. Exemple :

    /projects/myProject/locations/us-west1-a/keyRings/myKeyRing/cryptoKeys/myGDCE-Key
    

    Ce paramètre ne s'applique que si vous avez intégré Distributed Cloud à Cloud Key Management Service, comme décrit dans la section Activer la prise en charge des clés de chiffrement gérées par le client (CMEK) pour le stockage local.

Répertorier les pools de nœuds

Pour répertorier les pools de nœuds Distributed Cloud disponibles dans une zone Distributed Cloud, suivez les étapes décrites dans cette section.

Pour effectuer cette tâche, vous devez disposer du rôle Lecteur Edge Container (roles/edgecontainer.viewer) dans votre Google Cloud projet.

gcloud

Exécutez la commande gcloud edge-cloud container clusters node-pools list :

gcloud edge-cloud container clusters node-pools list \
    --project=PROJECT_ID \
    --location=REGION \
    --cluster=CLUSTER_NAME

Remplacez les éléments suivants :

  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud cible a été créé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.

API

Envoyez une requête GET à la méthode projects.locations.clusters.nodePools.list :

GET /v1/PROJECT_ID/locations/REGION/clusters/CLUSTER_NAME/nodePools?filter=FILTER&pageSize=PAGE_SIZE&orderBy=SORT_BY&pageToken=PAGE_TOKEN

Remplacez les éléments suivants :

  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud cible a été créé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.
  • FILTER: expression qui limite les résultats renvoyés à des valeurs spécifiques.
  • PAGE_SIZE : nombre de résultats à renvoyer par page.
  • SORT_BY: liste de noms de champs séparés par une virgule selon lesquels les résultats renvoyés sont triés. L'ordre de tri par défaut est croissant. Pour un ordre décroissant, faites précéder le champ souhaité de ~.
  • PAGE_TOKEN: jeton reçu dans la réponse à la dernière requête de liste dans le champ nextPageToken de la réponse. Envoyez ce jeton pour recevoir une page de résultats.

Obtenir des informations sur un pool de nœuds

Pour obtenir des informations sur un pool de nœuds Distributed Cloud, suivez les étapes décrites dans cette section.

Pour effectuer cette tâche, vous devez disposer du rôle Lecteur Edge Container (roles/edgecontainer.viewer) dans votre Google Cloud projet.

gcloud

Exécutez la commande gcloud edge-cloud container clusters node-pools describe :

gcloud edge-cloud container clusters node-pools describe POOL_NAME \
    --project=PROJECT_ID \
    --location=REGION \
    --cluster=CLUSTER_NAME

Remplacez les éléments suivants :

  • POOL_NAME : nom du pool de nœuds cible.
  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.

API

Envoyez une requête GET à la méthode projects.locations.clusters.nodePools.get :

GET /v1/PROJECT_ID/locations/REGION/clusters/CLUSTER_NAME/nodePools/POOL_NAME

Remplacez les éléments suivants :

  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.
  • POOL_NAME : nom du pool de nœuds cible.

Modifier un pool de nœuds

Pour modifier un pool de nœuds Distributed Cloud, suivez les étapes décrites dans cette section.

Pour effectuer cette tâche, vous devez disposer du rôle Administrateur Edge Container (roles/edgecontainer.admin) dans votre Google Cloud projet.

gcloud

Exécutez la commande gcloud edge-cloud container clusters node-pools update :

gcloud edge-cloud container clusters node-pools update POOL_NAME \
    --project=PROJECT_ID \
    --location=REGION \
    --cluster=CLUSTER_NAME \
    --node-count=NODE_COUNT \
    --machine-filter=MACHINE_FILTER

Remplacez les éléments suivants :

  • POOL_NAME : nom du pool de nœuds cible.
  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME : nom du cluster Distributed Cloud cible.
  • NODE_COUNT: nombre de nœuds que contient ce pool de nœuds.
  • MACHINE_FILTER (facultatif) : spécifie les critères de filtrage pour la sélection de la machine. Pour afficher les champs selon lesquels vous pouvez filtrer, consultez la page Obtenir des informations sur une machine.

API

Envoyez une requête PATCH à la méthode projects.locations.clusters.nodePools.patch :

PATCH /v1/PROJECT_ID/locations/REGION/clusters/CLUSTER_NAME?nodePoolId=NODEPOOL_ID&requestId=REQUEST_ID
{
 "name": POOL_NAME,
 "labels": { LABELS,
  },
 "nodeLocation": ZONE_NAME,
 "nodeCount": NODE_COUNT,
 "machineFilter": MACHINE_FILTER,
 "localDiskEncryption": {
   "kmsKey": KMS_KEY,
  }
}

Remplacez les éléments suivants :

  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.
  • NODEPOOL_ID: ID unique par programmation qui identifie ce pool de nœuds.
  • REQUEST_ID: ID unique par programmation qui identifie cette requête.
  • POOL_NAME: nom descriptif qui identifie de manière unique ce pool de nœuds.
  • LABELS: liste de libellés à appliquer à cette ressource de pool de nœuds.
  • ZONE_NAME: nom de la zone Distributed Cloud cible. Cette zone doit se trouver dans la région spécifiée dans REGION.
  • NODE_COUNT: nombre de nœuds que contient ce pool de nœuds.
  • MACHINE_FILTER (facultatif) : spécifie les critères de filtrage pour la sélection de la machine. Seules les machines correspondant à ce filtre sont autorisées à rejoindre ce pool de nœuds.
  • KMS_KEY (facultatif) : chemin d'accès complet à la clé Cloud KMS que vous souhaitez utiliser avec ce pool de nœuds. Exemple :

    /projects/myProject/locations/us-west1-a/keyRings/myKeyRing/cryptoKeys/myGDCE-Key
    

    Ce paramètre ne s'applique que si vous avez intégré Distributed Cloud à Cloud Key Management Service, comme décrit dans la section Activer la prise en charge des clés de chiffrement gérées par le client (CMEK) pour le stockage local.

Supprimer un pool de nœuds

Pour supprimer un pool de nœuds Distributed Cloud, suivez les étapes décrites dans cette section.

Pour effectuer cette tâche, vous devez disposer du rôle Administrateur Edge Container (roles/edgecontainer.admin) dans votre Google Cloud projet.

gcloud

Exécutez la commande gcloud edge-cloud container clusters node-pools delete :

gcloud edge-cloud container clusters node-pools delete POOL_NAME \
    --project=PROJECT_ID \
    --location=REGION \
    --cluster=CLUSTER_NAME

Remplacez les éléments suivants :

  • POOL_NAME : nom du pool de nœuds cible.
  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.

API

Envoyez une requête DELETE à la méthode projects.locations.clusters.nodePools.delete :

DELETE /v1/PROJECT_ID/locations/REGION/clusters/CLUSTER_NAME/nodePools/POOL_NAME?requestId=REQUEST_ID

Remplacez les éléments suivants :

  • PROJECT_ID : ID duprojet cible. Google Cloud
  • REGION :région dans laquelle le cluster Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster Distributed Cloud cible.
  • POOL_NAME : nom du pool de nœuds cible.
  • REQUEST_ID: ID unique par programmation qui identifie cette requête.

Étape suivante