5.2. Gérer les nœuds de calcul


Ce document décrit comment gérer les nœuds de calcul (également connus sous le nom de travailleur) avec Red Hat OpenShift Service sur AWS (ROSA).

La majorité des changements pour les nœuds de calcul sont configurés sur des pools de machines. Le pool de machines est un groupe de nœuds de calcul dans un cluster qui a la même configuration, offrant une facilité de gestion.

Il est possible d’éditer des options de configuration de pool de machines telles que l’échelle, l’ajout d’étiquettes de nœuds et l’ajout de taintes.

5.2.1. Création d’un pool de machines

Le pool de machines est créé lorsque vous installez un Red Hat OpenShift Service sur AWS (ROSA). Après l’installation, vous pouvez créer des pools de machines supplémentaires pour votre cluster en utilisant OpenShift Cluster Manager ou ROSA CLI (rosa).

Note

Dans le cas des utilisateurs de ROSA CLI rosa version 1.2.25 et des versions antérieures, le pool de machines créé avec le cluster est identifié comme par défaut. Dans le cas des utilisateurs de ROSA CLI rosa version 1.2.26 et plus tard, le pool de machines créé avec le cluster est identifié comme travailleur.

Créez des pools de machines supplémentaires pour votre cluster Red Hat OpenShift sur AWS (ROSA) en utilisant OpenShift Cluster Manager.

Conditions préalables

  • « vous avez créé un cluster ROSA.

Procédure

  1. Accédez à OpenShift Cluster Manager et sélectionnez votre cluster.
  2. Dans l’onglet pools de machines, cliquez sur Ajouter un pool de machine.
  3. Ajoutez un nom de pool machine.
  4. Choisissez un type d’instance de nœud de calcul dans le menu déroulant. Le type d’instance définit la vCPU et l’allocation de mémoire pour chaque nœud de calcul dans le pool de machines.

    Note

    Il est impossible de modifier le type d’instance d’un pool de machines après la création du pool.

  5. Facultatif: Configurer l’autoscaling pour le pool de machines:

    1. Activez la mise à l’échelle automatique pour augmenter automatiquement le nombre de machines de votre pool de machines pour répondre aux besoins de déploiement.
    2. Définissez les limites minimales et maximales de comptage des nœuds pour l’autoscaling. Le cluster autoscaler ne réduit pas ou n’augmente pas le nombre de nœuds de pool de machines au-delà des limites que vous spécifiez.

      • Lorsque vous avez déployé votre cluster à l’aide d’une seule zone de disponibilité, définissez le nombre minimum et maximum de nœuds. Cela définit les limites minimales et maximales des nœuds de calcul dans la zone de disponibilité.
      • Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, définissez les nœuds minimum par zone et les nœuds maximaux par zone. Cela définit les limites minimales et maximales des nœuds de calcul par zone.

        Note

        Alternativement, vous pouvez définir vos préférences de mise à l’échelle automatique pour le pool de machines après la création du pool de machines.

  6. Dans le cas où vous n’avez pas activé la mise à l’échelle automatique, sélectionnez un nombre de nœuds de calcul:

    • Lorsque vous avez déployé votre cluster à l’aide d’une seule zone de disponibilité, sélectionnez un compte de nœuds de calcul dans le menu déroulant. Cela définit le nombre de nœuds de calcul à fournir au pool de machines pour la zone.
    • Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, sélectionnez le nombre de nœuds de calcul (par zone) dans le menu déroulant. Cela définit le nombre de nœuds de calcul à fournir au pool de machine par zone.
  7. Facultatif: Configurer la taille du disque Root.
  8. En option: Ajoutez des étiquettes et des taches de nœud pour votre piscine de machines:

    1. Développez le menu Edit node et taints.
    2. Dans les étiquettes Node, ajoutez des entrées Clé et Valeur pour vos étiquettes de nœuds.
    3. Dans Taints, ajoutez des entrées Clé et Valeur pour vos taints.

      Note

      La création d’un pool de machines avec des taints n’est possible que si le cluster a déjà au moins un pool de machines sans tainte.

    4. Dans chaque tainte, sélectionnez un effet dans le menu déroulant. Les options disponibles incluent NoSchedule, PreferNoSchedule et NoExecute.

      Note

      Alternativement, vous pouvez ajouter les étiquettes et les taches de nœud après avoir créé le pool de machines.

  9. Facultatif: Sélectionnez des groupes de sécurité personnalisés supplémentaires à utiliser pour les nœuds dans ce pool de machines. Il faut déjà avoir créé les groupes de sécurité et les associer au VPC que vous avez sélectionné pour ce cluster. Il est impossible d’ajouter ou de modifier des groupes de sécurité après avoir créé le pool de machines. Consultez les exigences relatives aux groupes de sécurité dans la section « Ressources supplémentaires ».
  10. Facultatif: Utilisez Amazon EC2 Spot Instances si vous souhaitez configurer votre pool de machines pour déployer des machines en tant qu’instances AWS Spot non garanties:

    1. Choisissez Utilisez Amazon EC2 Spot Instances.
    2. Laissez Utiliser le prix de l’instance à la demande sélectionné pour utiliser le prix de l’instance à la demande. Alternativement, sélectionnez Définir le prix maximum pour définir un prix horaire maximum pour une instance Spot.

      Consultez la documentation AWS pour plus d’informations sur Amazon EC2 Spot Instances.

      Important

      Amazon EC2 Spot Instances peut être interrompue à tout moment. Amazon EC2 Spot Instances n’utilise que des charges de travail pouvant tolérer des interruptions.

      Note

      Lorsque vous sélectionnez Utilisez Amazon EC2 Spot Instances pour un pool de machines, vous ne pouvez pas désactiver l’option après la création du pool de machines.

  11. Cliquez sur Ajouter un pool de machine pour créer le pool de machines.

La vérification

  • Assurez-vous que le pool de machines est visible sur la page des pools de machines et que la configuration est comme prévu.

