Ajout de nœuds de travail aux clusters Classic

Classic infrastructure

Consultez les sections suivantes pour savoir comment ajouter des nœuds de travail à votre cluster classique.

Vous souhaitez ajouter des noeuds worker aux clusters de VPC? Voir Ajout de noeuds worker à des clusters de VPC.

Afin d'augmenter la disponibilité de vos applications, vous pouvez ajouter des noeuds worker à une ou plusieurs zones déjà présentes dans votre cluster. Pour protéger vos applications en cas de défaillance d'une zone, vous pouvez ajouter des zones dans votre cluster.

Lorsque vous créez un cluster, les noeuds worker sont mis à disposition dans un pool de noeuds worker. Après la création du cluster, vous pouvez ajouter d'autres noeuds worker à un pool en le redimensionnant ou en ajoutant d'autres pools de noeuds worker. Par défaut, le pool de noeuds worker est présent dans une zone. Les clusters disposant d'un pool de noeuds worker dans une seule zone sont appelés des clusters à zone unique. Lorsque vous ajoutez d'autres zones dans le cluster, le pool de noeuds worker est présent dans les différentes zones. Les clusters ayant un pool de noeuds worker réparti sur plusieurs zones sont appelés des clusters multizones.

Si vous disposez d'un cluster multizone, conservez les ressources des noeuds worker associés équilibrées. Assurez-vous que tous les pools de noeuds worker sont répartis sur les mêmes zones et ajoutez ou supprimez des noeuds worker en redimensionnant les pools au lieu d'ajouter des noeuds individuels. Après avoir configuré votre pool de noeuds worker, vous pouvez configurer le programme de mise à l'échelle automatique du cluster (cluster autoscaler) pour l'ajout et le retrait automatique des noeuds worker dans vos pools de noeuds worker en fonction des demandes de ressources de vos charges de travail.

Les réservations de nœuds de travail classiques sont obsolètes. Après le 15 octobre 2026, il ne sera plus possible de créer de nouveaux contrats de réservation. Si vous disposez d'un contrat de réservation existant qui arrive à échéance, vous devez créer un nouveau pool de ressources qui n'utilise pas de réservation et migrer vos charges de travail avant la date d'expiration du contrat.

Création d'un nouveau pool de noeuds worker

Vous pouvez ajouter des noeuds worker dans votre cluster classique en créant un nouveau pool de noeuds worker. Si vous utilisiez auparavant des réservations pour provisionner des nœuds de travail, sachez que cette fonctionnalité est désormais obsolète. Créez plutôt un pool de travailleurs standard.

Avant de commencer, assurez-vous de disposer du rôle d'accès à la plateforme IAM Opérateur ou Administrateur.

  1. Extrayez les zones de noeud worker (Worker Zones) de votre cluster et choisissez la zone dans laquelle vous souhaitez déployer les noeuds worker dans votre pool de noeuds worker. Si vous avez un cluster à zone unique, vous devez utiliser la zone que vous voyez dans la zone Worker Zones. Pour les clusters multizones, vous pouvez choisir l'une des zones de noeud worker de votre cluster, ou ajouter l'un des emplacements multizone de la région dans laquelle se trouve votre cluster. Vous pouvez répertorier les zones disponibles en exécutant la commande ibmcloud oc zone ls.

    ibmcloud oc cluster get --cluster CLUSTER_NAME_OR_ID
    

    Exemple de sortie

    ...
    Worker Zones: dal10, dal12, dal13
    
  2. Pour chaque zone, répertoriez les VLAN publics et privés disponibles. Notez le VLAN privé et le VLAN public que vous souhaitez utiliser. Si vous n'avez pas de réseau local virtuel privé ou public, le réseau local virtuel est automatiquement créé pour vous lorsque vous ajoutez une zone à votre pool worker.

    ibmcloud oc vlan ls --zone ZONE
    
  3. Pour chaque zone, consultez les versions disponibles pour les nœuds de travail.

    ibmcloud oc flavors --zone ZONE
    
  4. Créez un pool de noeuds worker. Pour connaître les autres options, voir la documentation de l'interface de ligne de commande.

    • Incluez l'option --label pour marquer automatiquement les noeuds worker qui se trouvent dans le pool avec le libellé key=value.
    • Si vous mettez à disposition un pool de noeuds worker de machine virtuelle dédié ou bare metal, indiquez --hardware dedicated.
    • Les nouveaux noeuds worker exécutent la même version major.minor que celle du cluster maître, mais avec le dernier correctif de noeud worker de cette version major.minor.
    ibmcloud oc worker-pool create classic --name POOL_NAME --cluster CLUSTER_NAME_OR_ID --flavor FLAVOR --size-per-zone NUMBER_OF_WORKERS_PER_ZONE [--operating-system (REDHAT_8_64)] [--label key=value]
    
  5. Vérifiez que le pool de noeuds worker est créé.

    ibmcloud oc worker-pool ls --cluster CLUSTER_NAME_OR_ID
    
  6. Par défaut, l'ajout d'un pool de noeuds worker crée un pool sans aucune zone. Pour déployer les noeuds worker dans une zone, vous devez ajouter les zones que vous avez récupérées auparavant dans le pool de noeuds worker. Si vous souhaitez répartir vos noeuds worker sur plusieurs zones, répétez cette commande pour chaque zone.

    ibmcloud oc zone add classic --zone ZONE --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME --private-vlan PRIVATE_VLAN_ID --public-vlan PUBLIC_VLAN_ID
    
  7. Vérifiez que les noeuds worker sont présents dans la zone que vous avez ajoutée. Vos nœuds de travail sont prêts lorsque leur statut passe de à provision_pending normal.

    ibmcloud oc worker ls --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME
    

    Exemple de sortie

    ID                                                 Public IP        Private IP      Machine Type      State    Status  Zone    Version
    kube-dal10-crb20b637238ea471f8d4a8b881aae4962-w7   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          provision_pending   Ready   dal10   1.36
    kube-dal10-crb20b637238ea471f8d4a8b881aae4962-w8   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          provision_pending   Ready   dal10   1.36
    

