Redimensionner un cluster


Cette page explique comment redimensionner des clusters. Le redimensionnement d'un cluster peut viser à augmenter ou à réduire le nombre de nœuds de ce cluster. Pour savoir comment ajouter des pools de nœuds et gérer les pools de nœuds existants, consultez la page Ajouter et gérer des pools de nœuds.

Lorsque vous ajoutez ou supprimez des nœuds de votre cluster, Google Kubernetes Engine (GKE) ajoute ou supprime les instances de machine virtuelle (VM) associées des groupes d'instances gérés Compute Engine provisionnés pour vos pools de nœuds.

Augmenter la taille de votre cluster

Lorsque vous augmentez la taille d'un cluster :

  • Les nouvelles instances de nœud sont créées à l'aide de la même configuration que les instances existantes.
  • Vous pouvez programmer de nouveaux pods sur les nouvelles instances.
  • Les pods existants ne sont pas déplacés vers les nouvelles instances.

Réduire la taille de votre cluster

Lorsque vous réduisez la taille d'un cluster :

  • Les pods programmés sur les instances que vous supprimez sont détruits.
  • Les pods gérés par un contrôleur de réplication sont reprogrammés par ce contrôleur sur les instances restantes.
  • Les pods non gérés par un contrôleur de réplication ne sont pas redémarrés.

Le groupe d'instances gérées ne fait pas de distinction entre les instances exécutant des pods et les instances sans pods. La réduction supprime des instances choisies de manière aléatoire.

Avant de commencer

Avant de commencer, effectuez les tâches suivantes :

  • Assurez-vous d'avoir activé l'API Google Kubernetes Engine.
  • Activer l'API Google Kubernetes Engine
  • Assurez-vous d'avoir installé Google Cloud CLI.
  • Configurez les paramètres par défaut de Google Cloud CLI pour votre projet en utilisant l'une des méthodes suivantes :
    • Utilisez gcloud init si vous souhaitez suivre les étapes de définition des paramètres par défaut du projet.
    • Utilisez gcloud config pour définir individuellement l'ID, la zone et la région de votre projet.

    gcloud init

    1. Exécutez gcloud init et suivez les instructions :

      gcloud init

      Si vous utilisez SSH sur un serveur distant, utilisez l'option --console-only pour empêcher la commande d'ouvrir un navigateur :

      gcloud init --console-only
    2. Suivez les instructions pour autoriser gcloud CLI à utiliser votre compte Google Cloud.
    3. Créez ou sélectionnez une configuration.
    4. Choisissez un projet Google Cloud.
    5. Choisissez une zone Compute Engine par défaut.
    6. Choisissez une région Compute Engine par défaut.

    gcloud config

    1. Définissez votre ID de projet par défaut :
      gcloud config set project PROJECT_ID
    2. Définissez votre région Compute Engine par défaut (par exemple, us-central1) :
      gcloud config set compute/region COMPUTE_REGION
    3. Définissez votre zone Compute Engine par défaut (par exemple, us-central1-c) :
      gcloud config set compute/zone COMPUTE_ZONE
    4. Mettez à jour gcloud vers la dernière version :
      gcloud components update

    En définissant des emplacements par défaut, vous pouvez éviter les erreurs gcloud CLI telles que celle-ci : One of [--zone, --region] must be supplied: Please specify location.

Redimensionner un cluster

gcloud

Pour redimensionner les pools de nœuds d'un cluster, exécutez la commande gcloud container clusters resize :

gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \
    --num-nodes NUM_NODES

Remplacez l'élément suivant :

  • CLUSTER_NAME : nom du cluster à redimensionner.
  • POOL_NAME : nom du pool de nœuds à redimensionner.
  • NUM_NODES : nombre de nœuds du pool dans un cluster zonal. Si vous utilisez des clusters multizones ou régionaux, NUM_NODES est le nombre de nœuds pour chaque zone dans laquelle se trouvent les pools de nœuds.

Répétez cette commande pour chaque pool de nœuds. Si votre cluster ne comporte qu'un seul pool de nœuds, omettez l'indicateur --node-pool.

Console

Pour redimensionner les pools de nœuds d'un cluster, procédez comme suit :

  1. Accédez à la page Google Kubernetes Engine dans Cloud Console.

    Accéder à Google Kubernetes Engine

  2. À côté du cluster que vous souhaitez modifier, cliquez sur Actions, puis sur Modifier.

  3. Cliquez sur l'onglet Nœuds à côté de l'onglet Détails.

  4. Dans la section Pools de nœuds, cliquez sur le nom du pool de nœuds que vous souhaitez redimensionner.

  5. Cliquez sur Redimensionner.

  6. Dans le champ Nombre de nœuds, saisissez le nombre de nœuds que vous souhaitez inclure dans le pool de nœuds, puis cliquez sur Redimensionner.

  7. Répétez cette procédure pour chaque pool de nœuds s'il y a lieu.

Diminuer la taille de votre cluster avec drainage

Vous pouvez réduire manuellement la taille de votre cluster et drainer les pods de chaque instance avant leur suppression.

Pour savoir comment ajouter des pools de nœuds et gérer les pools de nœuds existants, consultez la page Ajouter et gérer des pools de nœuds.

Pour diminuer et drainer votre cluster, exécutez la commande gcloud container clusters resize :

gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \
  --num-nodes NUM_NODES

Remplacez l'élément suivant :

  • CLUSTER_NAME : nom du cluster à redimensionner.
  • POOL_NAME : nom du pool de nœuds à redimensionner.
  • NUM_NODES : nombre de nœuds du pool dans un cluster zonal. Si vous utilisez des clusters multizones ou régionaux, NUM_NODES est le nombre de nœuds pour chaque zone dans laquelle se trouvent les pools de nœuds.

Procéder à l'autoscaling d'un cluster

La fonctionnalité d'autoscaling de cluster de GKE redimensionne automatiquement vos pools de nœuds selon l'évolution des conditions, notamment en cas de changement dans vos charges de travail ou dans votre utilisation des ressources.

Pour en savoir plus sur le fonctionnement de l'autoscaling, consultez la documentation relative à l'autoscaler de cluster. Pour configurer l'autoscaling de votre cluster, consultez la page Procéder à l'autoscaling d'un cluster.

Étape suivante