Il est possible de créer des pools de machines supplémentaires pour votre cluster Red Hat OpenShift Service sur AWS (ROSA) à l’aide du ROSA CLI (rosa).

Conditions préalables

  • Dans votre poste de travail, vous avez installé et configuré le dernier service Red Hat OpenShift sur AWS (ROSA) CLI, rosa.
  • Connectez-vous à votre compte Red Hat à l’aide du ROSA CLI (rosa).
  • « vous avez créé un cluster ROSA.

Procédure

  • Ajouter un pool de machines qui n’utilise pas d’autoscaling, créer le pool de machines et définir le type d’instance, calculer (également connu sous le nom de travailleur) le nombre de nœuds et les étiquettes des nœuds:

    $ rosa create machinepool --cluster=<cluster-name> \
                              --name=<machine_pool_id> \
                              --replicas=<replica_count> \
                              --instance-type=<instance_type> \
                              --labels=<key>=<value>,<key>=<value> \
                              --taints=<key>=<value>:<effect>,<key>=<value>:<effect> \
                              --use-spot-instances \
                              --spot-max-price=<price> \
                              --disk-size=<disk_size> \
                              --availability-zone=<availability_zone_name> \
                              --additional-security-group-ids <sec_group_id> \
                              --subnet <subnet_id>
    Copy to Clipboard Toggle word wrap

    là où:

    --nom=&lt;machine_pool_id&gt;
    Indique le nom du pool de machines.
    --replicas=&lt;replica_count&gt;
    Indique le nombre de nœuds de calcul à disposition. Lorsque vous avez déployé ROSA à l’aide d’une seule zone de disponibilité, cela définit le nombre de nœuds de calcul à fournir au pool de machines pour la zone. Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, cela définit le nombre de nœuds de calcul à fournir au total dans toutes les zones et le nombre doit être un multiple de 3. L’argument --replicas est requis lorsque l’autoscaling n’est pas configuré.
    --instance-type=&lt;instance_type&gt;
    Facultatif: Définit le type d’instance pour les nœuds de calcul dans votre pool de machines. Le type d’instance définit la vCPU et l’allocation de mémoire pour chaque nœud de calcul dans le pool. &lt;instance_type&gt; par un type d’instance. La valeur par défaut est m5.xlarge. Il est impossible de modifier le type d’instance d’un pool de machines après la création du pool.
    --labels=&lt;key&gt;=&lt;valeur&gt;,&lt;key&gt;=&lt;valeur&gt;
    Facultatif: Définit les étiquettes pour la piscine de machines. &lt;key&gt;=&lt;valeur&gt;,&lt;key&gt;=&lt;value&gt; par une liste délimitée par virgule de paires clé-valeur, par exemple --labels=key1=value1,key2=value2.
    --taints=&lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt;,&lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt;
    Facultatif: Définit les taintes pour la piscine de la machine. &lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt;,&lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt; par une clé, une valeur et un effet pour chaque taint, par exemple --taints=key1=value1:NoSchedule,key2=value2:NoExecute. Les effets disponibles incluent NoSchedule, PreferNoSchedule et NoExecute.
    --utilisation-spot-instances
    Facultatif : Configure votre pool de machines pour déployer des machines en tant qu’instances AWS Spot non garanties. À titre d’information, consultez Amazon EC2 Spot Instances dans la documentation AWS. Lorsque vous sélectionnez Utilisez Amazon EC2 Spot Instances pour un pool de machines, vous ne pouvez pas désactiver l’option après la création du pool de machines.
    --spot-max-prix=&lt;prix&gt;

    Facultatif: Si vous choisissez d’utiliser Spot Instances, vous pouvez spécifier cet argument pour définir un prix horaire maximum pour une instance Spot. Dans le cas où cet argument n’est pas spécifié, le prix à la demande est utilisé.

    Important

    Amazon EC2 Spot Instances peut être interrompue à tout moment. Amazon EC2 Spot Instances n’utilise que des charges de travail pouvant tolérer des interruptions.

    --disk-size=&lt;disk_size&gt;
    Facultatif: Spécifie la taille du disque du nœud de travail. La valeur peut être en GB, GiB, TB ou TiB. &lt;disk_size&gt; par une valeur numérique et une unité, par exemple --disk-size=200GiB.
    --disponibilité-zone=&lt;availability_zone_name&gt;

    En option: Pour les clusters Multi-AZ, vous pouvez créer un pool de machines dans une seule AZ de votre choix. &lt;availability_zone_name&gt; par un nom unique.

    Note

    Les clusters multi-AZ conservent un plan de commande Multi-AZ et peuvent avoir des pools de machines de travail à travers une seule AZ ou une Multi-AZ. Les pools de machines distribuent les machines (nœuds) uniformément sur les zones de disponibilité.

    Avertissement

    Lorsque vous choisissez un pool de machines de travail avec un Single-AZ, il n’y a pas de tolérance aux défauts pour ce pool de machine, quel que soit le nombre de répliques de la machine. En ce qui concerne les piscines de machines de travail tolérantes aux pannes, le choix d’un pool de machines multi-AZ distribue des machines dans des multiples de 3 zones de disponibilité.

    • La piscine de machines multi-AZ avec trois zones de disponibilité peut avoir un nombre de machines en multiples de 3 seulement, tels que 3, 6, 9, et ainsi de suite.
    • La piscine de machines monoAZ avec une zone de disponibilité peut avoir un nombre de machines en multiples de 1, tel que 1, 2, 3, 4, et ainsi de suite.
    --addition-sécurité-groupe-ID &lt;sec_group_id&gt;
    Facultatif: Pour les pools de machines dans des clusters qui n’ont pas de VPC gérés par Red Hat, vous pouvez sélectionner des groupes de sécurité personnalisés supplémentaires à utiliser dans vos pools de machines. Il faut déjà avoir créé les groupes de sécurité et les associer au VPC que vous avez sélectionné pour ce cluster. Il est impossible d’ajouter ou de modifier des groupes de sécurité après avoir créé le pool de machines. Consultez les exigences relatives aux groupes de sécurité dans la section « Ressources supplémentaires ».
    --subnet &lt;subnet_id&gt;

    Facultatif: Pour les clusters BYO VPC, vous pouvez sélectionner un sous-réseau pour créer un pool de machines mono-AZ. Lorsque le sous-réseau est sorti de vos sous-réseaux de création de clusters, il doit y avoir une balise avec une clé kubernetes.io/cluster/&lt;infra-id&gt; et la valeur partagée. Les clients peuvent obtenir l’ID Infra en utilisant la commande suivante:

    $ rosa describe cluster -c <cluster name>|grep "Infra ID:"
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    Infra ID:                   mycluster-xqvj7
    Copy to Clipboard Toggle word wrap

    Note

    En même temps, vous ne pouvez pas définir à la fois --subnet et --disponibilité-zone, seulement 1 est autorisé pour une création de pool de machine Single-AZ.

    L’exemple suivant crée un pool de machines appelé mymachinepool qui utilise le type d’instance m5.xlarge et possède 2 répliques de nœuds de calcul. L’exemple ajoute également 2 étiquettes spécifiques à la charge de travail:

    $ rosa create machinepool --cluster=mycluster --name=mymachinepool --replicas=2 --instance-type=m5.xlarge --labels=app=db,tier=backend
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    I: Machine pool 'mymachinepool' created successfully on cluster 'mycluster'
    I: To view all machine pools, run 'rosa list machinepools -c mycluster'
    Copy to Clipboard Toggle word wrap

  • Ajouter un pool de machines qui utilise l’autoscaling, créer le pool de machines et définir la configuration d’autoscaling, le type d’instance et les étiquettes de nœud:

    $ rosa create machinepool --cluster=<cluster-name> \
                              --name=<machine_pool_id> \
                              --enable-autoscaling \
                              --min-replicas=<minimum_replica_count> \
                              --max-replicas=<maximum_replica_count> \
                              --instance-type=<instance_type> \
                              --labels=<key>=<value>,<key>=<value> \
                              --taints=<key>=<value>:<effect>,<key>=<value>:<effect> \
                              --availability-zone=<availability_zone_name> \
                              --use-spot-instances \
                              --spot-max-price=<price>
    Copy to Clipboard Toggle word wrap

    là où:

    --nom=&lt;machine_pool_id&gt;
    Indique le nom du pool de machines. &lt;machine_pool_id&gt; par le nom de votre pool de machines.
    --enable-autoscaling
    Active la mise à l’échelle automatique dans le pool de machines pour répondre aux besoins de déploiement.
    --min-replicas=&lt;minimum_replica_count&gt; et --max-replicas=&lt;maxum_replica_count&gt;

    Définit les limites minimales et maximales des nœuds de calcul. Le cluster autoscaler ne réduit pas ou n’augmente pas le nombre de nœuds de pool de machines au-delà des limites que vous spécifiez.

    Lorsque vous avez déployé ROSA à l’aide d’une seule zone de disponibilité, les arguments --min-replicas et --max-replicas définissent les limites d’autoscaling dans le pool de machines pour la zone. Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, les arguments définissent les limites d’autoscaling au total dans toutes les zones et les nombres doivent être multiples de 3.

    --instance-type=&lt;instance_type&gt;
    Facultatif: Définit le type d’instance pour les nœuds de calcul dans votre pool de machines. Le type d’instance définit la vCPU et l’allocation de mémoire pour chaque nœud de calcul dans le pool. &lt;instance_type&gt; par un type d’instance. La valeur par défaut est m5.xlarge. Il est impossible de modifier le type d’instance d’un pool de machines après la création du pool.
    --labels=&lt;key&gt;=&lt;valeur&gt;,&lt;key&gt;=&lt;valeur&gt;
    Facultatif: Définit les étiquettes pour la piscine de machines. &lt;key&gt;=&lt;valeur&gt;,&lt;key&gt;=&lt;value&gt; par une liste délimitée par virgule de paires clé-valeur, par exemple --labels=key1=value1,key2=value2.
    --taints=&lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt;,&lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt;
    Facultatif: Définit les taintes pour la piscine de la machine. &lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt;,&lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt; par une clé, une valeur et un effet pour chaque taint, par exemple --taints=key1=value1:NoSchedule,key2=value2:NoExecute. Les effets disponibles incluent NoSchedule, PreferNoSchedule et NoExecute.
    --disponibilité-zone=&lt;availability_zone_name&gt;
    En option: Pour les clusters Multi-AZ, vous pouvez créer un pool de machines dans une seule AZ de votre choix. &lt;availability_zone_name&gt; par un nom unique.
    --utilisation-spot-instances

    Facultatif : Configure votre pool de machines pour déployer des machines en tant qu’instances AWS Spot non garanties. À titre d’information, consultez Amazon EC2 Spot Instances dans la documentation AWS. Lorsque vous sélectionnez Utilisez Amazon EC2 Spot Instances pour un pool de machines, vous ne pouvez pas désactiver l’option après la création du pool de machines.

    Important

    Amazon EC2 Spot Instances peut être interrompue à tout moment. Amazon EC2 Spot Instances n’utilise que des charges de travail pouvant tolérer des interruptions.

    --spot-max-prix=&lt;prix&gt;
    Facultatif: Si vous choisissez d’utiliser Spot Instances, vous pouvez spécifier cet argument pour définir un prix horaire maximum pour une instance Spot. Dans le cas où cet argument n’est pas spécifié, le prix à la demande est utilisé.

    L’exemple suivant crée un pool de machines appelé mymachinepool qui utilise le type d’instance m5.xlarge et a activé l’autoscaling. La limite minimale de nœud de calcul est de 3 et le maximum est de 6 dans l’ensemble. L’exemple ajoute également 2 étiquettes spécifiques à la charge de travail:

    $ rosa create machinepool --cluster=mycluster --name=mymachinepool --enable-autoscaling --min-replicas=3 --max-replicas=6 --instance-type=m5.xlarge --labels=app=db,tier=backend
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    I: Machine pool 'mymachinepool' created successfully on cluster 'mycluster'
    I: To view all machine pools, run 'rosa list machinepools -c mycluster'
    Copy to Clipboard Toggle word wrap

  • Afin d’ajouter une licence Windows incluse dans un pool de machines activée à une ROSA avec le cluster HCP, consultez la licence AWS Windows incluse pour ROSA avec HCP.

    Les pools de machines activés ne peuvent être créés que lorsque les critères suivants sont satisfaits:

    • Le cluster hôte est un ROSA avec le cluster HCP.
    • Le type d’instance est en métal nu EC2.

      Important

      La licence AWS Windows incluse pour ROSA avec HCP est uniquement une fonctionnalité d’aperçu technologique. Les fonctionnalités d’aperçu technologique ne sont pas prises en charge avec les accords de niveau de service de production de Red Hat (SLA) et pourraient ne pas être fonctionnellement complètes. Le Red Hat ne recommande pas de les utiliser en production. Ces fonctionnalités offrent un accès précoce aux fonctionnalités du produit à venir, permettant aux clients de tester les fonctionnalités et de fournir des commentaires pendant le processus de développement.

      En savoir plus sur la portée du support des fonctionnalités de Red Hat Technology Preview, voir la portée du support des fonctionnalités d’aperçu de la technologie.