Redimensionnement d'un pool de noeuds worker

Vous pouvez ajouter ou réduire le nombre de noeuds worker présents dans votre cluster en redimensionnant un pool de noeuds worker existant, que ce pool figure dans une zone ou soit réparti sur plusieurs zones.

Prenons l'exemple d'un cluster avec un pool de noeuds worker comportant trois noeuds worker par zone.

  • S'il s'agit d'un cluster à zone unique présent dans la zone dal10, le pool de noeuds worker a trois noeuds worker dans dal10. Le cluster dispose d'un total de trois noeuds worker.
  • S'il s'agit d'un cluster multizone, présent dans les zones dal10 et dal12, le pool de noeuds worker a trois noeuds dans dal10 et trois autres dans dal12. Le cluster dispose d'un total de six noeuds worker.

Pour les pools de noeuds worker bare metal, n'oubliez pas que la facture est mensuelle. Si vous en augmentez ou en réduisez la taille, il y aura des répercussions sur les coûts mensuels. Lorsque vous ajoutez des nœuds worker en redimensionnant un pool worker, les nouveaux noeuds de travail exécutent la même version major.minor que le maître de cluster, mais le dernier correctif de noeud worker de cette version major.minor.

Avant de commencer, assurez-vous de disposer du rôle d'accès à la plateforme IAM Opérateur ou Administrateur.

Pour redimensionner le pool de noeuds worker, modifiez le nombre de noeuds worker déployés par le pool de noeuds worker dans chaque zone :

  1. Récupérez le nom du pool de noeuds worker que vous souhaitez redimensionner.
    ibmcloud oc worker-pool ls --cluster CLUSTER_NAME_OR_ID
    
  2. Redimensionnez le pool de noeuds worker en indiquant le nombre de noeuds worker que vous voulez déployer dans chaque zone.
    ibmcloud oc worker-pool resize --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME --size-per-zone NUMBER_OF_WORKERS_PER_ZONE
    
  3. Vérifiez que le pool de noeuds worker est redimensionné.
    ibmcloud oc worker ls --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME
    
    Exemple de sortie pour un pool de noeuds worker présents dans deux zones, dal10 et dal12 qui est redimensionné à deux noeuds worker par zone :
    ID                                                 Public IP        Private IP      Machine Type      State    Status  Zone    Version
    kube-dal10-crb20b637238ea471f8d4a8b881aae4962-w7   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          normal   Ready   dal10   1.36
    kube-dal10-crb20b637238ea471f8d4a8b881aae4962-w8   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          normal   Ready   dal10   1.36
    kube-dal12-crb20b637238ea471f8d4a8b881aae4962-w9   169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          normal   Ready   dal12   1.36
    kube-dal12-crb20b637238ea471f8d4a8b881aae4962-w10  169.xx.xxx.xxx   10.xxx.xx.xxx   b3c.4x16          normal   Ready   dal12   1.36
    

Ajout d'une zone à un pool de noeuds worker

Vous pouvez étendre votre cluster classique sur plusieurs zones au sein d'une région en ajoutant une zone dans votre pool de noeuds worker.

Lorsque vous ajoutez une zone à un pool d'agents, les nœuds worker définis dans votre pool d'agents sont mis à disposition dans la nouvelle zone et pris en compte pour la planification future de la charge de travail. Red Hat OpenShift on IBM Cloud ajoute automatiquement le libellé failure-domain.beta.kubernetes.io/region pour la région et le libellé failure-domain.beta.kubernetes.io/zone de la zone à chaque nœud worker. Le planificateur de Kubernetes utilise ces libellés pour répartir les pods sur les zones situées dans la même région.

Si vous disposez de plusieurs pools worker dans votre cluster, ajoutez la zone à toutes ces pools afin que les noeuds worker soient répartis également dans votre cluster. Notez que lorsque vous ajoutez des noeuds worker à votre cluster, les nouveaux noeuds worker exécutent la même version major.minor que celle du cluster maître, mais avec le dernier correctif de noeud worker de cette version major.minor.

