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 connectée 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 connecté.

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 d'administrateur Edge Container (roles/edgecontainer.admin)
  • Rôle d'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 connectées Distributed Cloud qui seront attribuées à ce pool de nœuds si ce projet est différent de celui Google Cloud 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 \
    --node-storage-schema=WORKER_NODE_STORAGE_SCHEMA

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 comporter 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 Google Cloud cluster cible connecté Distributed Cloud pour ce pool de nœuds est hébergé.
  • CLUSTER_NAME: nom du cluster cible connecté Distributed Cloud.
  • ZONE_NAME: nom de la zone cible Distributed Cloud. 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 section Obtenir des informations sur une machine. Seules les machines correspondant à ce filtre sont autorisées à rejoindre ce pool de nœuds. Pour les clusters multiracks, utilisez cet indicateur pour spécifier les racks connectés Distributed Cloud dont les nœuds composent ce pool de nœuds. S'il est omis, tous les nœuds disponibles dans la zone sont ajoutés à 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
    

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

  • WORKER_NODE_STORAGE_SCHEMA (facultatif) : spécifie le schéma de stockage local pour les nœuds de calcul inclus dans ce pool de nœuds. Pour en savoir plus, consultez la section Configurer des schémas de 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 Google Cloud cluster cible connecté Distributed Cloud pour ce pool de nœuds est hébergé.
  • CLUSTER_NAME: nom du cluster cible connecté Distributed Cloud.
  • 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 cible connectée Distributed Cloud. 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. Pour les clusters multiracks, utilisez cet indicateur pour spécifier les racks connectés Distributed Cloud dont les nœuds composent ce pool de nœuds. S'il est omis, tous les nœuds disponibles dans la zone sont ajoutés à 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 connecté à 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 connectée Distributed Cloud, suivez les étapes décrites dans cette section.

Pour effectuer cette tâche, vous devez disposer du rôle de 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 cible connecté Distributed Cloud a été créé. Google Cloud
  • CLUSTER_NAME: nom du cluster cible connecté Distributed Cloud.

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 cible Distributed Cloud connecté a été créé. Google Cloud
  • CLUSTER_NAME: nom du cluster cible Distributed Cloud.
  • 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 de tri 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 de 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 connecté Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster cible connecté Distributed Cloud.

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 connecté Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster cible connecté Distributed Cloud.
  • 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 d'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 \
    --local-disk-kms-key=POOL_KMS_KEY

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 connecté Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME : nom du cluster cible connecté Distributed Cloud.
  • 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 section Obtenir des informations sur une machine. Pour les clusters multiracks, utilisez cet indicateur pour spécifier les racks connectés Distributed Cloud dont les nœuds composent 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
    

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

    Pour rétablir l'utilisation d'une clé gérée par Google pour un pool de nœuds, utilisez l'indicateur Google-owned and Google-managed encryption key--use-google-managed-key

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 connecté Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster cible connecté Distributed Cloud.
  • 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 cible connectée Distributed Cloud. 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. Pour les clusters multiracks, utilisez cet indicateur pour spécifier les racks connectés Distributed Cloud dont les nœuds composent 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 connecté à 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 d'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 connecté Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster cible connecté Distributed Cloud.

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 connecté Distributed Cloud associé à ce pool de nœuds est hébergé. Google Cloud
  • CLUSTER_NAME: nom du cluster cible connecté Distributed Cloud.
  • POOL_NAME : nom du pool de nœuds cible.
  • REQUEST_ID: ID unique par programmation qui identifie cette requête.

Étape suivante