La vérification

Il est possible de répertorier tous les pools de machines sur votre cluster ou de décrire des pools de machines individuels.

  1. Énumérez les pools de machines disponibles sur votre cluster:

    $ rosa list machinepools --cluster=<cluster_name>
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ID             AUTOSCALING  REPLICAS  INSTANCE TYPE  LABELS                  TAINTS    AVAILABILITY ZONES                    SPOT INSTANCES
    Default        No           3         m5.xlarge                                        us-east-1a, us-east-1b, us-east-1c    N/A
    mymachinepool  Yes          3-6       m5.xlarge      app=db, tier=backend              us-east-1a, us-east-1b, us-east-1c    No
    Copy to Clipboard Toggle word wrap

  2. Décrivez les informations d’un pool de machines spécifique dans votre cluster:

    $ rosa describe machinepool --cluster=<cluster_name> --machinepool=mymachinepool
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ID:                         mymachinepool
    Cluster ID:                 27iimopsg1mge0m81l0sqivkne2qu6dr
    Autoscaling:                Yes
    Replicas:                   3-6
    Instance type:              m5.xlarge
    Labels:                     app=db, tier=backend
    Taints:
    Availability zones:         us-east-1a, us-east-1b, us-east-1c
    Subnets:
    Spot instances:             No
    Disk size:                  300 GiB
    Security Group IDs:
    Copy to Clipboard Toggle word wrap

  3. Assurez-vous que le pool de machines est inclus dans la sortie et que la configuration est comme prévu.

