Redimensionner un cluster d'utilisateur

Le redimensionnement d'un cluster d'utilisateur implique l'ajout ou la suppression de nœuds. L'ajout de nœuds nécessite que des adresses IP soient disponibles pour les nouveaux nœuds. Vous pouvez redimensionner un cluster d'utilisateur en modifiant le nombre d'instances dupliquées du pool de nœuds.

Pour en savoir plus sur les limites maximales et minimales des clusters d'utilisateur, consultez la page Quotas et limites.

Pour en savoir plus sur la gestion des pools de nœuds, consultez la page Créer et gérer des pools de nœuds.

Vérifier que suffisamment d'adresses IP sont disponibles

Si vous avez l'intention d'avoir N nœuds après le redimensionnement, vous devez disposer de N + 1 adresses IP disponibles.

Avant de redimensionner un cluster, vérifiez que vous disposez de suffisamment d'adresses IP. La procédure de vérification dépend du fait que le cluster utilise un serveur DHCP ou des adresses IP statiques.

DHCP

Si le cluster utilise le protocole DHCP, vérifiez que le serveur DHCP peut fournir suffisamment d'adresses IP. Il doit pouvoir fournir au moins une adresse IP de plus que le nombre de nœuds qui sera dans le cluster après le redimensionnement.

IP statiques

La façon de vérifier que vous disposez de suffisamment d'adresses IP statiques varie selon que le cluster est enregistré dans l'API GKE On-Prem ou non. Un cluster d'utilisateur est enregistré dans l'API GKE On-Prem si l'une des conditions suivantes est remplie:

  • Le cluster a été créé à l'aide de la console Google Cloud, de la Google Cloud CLI (gcloud CLI) ou de Terraform, qui enregistre automatiquement le cluster dans l'API GKE On-Prem. Collectivement, ces applications standards sont appelées "clients API GKE On-Prem".

  • La commande gkectl enroll cluster a été exécutée sur un cluster d'utilisateur, avec pour effet de configurer le cluster pour qu'il soit géré par l'API GKE On-Prem.

Si l'API GKE On-Prem gère un cluster d'utilisateur, utilisez la console pour compter le nombre d'adresses IP et en ajouter d'autres si nécessaire. Si le cluster d'utilisateur n'est pas géré par l'API GKE On-Prem, vous pouvez commencer par exécuter gkectl update cluster, qui vérifie que vous avez alloué suffisamment d'adresses IP au cluster. Si ce n'est pas le cas, vous pouvez trouver le nombre requis d'adresses IP supplémentaires dans le message d'erreur.

Ajouter des adresses IP statiques

Si le cluster est géré par l'API GKE On-Prem, utilisez la console pour ajouter d'autres adresses IP. Sinon, utilisez la ligne de commande sur votre poste de travail administrateur.

Console

  1. Dans la console, accédez à la page de présentation des clusters Google Kubernetes Engine.

    Accéder aux clusters GKE

  2. Sélectionnez le projet Google Cloud dans lequel se trouve le cluster d'utilisateur.

  3. Dans la liste des clusters, cliquez sur le nom du cluster puis sur Afficher les détails dans le panneau Détails.

  4. Dans la section Mise en réseau, cliquez sur Modifier.

  5. Dans la boîte de dialogue Ajouter des adresses IP statiques supplémentaires, cliquez sur Ajouter une adresse IP. Saisissez l'adresse IP et, éventuellement, un nom d'hôte. Répétez l'opération autant de fois que nécessaire. Cliquez ensuite sur OK.

Ligne de commande

  1. Ouvrez le fichier de bloc d'adresses IP du cluster d'utilisateur à modifier.

  2. Vérifiez que toutes les adresses IP que vous souhaitez utiliser pour le cluster d'utilisateur sont incluses dans le fichier de blocs d'adresses IP. Le fichier de blocs d'adresses IP doit avoir au moins une adresse IP de plus que le nombre de nœuds qui se trouveront dans le cluster après le redimensionnement.

  3. Pour afficher les adresses réservées pour un cluster d'utilisateur :

    kubectl get cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
      --namespace USER_CLUSTER_NAME USER_CLUSTER_NAME --output yaml

    Remplacez les éléments suivants :

    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur
    • USER_CLUSTER_NAME : nom du cluster d'utilisateur.
  4. Ajoutez autant d'adresses IP statiques supplémentaires que nécessaire dans le bloc correspondant puis exécutez la commande gkectl update cluster.

Voici un exemple de fichier de bloc d'adresses IP doté de quatre adresses IP et de noms d'hôte correspondants :

hostconfig:
dns: 172.16.255.1
tod: 216.239.35.0
blocks:
- netmask: 255.255.248.0
  gateway: 21.0.135.254
  ips:
  - ip: 21.0.133.41
    hostname: user-node-1
  - ip: 21.0.133.50
    hostname: user-node-2
  - ip: 21.0.133.56
    hostname: user-node-3
  - ip: 21.0.133.47
    hostname: user-node-4

Redimensionner le cluster

Console

  1. Dans la console, accédez à la page de présentation des clusters Google Kubernetes Engine.

    Accéder aux clusters GKE

  2. Sélectionnez le projet Google Cloud dans lequel se trouve le cluster d'utilisateur.

  3. Dans la liste des clusters, cliquez sur le nom du cluster puis sur Afficher les détails dans le panneau Détails.

  4. Cliquez sur l'onglet Nœuds.

  5. Cliquez sur le nom du pool de nœuds que vous souhaitez redimensionner.

  6. Cliquez sur Redimensionner.

  7. Dans le champ Nœuds, saisissez le nombre de nœuds souhaité dans le pool de nœuds, puis cliquez sur OK.

  8. Cliquez sur pour revenir à la page précédente.

  9. La console affiche État du cluster : modifications en cours. Cliquez sur Afficher les détails pour afficher la Condition d'état de la ressource et les Messages d'état.

Ligne de commande

Dans le fichier de configuration du cluster d'utilisateur, mettez à jour la valeur du champ replicas dans un ou plusieurs éléments nodePools.

Redimensionnez le cluster :

gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG

Remplacez les éléments suivants :

  • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur

  • USER_CLUSTER_CONFIG : chemin d'accès au fichier de configuration du cluster d'utilisateur

Vérifiez que le redimensionnement a bien été effectué :

kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get nodes

kubectl --kubeconfig USER_CLUSTER_KUBECONFIG describe machinedeployments NODE_POOL_NAME | grep Replicas

Remplacez les éléments suivants :

  • USER_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig de votre cluster d'utilisateur

  • NODE_POOL_NAME : nom du pool de nœuds que vous avez redimensionné.

Dépannage

Consultez la section Dépanner la création et la mise à niveau du cluster.