Avant de commencer :

  • Pour qu'une zone puisse être ajoutée à votre pool de noeuds worker, celui-ci doit se trouver dans une zone compatible avec plusieurs zones. Si ce n'est pas le cas, envisagez la création d'un nouveau pool de noeuds worker.
  • Assurez-vous de disposer du document [Operator or Administrator IAM platform access role](/docs/openshift?topic=openshift-iam-platform-access-roles.
  • Dans des clusters classiques, si vous disposez de plusieurs VLAN pour votre cluster, de plusieurs sous-réseaux sur le même VLAN ou d'un cluster classique multizone, vous devez activer une fonction VRF (Virtual Router Function) pour votre compte d'infrastructure IBM Cloud de sorte que vos noeuds worker puissent communiquer entre eux sur le réseau privé. Pour activer la fonction VRF, voir Activation de VRF. Pour vérifier si la fonction VRF est déjà activée, utilisez la commande ibmcloud account show. Si vous ne pouvez pas ou ne souhaitez pas activer VRF, activez Réseau local virtuel. Pour effectuer cette action, vous devez disposer de l'autorisation Réseau > Gérer l'infrastructure VLAN Spanning, ou vous pouvez demander au propriétaire du compte de vous l'accorder. Pour vérifier si l'extension de VLAN est déjà activée, utilisez la commandeibmcloud oc vlan spanning get --region <region>.

Pour ajouter une zone avec des noeuds worker dans votre pool de noeuds worker :

  1. Répertoriez les zones disponibles et sélectionnez la zone que vous souhaitez ajouter à votre pool de noeuds worker. La zone que vous choisissez doit être une zone compatible avec plusieurs zones.

    ibmcloud oc zone ls
    
  2. Répertoriez les VLAN disponibles dans cette zone. Si vous n'avez pas de réseau local virtuel privé ou public, le réseau local virtuel est automatiquement créé pour vous lorsque vous ajoutez une zone à votre pool worker.

    ibmcloud oc vlan ls --zone ZONE
    
  3. Répertoriez les pools de noeuds worker dans votre cluster et notez leurs noms.

    ibmcloud oc worker-pool ls --cluster CLUSTER_NAME_OR_ID
    
  4. Ajoutez la zone dans votre pool de noeuds worker. Si vous disposez de plusieurs pools de noeuds worker, ajoutez la zone à tous vos pools, pour que votre cluster soit équilibré dans toutes les zones.

    Un VLAN privé et un VLAN public doivent exister avant d'ajouter une zone à plusieurs pools de noeuds worker. Si vous ne disposez pas d'un réseau local virtuel privé et public dans cette zone, ajoutez d'abord la zone à un pool worker afin qu'un réseau local virtuel privé et public soit créé pour vous. Ensuite, vous pouvez ajouter cette zone à d'autres pools de noeuds worker en spécifiant le VLAN privé et le VLAN public créés pour vous.

    Si vous souhaitez utiliser des VLAN différents pour des pools de noeuds worker différents, répétez cette commande pour chaque VLAN et les pools de noeuds worker correspondants associés. Les nouveaux noeuds worker sont ajoutés aux VLAN que vous spécifiez, mais les VLAN pour les noeuds worker existants restent inchangés.

    ibmcloud oc zone add classic --zone ZONE --cluster CLUSTER_NAME_OR_ID -p POOL_NAME [-p POOL2_NAME] --private-vlan PRIVATE_VLAN_ID --public-vlan PUBLIC_VLAN_ID
    
  5. Vérifiez que la zone est ajoutée dans votre cluster. Recherchez la zone ajoutée dans la zone Worker zones dans la sortie. Notez que le nombre total de noeuds worker dans la zone Workers a augmenté avec la mise à disposition de nouveaux noeuds worker dans la zone ajoutée.

    ibmcloud oc cluster get --cluster CLUSTER_NAME_OR_ID
    

    Exemple de sortie

    NAME:                           mycluster
    ID:                             df253b6025d64944ab99ed63bb4567b6
    State:                          normal
    Status:                         healthy cluster
    Created:                        2018-09-28T15:43:15+0000
    Location:                       dal10
    Pod Subnet:                     172.30.0.0/16
    Service Subnet:                 172.21.0.0/16
    Master URL:                     https://c3.<region>.containers.cloud.ibm.com:30426
    Public Service Endpoint URL:    https://c3.<region>.containers.cloud.ibm.com:30426
    Private Service Endpoint URL:   https://c3-private.<region>.containers.cloud.ibm.com:31140
    Master Location:                Dallas
    Master Status:                  Ready (21 hours ago)
    Ingress Subdomain:              mycluster-<hash>-0000.us-south.containers.appdomain.cloud
    Ingress Secret:                 mycluster-<hash>-0000
    Workers:                        6
    Worker Zones:                   dal10, dal12
    Version:                        1.36_1524
    Owner:                          owner@email.com
    Resource Group ID:              a8a12accd63b437bbd6d58fb6a462ca7
    Resource Group Name:            Default