5.2.2. Configuration du volume de disque de pool machine

La taille du volume du disque de pool machine peut être configurée pour plus de flexibilité. La taille du disque par défaut est de 300 GiB.

Dans le cas des clusters Red Hat OpenShift sur AWS (architecture classique) version 4.13 ou antérieures, la taille du disque peut être configurée d’un minimum de 128 GiB à un maximum de 1 TiB. Dans le cas de la version 4.14 et ultérieure, la taille du disque peut être configurée à un minimum de 128 GiB jusqu’à un maximum de 16 TiB.

Configurez la taille du disque de pool machine pour votre cluster en utilisant OpenShift Cluster Manager ou ROSA CLI (rosa).

Note

Les volumes existants de clusters et de nœuds de pool de machines ne peuvent pas être redimensionnés.

Conditions préalables à la création de clusters

  • Lors de l’installation du cluster, vous avez la possibilité de sélectionner le dimensionnement du disque de nœud pour le pool de machines par défaut.

La procédure de création de clusters

  1. À partir de l’Assistant cluster ROSA, accédez aux paramètres de cluster.
  2. Accédez à l’étape du pool machine.
  3. Choisissez la taille du disque racine souhaitée.
  4. Choisissez Suivant pour continuer à créer votre cluster.

Condition préalable à la création de pool de machines

  • Après l’installation du cluster, vous avez la possibilité de sélectionner le dimensionnement du disque de nœud pour le nouveau pool de machines.

La procédure pour la création de pool de machines

  1. Accédez à OpenShift Cluster Manager et sélectionnez votre cluster.
  2. Accédez à l’onglet Machine pool.
  3. Cliquez sur Ajouter un pool de machine.
  4. Choisissez la taille du disque racine souhaitée.
  5. Cliquez sur Ajouter un pool de machine pour créer le pool de machines.

Conditions préalables à la création de clusters

  • Lors de l’installation du cluster, vous avez la possibilité de sélectionner le dimensionnement du disque racine pour le pool de machines par défaut.

La procédure de création de clusters

  • Exécutez la commande suivante lors de la création de votre cluster OpenShift pour la taille du disque racine souhaitée:

    $ rosa create cluster --worker-disk-size=<disk_size>
    Copy to Clipboard Toggle word wrap

    La valeur peut être en GB, GiB, TB ou TiB. &lt;disk_size&gt; par une valeur numérique et une unité, par exemple --worker-disk-size=200GiB. Il est impossible de séparer le chiffre et l’unité. Aucun espace n’est autorisé.

Condition préalable à la création de pool de machines

  • Après l’installation du cluster, vous avez la possibilité de sélectionner le dimensionnement du disque racine pour le nouveau pool de machines.

