2.7. Placer des pods sur des nœuds spécifiques à l’aide de sélecteurs de nœuds


Le sélecteur de nœuds spécifie une carte des paires clé-valeur. Les règles sont définies à l’aide d’étiquettes personnalisées sur les nœuds et les sélecteurs spécifiés dans les pods.

Afin que la gousse puisse fonctionner sur un nœud, la gousse doit avoir les paires clé-valeur indiquées comme étiquette sur le nœud.

Lorsque vous utilisez l’affinité des nœuds et les sélecteurs de nœuds dans la même configuration, consultez les considérations importantes ci-dessous.

Il est possible d’utiliser des sélecteurs de nœuds sur les gousses et les étiquettes sur les nœuds pour contrôler l’endroit où la gousse est programmée. Avec les sélecteurs de nœuds, Red Hat OpenShift Service sur AWS programme les pods sur les nœuds qui contiennent des étiquettes correspondantes.

Ajoutez des étiquettes à un nœud, à un ensemble de machines de calcul ou à une configuration de machine. L’ajout de l’étiquette à l’ensemble de la machine de calcul garantit que si le nœud ou la machine descend, les nouveaux nœuds ont l’étiquette. Les étiquettes ajoutées à un nœud ou à une configuration de machine ne persistent pas si le nœud ou la machine descend.

Ajouter des sélecteurs de nœuds à un pod existant, ajouter un sélecteur de nœud à l’objet de contrôle pour ce pod, tel qu’un objet ReplicaSet, DaemonSet objet, StatefulSet objet, Deployment object, ou DeploymentConfig objet. Les gousses existantes sous cet objet de contrôle sont recréées sur un nœud avec une étiquette correspondante. Lorsque vous créez un nouveau pod, vous pouvez ajouter le sélecteur de nœud directement au pod spec. Dans le cas où le pod n’a pas d’objet de contrôle, vous devez supprimer le pod, modifier la spécification du pod et recréer le pod.

Note

Il n’est pas possible d’ajouter un sélecteur de nœuds directement à un pod existant.

Conditions préalables

Afin d’ajouter un sélecteur de nœud à des pods existants, déterminez l’objet de contrôle de ce pod. À titre d’exemple, la gousse routeur-default-66d5cf9464-m2g75 est contrôlée par la réplique routeur-default-66d5cf9464:

$ oc describe pod router-default-66d5cf9464-7pwkc
Copy to Clipboard Toggle word wrap

Exemple de sortie

kind: Pod
apiVersion: v1
metadata:
# ...
Name:               router-default-66d5cf9464-7pwkc
Namespace:          openshift-ingress
# ...
Controlled By:      ReplicaSet/router-default-66d5cf9464
# ...
Copy to Clipboard Toggle word wrap

La console web répertorie l’objet de contrôle sous OwnerReferences dans le pod YAML:

apiVersion: v1
kind: Pod
metadata:
  name: router-default-66d5cf9464-7pwkc
# ...
  ownerReferences:
    - apiVersion: apps/v1
      kind: ReplicaSet
      name: router-default-66d5cf9464
      uid: d81dd094-da26-11e9-a48a-128e7edf0312
      controller: true
      blockOwnerDeletion: true
# ...
Copy to Clipboard Toggle word wrap

Procédure

  • Ajouter le sélecteur de nœud correspondant à un pod:

    • Ajouter un sélecteur de nœuds aux pods existants et futurs, ajouter un sélecteur de nœud à l’objet de contrôle pour les pods:

      Exemple ReplicaSet objet avec des étiquettes

      kind: ReplicaSet
      apiVersion: apps/v1
      metadata:
        name: hello-node-6fbccf8d9
      # ...
      spec:
      # ...
        template:
          metadata:
            creationTimestamp: null
            labels:
              ingresscontroller.operator.openshift.io/deployment-ingresscontroller: default
              pod-template-hash: 66d5cf9464
          spec:
            nodeSelector:
              kubernetes.io/os: linux
              node-role.kubernetes.io/worker: ''
              type: user-node 
      1
      
      # ...
      Copy to Clipboard Toggle word wrap

      1
      Ajoutez le sélecteur de nœud.
    • Ajouter un sélecteur de nœud à un nouveau pod spécifique, ajouter le sélecteur directement à l’objet Pod:

      Exemple Pod objet avec un sélecteur de nœud

      apiVersion: v1
      kind: Pod
      metadata:
        name: hello-node-6fbccf8d9
      # ...
      spec:
        nodeSelector:
          region: east
          type: user-node
      # ...
      Copy to Clipboard Toggle word wrap

      Note

      Il n’est pas possible d’ajouter un sélecteur de nœuds directement à un pod existant.

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