La procédure pour la création de pool de machines

  1. Augmentez le cluster en exécutant la commande suivante:

    $ rosa create machinepool --cluster=<cluster_id> \
    1
    
                              --disk-size=<disk_size> 
    2
    Copy to Clipboard Toggle word wrap
    1
    Indique l’ID ou le nom de votre cluster OpenShift existant.
    2
    Indique la taille du disque du nœud de travail. La valeur peut être en GB, GiB, TB ou TiB. &lt;disk_size&gt; par une valeur numérique et une unité, par exemple --disk-size=200GiB. Il est impossible de séparer le chiffre et l’unité. Aucun espace n’est autorisé.
  2. Confirmez la nouvelle taille du volume du disque de pool machine en vous connectant à la console AWS et trouvez la taille du volume de la racine de la machine virtuelle EC2.

5.2.3. La suppression d’une piscine de machines

Il est possible de supprimer un pool de machines dans le cas où vos besoins de charge de travail ont changé et que vos pools de machines actuels ne répondent plus à vos besoins.

Il est possible de supprimer les pools de machines avec Red Hat OpenShift Cluster Manager ou ROSA CLI (rosa).

Il est possible de supprimer un pool de machines pour votre Red Hat OpenShift Service sur AWS cluster en utilisant Red Hat OpenShift Cluster Manager.

Conditions préalables

  • « vous avez créé un cluster ROSA.
  • Le cluster est dans l’état prêt.
  • Il y a un pool de machines existant sans taintes et avec au moins deux instances pour un cluster monoAZ ou trois instances pour un cluster multi-AZ.

Procédure

  1. À partir d’OpenShift Cluster Manager, accédez à la page Liste des clusters et sélectionnez le cluster qui contient le pool de machines que vous souhaitez supprimer.
  2. Dans le cluster sélectionné, sélectionnez l’onglet Machine pools.
  3. Dans l’onglet pools de machines, cliquez sur le menu Options du pool de machines que vous souhaitez supprimer.
  4. Cliquez sur Supprimer.

    Le pool de machines sélectionné est supprimé.

Il est possible de supprimer un pool de machines pour votre Red Hat OpenShift Service sur AWS cluster en utilisant le ROSA CLI.

Note

Dans le cas des utilisateurs de ROSA CLI rosa version 1.2.25 et des versions antérieures, le pool de machines (ID='Default') qui est créé avec le cluster ne peut pas être supprimé. Dans le cas des utilisateurs de ROSA CLI rosa version 1.2.26 et ultérieure, le pool de machines (ID='ouvrier') qui est créé avec le cluster peut être supprimé s’il y a un pool de machines dans le cluster qui ne contient pas de taintes, et au moins deux répliques pour un cluster Single-AZ ou trois répliques pour un cluster Multi-AZ.

Conditions préalables

  • « vous avez créé un cluster ROSA.
  • Le cluster est dans l’état prêt.
  • Il y a un pool de machines existant sans taintes et avec au moins deux instances pour un cluster Single-AZ ou trois instances pour un cluster Multi-AZ.

Procédure

  1. À partir du ROSA CLI, exécutez la commande suivante:

    $ rosa delete machinepool -c=<cluster_name> <machine_pool_ID>
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ? Are you sure you want to delete machine pool <machine_pool_ID> on cluster <cluster_name>? (y/N)
    Copy to Clipboard Toggle word wrap

  2. Entrez y pour supprimer le pool de machines.

    Le pool de machines sélectionné est supprimé.

5.2.4. Calcul à l’échelle des nœuds manuellement

Lorsque vous n’avez pas activé la mise à l’échelle automatique de votre pool de machines, vous pouvez mettre à l’échelle manuellement le nombre de nœuds de calcul (également appelés travailleurs) dans le pool pour répondre à vos besoins de déploiement.

Il faut mettre à l’échelle chaque pool de machines séparément.

Conditions préalables

  • Dans votre poste de travail, vous avez installé et configuré le dernier service Red Hat OpenShift sur AWS (ROSA) CLI, rosa.
  • Connectez-vous à votre compte Red Hat à l’aide du ROSA CLI (rosa).
  • Création d’un Red Hat OpenShift Service sur AWS (ROSA).
  • Il y a une piscine de machines existante.

Procédure

  1. Liste des pools de machines dans le cluster:

    $ rosa list machinepools --cluster=<cluster_name>
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ID        AUTOSCALING   REPLICAS    INSTANCE TYPE  LABELS    TAINTS   AVAILABILITY ZONES    DISK SIZE   SG IDs
    default   No            2           m5.xlarge                         us-east-1a            300GiB      sg-0e375ff0ec4a6cfa2
    mp1       No            2           m5.xlarge                         us-east-1a            300GiB      sg-0e375ff0ec4a6cfa2
    Copy to Clipboard Toggle word wrap

  2. Augmenter ou diminuer le nombre de répliques de nœuds de calcul dans un pool de machines:

    $ rosa edit machinepool --cluster=<cluster_name> \
                            --replicas=<replica_count> \
    1
    
                            <machine_pool_id> 
    2
    Copy to Clipboard Toggle word wrap
    1
    Lorsque vous avez déployé Red Hat OpenShift Service sur AWS (ROSA) (architecture classique) à l’aide d’une seule zone de disponibilité, le nombre de répliques définit le nombre de nœuds de calcul à fournir au pool de machines pour la zone. Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, le nombre de nœuds de calcul dans le pool de machines dans toutes les zones doit être un multiple de 3.
    2
    &lt;machine_pool_id&gt; par l’ID de votre pool de machines, comme indiqué dans la sortie de la commande précédente.

La vérification

  1. Énumérez les pools de machines disponibles dans votre cluster:

    $ rosa list machinepools --cluster=<cluster_name>
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ID        AUTOSCALING   REPLICAS    INSTANCE TYPE  LABELS    TAINTS   AVAILABILITY ZONES    DISK SIZE   SG IDs
    default   No            2           m5.xlarge                         us-east-1a            300GiB      sg-0e375ff0ec4a6cfa2
    mp1       No            3           m5.xlarge                         us-east-1a            300GiB      sg-0e375ff0ec4a6cfa2
    Copy to Clipboard Toggle word wrap

  2. Dans la sortie de la commande précédente, vérifiez que le nombre de répliques de nœuds de calcul est comme prévu pour votre pool de machines. Dans l’exemple de sortie, le nombre de répliques de nœuds de calcul pour le pool de machines mp1 est mis à l’échelle à 3.

5.2.5. Étiquettes des nœuds

L’étiquette est une paire clé-valeur appliquée à un objet Node. Il est possible d’utiliser des étiquettes pour organiser des ensembles d’objets et contrôler la planification des pods.

Il est possible d’ajouter des étiquettes lors de la création de clusters ou après. Les étiquettes peuvent être modifiées ou mises à jour à tout moment.

Ajouter ou modifier des étiquettes pour les nœuds de calcul (également connus sous le nom de travailleur) à tout moment pour gérer les nœuds d’une manière qui vous intéresse. À titre d’exemple, vous pouvez attribuer des types de charges de travail à des nœuds spécifiques.

Les étiquettes sont attribuées en paires clé-valeur. Chaque clé doit être unique à l’objet auquel elle est assignée.

Conditions préalables

  • Dans votre poste de travail, vous avez installé et configuré le dernier service Red Hat OpenShift sur AWS (ROSA) CLI, rosa.
  • Connectez-vous à votre compte Red Hat à l’aide du ROSA CLI (rosa).
  • Création d’un Red Hat OpenShift Service sur AWS (ROSA).
  • Il y a une piscine de machines existante.

Procédure

  1. Liste des pools de machines dans le cluster:

    $ rosa list machinepools --cluster=<cluster_name>
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ID           AUTOSCALING  REPLICAS  INSTANCE TYPE  LABELS    TAINTS    AVAILABILITY ZONES    SPOT INSTANCES
    Default      No           2         m5.xlarge                          us-east-1a            N/A
    db-nodes-mp  No           2         m5.xlarge                          us-east-1a            No
    Copy to Clipboard Toggle word wrap

  2. Ajouter ou mettre à jour les étiquettes des nœuds pour un pool de machines:

    • Afin d’ajouter ou de mettre à jour les étiquettes des nœuds pour un pool de machines qui n’utilise pas d’autoscaling, exécutez la commande suivante:

      $ rosa edit machinepool --cluster=<cluster_name> \
                              --replicas=<replica_count> \
      1
      
                              --labels=<key>=<value>,<key>=<value> \
      2
      
                              <machine_pool_id>
      Copy to Clipboard Toggle word wrap
      1
      Dans le cas des pools de machines qui n’utilisent pas d’autoscaling, vous devez fournir un compte de réplique lors de l’ajout d’étiquettes de nœuds. Lorsque vous ne spécifiez pas l’argument --replicas, vous êtes invité à compter une réplique avant que la commande ne soit terminée. Lorsque vous avez déployé Red Hat OpenShift Service sur AWS (ROSA) à l’aide d’une seule zone de disponibilité, le nombre de répliques définit le nombre de nœuds de calcul à fournir au pool de machines pour la zone. Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, le nombre de nœuds de calcul dans le pool de machines dans toutes les zones doit être un multiple de 3.
      2
      &lt;key&gt;=&lt;valeur&gt;,&lt;key&gt;=&lt;value&gt; par une liste délimitée par virgule de paires clé-valeur, par exemple --labels=key1=value1,key2=value2. Cette liste écrase les modifications apportées aux étiquettes des nœuds sur une base continue.

      L’exemple suivant ajoute des étiquettes au pool de machines db-nodes-mp:

      $ rosa edit machinepool --cluster=mycluster --replicas=2 --labels=app=db,tier=backend db-nodes-mp
      Copy to Clipboard Toggle word wrap

      Exemple de sortie

      I: Updated machine pool 'db-nodes-mp' on cluster 'mycluster'
      Copy to Clipboard Toggle word wrap

    • Afin d’ajouter ou de mettre à jour les étiquettes des nœuds pour un pool de machines qui utilise l’autoscaling, exécutez la commande suivante:

      $ rosa edit machinepool --cluster=<cluster_name> \
                              --min-replicas=<minimum_replica_count> \
      1
      
                              --max-replicas=<maximum_replica_count> \
      2
      
                              --labels=<key>=<value>,<key>=<value> \
      3
      
                              <machine_pool_id>
      Copy to Clipboard Toggle word wrap
      1 2
      Dans le cas des pools de machines qui utilisent l’autoscaling, vous devez fournir des limites minimales et maximales de réplique des nœuds de calcul. Lorsque vous ne spécifiez pas les arguments, vous êtes invité pour les valeurs avant la fin de la commande. Le cluster autoscaler ne réduit pas ou n’augmente pas le nombre de nœuds de pool de machines au-delà des limites que vous spécifiez. Lorsque vous avez déployé ROSA à l’aide d’une seule zone de disponibilité, les arguments --min-replicas et --max-replicas définissent les limites d’autoscaling dans le pool de machines pour la zone. Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, les arguments définissent les limites d’autoscaling au total dans toutes les zones et les nombres doivent être multiples de 3.
      3
      &lt;key&gt;=&lt;valeur&gt;,&lt;key&gt;=&lt;value&gt; par une liste délimitée par virgule de paires clé-valeur, par exemple --labels=key1=value1,key2=value2. Cette liste écrase les modifications apportées aux étiquettes des nœuds sur une base continue.

      L’exemple suivant ajoute des étiquettes au pool de machines db-nodes-mp:

      $ rosa edit machinepool --cluster=mycluster --min-replicas=2 --max-replicas=3 --labels=app=db,tier=backend db-nodes-mp
      Copy to Clipboard Toggle word wrap

      Exemple de sortie

      I: Updated machine pool 'db-nodes-mp' on cluster 'mycluster'
      Copy to Clipboard Toggle word wrap

La vérification

  1. Décrivez les détails de la piscine de machines avec les nouvelles étiquettes:

    $ rosa describe machinepool --cluster=<cluster_name> --machinepool=<machine-pool-name>
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ID:                         db-nodes-mp
    Cluster ID:                 <ID_of_cluster>
    Autoscaling:                No
    Replicas:                   2
    Instance type:              m5.xlarge
    Labels:                     app=db, tier=backend
    Taints:
    Availability zones:         us-east-1a
    Subnets:
    Spot instances:             No
    Disk size:                  300 GiB
    Security Group IDs:
    Copy to Clipboard Toggle word wrap

  2. Assurez-vous que les étiquettes sont incluses pour votre pool de machines dans la sortie.

5.2.6. Ajout de tags à un pool de machines

Dans un pool de machines, vous pouvez ajouter des tags pour les nœuds de calcul, également connus sous le nom de nœuds de travail, pour introduire des balises utilisateur personnalisées pour les ressources AWS qui sont générées lorsque vous fournissez votre pool de machines.

Il est possible d’ajouter des tags à un pool de machines pour votre Red Hat OpenShift Service sur AWS cluster en utilisant l’interface de ligne de commande ROSA (CLI).

Important

Assurez-vous que vos clés de balise ne sont pas aws, red-hat-gaged, Red-hat-clustertype, ou Nom. De plus, vous ne devez pas définir une balise qui commence par kubernetes.io/cluster/. La clé de votre balise ne peut pas dépasser 128 caractères, tandis que la valeur de votre balise ne peut pas dépasser 256 caractères. Le Red Hat se réserve le droit d’ajouter des balises supplémentaires réservées à l’avenir.

Conditions préalables

  • Dans votre poste de travail, vous avez installé et configuré les derniers CLI AWS (aws), ROSA (rosa) et OpenShift (oc).
  • Connectez-vous à votre compte Red Hat en utilisant la rosa CLI.
  • Création d’un Red Hat OpenShift Service sur AWS (ROSA).

Procédure

  • Créez un pool de machines avec une balise personnalisée en exécutant la commande suivante:

    $ rosa create machinepools --cluster=<name> --replicas=<replica_count> \
         --name <mp_name> --tags='<key> <value>,<key> <value>' 
    1
    Copy to Clipboard Toggle word wrap
    1
    &lt;key&gt; &lt;value&gt;,&lt;key&gt; &lt;value&gt; par une clé et une valeur pour chaque balise.

    Exemple de sortie

    $ rosa create machinepools --cluster=mycluster --replicas 2 --tags='tagkey1 tagvalue1,tagkey2 tagvaluev2'
    
    I: Checking available instance types for machine pool 'mp-1'
    I: Machine pool 'mp-1' created successfully on cluster 'mycluster'
    I: To view the machine pool details, run 'rosa describe machinepool --cluster mycluster --machinepool mp-1'
    I: To view all machine pools, run 'rosa list machinepools --cluster mycluster'
    Copy to Clipboard Toggle word wrap

La vérification

  • Faites appel à la commande de description pour voir les détails du pool de machines avec les balises, et vérifiez que les balises sont incluses pour votre pool de machines dans la sortie:

    $ rosa describe machinepool --cluster=<cluster_name> --machinepool=<machinepool_name>
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ID:                                    mp-1
    Cluster ID:                            2baiirqa2141oreotoivp4sipq84vp5g
    Autoscaling:                           No
    Replicas:                              2
    Instance type:                         m5.xlarge
    Labels:
    Taints:
    Availability zones:                    us-east-1a
    Subnets:
    Spot instances:                        No
    Disk size:                             300 GiB
    Additional Security Group IDs:
    Tags:                                  red-hat-clustertype=rosa, red-hat-managed=true, tagkey1=tagvalue1, tagkey2=tagvaluev2
    Copy to Clipboard Toggle word wrap

5.2.7. Ajout de taintes à une piscine de machines

Dans un pool de machines, vous pouvez ajouter des taintes pour le calcul (également connu sous le nom d’ouvrier) pour contrôler les gousses qui leur sont programmées. Lorsque vous appliquez une tainte sur un pool de machines, le programmeur ne peut pas placer un pod sur les nœuds dans le pool à moins que la spécification de la gousse ne comporte une tolérance pour la tainte. Les taints peuvent être ajoutés à un pool de machines à l’aide de Red Hat OpenShift Cluster Manager ou du Red Hat OpenShift Service sur AWS (ROSA) CLI, rosa.

Note

Le cluster doit avoir au moins un pool de machines qui ne contient pas de taintes.

Ajoutez des taintes à un pool de machines pour votre Red Hat OpenShift Service sur AWS cluster à l’aide de Red Hat OpenShift Cluster Manager.

Conditions préalables

  • Création d’un Red Hat OpenShift Service sur AWS (ROSA).
  • Il existe un pool de machines qui ne contient pas de taintes et qui contient au moins deux instances.

Procédure

  1. Accédez à OpenShift Cluster Manager et sélectionnez votre cluster.
  2. Dans l’onglet pools de machines, cliquez sur le menu Options du pool de machines auquel vous souhaitez ajouter un taint.
  3. Choisissez Modifier les taintes.
  4. Ajoutez des entrées de clé et de valeur pour votre taint.
  5. Choisissez un effet pour votre taint dans le menu déroulant. Les options disponibles incluent NoSchedule, PreferNoSchedule et NoExecute.
  6. Facultatif: Sélectionnez Ajouter taint si vous voulez ajouter plus de taintes à la piscine de la machine.
  7. Cliquez sur Enregistrer pour appliquer les taints sur le pool de machines.

La vérification

  1. Dans l’onglet Machine pools, sélectionnez &gt; à côté de votre pool de machines pour élargir la vue.
  2. Assurez-vous que vos taintes sont répertoriées sous Taints dans la vue élargie.

Ajoutez des taintes à un pool de machines pour votre Red Hat OpenShift Service sur AWS cluster à l’aide du ROSA CLI.

Note

Dans le cas des utilisateurs de ROSA CLI rosa version 1.2.25 et des versions antérieures, le nombre de taints ne peut pas être modifié dans le pool de machines (ID=Default) créé avec le cluster. Dans le cas des utilisateurs de ROSA CLI rosa version 1.2.26 et au-delà, le nombre de taintes peut être modifié dans le pool de machines (ID=worker) créé avec le cluster. Il doit y avoir au moins un pool de machines sans taintes et avec au moins deux répliques pour un cluster Single-AZ ou trois répliques pour un cluster Multi-AZ.

Conditions préalables

  • Dans votre poste de travail, vous avez installé et configuré les derniers CLI AWS (aws), ROSA (rosa) et OpenShift (oc).
  • Connectez-vous à votre compte Red Hat en utilisant la rosa CLI.
  • Création d’un Red Hat OpenShift Service sur AWS (ROSA).
  • Il existe un pool de machines qui ne contient pas de taintes et qui contient au moins deux instances.

Procédure

  1. Énumérez les pools de machines dans le cluster en exécutant la commande suivante:

    $ rosa list machinepools --cluster=<cluster_name>
    Copy to Clipboard Toggle word wrap
  2. Ajouter ou mettre à jour les taints pour un pool de machines:

    • Afin d’ajouter ou de mettre à jour des taints pour un pool de machines qui n’utilise pas d’autoscaling, exécutez la commande suivante:

      $ rosa edit machinepool --cluster=<cluster_name> \
                              --replicas=<replica_count> \
      1
      
                              --taints=<key>=<value>:<effect>,<key>=<value>:<effect> \
      2
      
                              <machine_pool_id>
      Copy to Clipboard Toggle word wrap
      1
      Dans le cas des pools de machines qui n’utilisent pas d’autoscaling, vous devez fournir un compte de réplique lors de l’ajout de taintes. Lorsque vous ne spécifiez pas l’argument --replicas, vous êtes invité à compter une réplique avant que la commande ne soit terminée. Lorsque vous avez déployé Red Hat OpenShift Service sur AWS (ROSA) à l’aide d’une seule zone de disponibilité, le nombre de répliques définit le nombre de nœuds de calcul à fournir au pool de machines pour la zone. Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, le nombre de nœuds de calcul dans le pool de machines dans toutes les zones doit être un multiple de 3.
      2
      &lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt;,&lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt; par une clé, une valeur et un effet pour chaque taint, par exemple --taints=key1=value1:NoSchedule,key2=value2:NoExecute. Les effets disponibles incluent NoSchedule, PreferNoSchedule et NoExecute.Cette liste écrase les modifications apportées aux taches de nœud sur une base continue.

      L’exemple suivant ajoute des taintes au pool de machines db-nodes-mp:

      $ rosa edit machinepool --cluster=mycluster --replicas 2 --taints=key1=value1:NoSchedule,key2=value2:NoExecute db-nodes-mp
      Copy to Clipboard Toggle word wrap

      Exemple de sortie

      I: Updated machine pool 'db-nodes-mp' on cluster 'mycluster'
      Copy to Clipboard Toggle word wrap

    • Afin d’ajouter ou de mettre à jour des taints pour un pool de machines qui utilise l’autoscaling, exécutez la commande suivante:

      $ rosa edit machinepool --cluster=<cluster_name> \
                              --min-replicas=<minimum_replica_count> \
      1
      
                              --max-replicas=<maximum_replica_count> \
      2
      
                              --taints=<key>=<value>:<effect>,<key>=<value>:<effect> \
      3
      
                              <machine_pool_id>
      Copy to Clipboard Toggle word wrap
      1 2
      Dans le cas des pools de machines qui utilisent l’autoscaling, vous devez fournir des limites minimales et maximales de réplique des nœuds de calcul. Lorsque vous ne spécifiez pas les arguments, vous êtes invité pour les valeurs avant la fin de la commande. Le cluster autoscaler ne réduit pas ou n’augmente pas le nombre de nœuds de pool de machines au-delà des limites que vous spécifiez. Lorsque vous avez déployé ROSA à l’aide d’une seule zone de disponibilité, les arguments --min-replicas et --max-replicas définissent les limites d’autoscaling dans le pool de machines pour la zone. Lorsque vous avez déployé votre cluster à l’aide de plusieurs zones de disponibilité, les arguments définissent les limites d’autoscaling au total dans toutes les zones et les nombres doivent être multiples de 3.
      3
      &lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt;,&lt;key&gt;=&lt;valeur&gt;:&lt;effet&gt; par une clé, une valeur et un effet pour chaque taint, par exemple --taints=key1=value1:NoSchedule,key2=value2:NoExecute. Les effets disponibles incluent NoSchedule, PreferNoSchedule et NoExecute. Cette liste annule les modifications apportées aux taches de nœud sur une base continue.

      L’exemple suivant ajoute des taintes au pool de machines db-nodes-mp:

      $ rosa edit machinepool --cluster=mycluster --min-replicas=2 --max-replicas=3 --taints=key1=value1:NoSchedule,key2=value2:NoExecute db-nodes-mp
      Copy to Clipboard Toggle word wrap

      Exemple de sortie

      I: Updated machine pool 'db-nodes-mp' on cluster 'mycluster'
      Copy to Clipboard Toggle word wrap

La vérification

  1. Décrivez les détails de la piscine de machines avec les nouvelles taintes:

    $ rosa describe machinepool --cluster=<cluster_name> --machinepool=<machinepool_name>
    Copy to Clipboard Toggle word wrap

    Exemple de sortie

    ID:                         db-nodes-mp
    Cluster ID:                 <ID_of_cluster>
    Autoscaling:                No
    Replicas:                   2
    Instance type:              m5.xlarge
    Labels:
    Taints:                     key1=value1:NoSchedule, key2=value2:NoExecute
    Availability zones:         us-east-1a
    Subnets:
    Spot instances:             No
    Disk size:                  300 GiB
    Security Group IDs:
    Copy to Clipboard Toggle word wrap

  2. Assurez-vous que les taintes sont incluses pour votre pool de machines dans la sortie.

5.2.8. Ressources supplémentaires

Retour au début
Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2025 Red Hat