14.3. Réglage des nœuds pour une faible latence à l'aide du profil de performance


Le profil de performance vous permet de contrôler les aspects de réglage de la latence des nœuds qui appartiennent à un certain pool de configuration de machines. Après avoir spécifié vos paramètres, l'objet PerformanceProfile est compilé en plusieurs objets qui effectuent le réglage au niveau du nœud :

  • Un fichier MachineConfig qui manipule les nœuds.
  • Un fichier KubeletConfig qui configure le gestionnaire de topologie, le gestionnaire de CPU et les nœuds d'OpenShift Container Platform.
  • Le profil d'accord qui configure l'opérateur d'accord du nœud.

Vous pouvez utiliser un profil de performance pour spécifier s'il faut mettre à jour le noyau vers kernel-rt, allouer d'énormes pages et partitionner les CPU pour qu'ils effectuent des tâches ménagères ou exécutent des charges de travail.

Note

Vous pouvez créer manuellement l'objet PerformanceProfile ou utiliser le Performance Profile Creator (PPC) pour générer un profil de performance. Voir les ressources supplémentaires ci-dessous pour plus d'informations sur le PPC.

Exemple de profil de performance

apiVersion: performance.openshift.io/v2
kind: PerformanceProfile
metadata:
 name: performance
spec:
 cpu:
  isolated: "5-15" 
1

  reserved: "0-4" 
2

 hugepages:
  defaultHugepagesSize: "1G"
  pages:
  - size: "1G"
    count: 16
    node: 0
 realTimeKernel:
  enabled: true  
3

 numa:  
4

  topologyPolicy: "best-effort"
 nodeSelector:
  node-role.kubernetes.io/worker-cnf: "" 
5

1
Ce champ permet d'isoler des unités centrales spécifiques à utiliser avec des conteneurs d'application pour les charges de travail.
2
Utilisez ce champ pour réserver des unités centrales spécifiques à utiliser avec des conteneurs infra pour l'entretien.
3
Utilisez ce champ pour installer le noyau en temps réel sur le nœud. Les valeurs valides sont true ou false. La valeur true installe le noyau en temps réel.
4
Ce champ permet de configurer la politique du gestionnaire de topologie. Les valeurs valides sont none (par défaut), best-effort, restricted et single-numa-node. Pour plus d'informations, voir Politiques du gestionnaire de topologie.
5
Utilisez ce champ pour spécifier un sélecteur de nœuds afin d'appliquer le profil de performance à des nœuds spécifiques.

14.3.1. Configuration de pages volumineuses

Les nœuds doivent pré-allouer les pages volumineuses utilisées dans un cluster OpenShift Container Platform. Utilisez l'opérateur Node Tuning pour allouer des pages volumineuses sur un nœud spécifique.

OpenShift Container Platform fournit une méthode pour créer et allouer d'énormes pages. Node Tuning Operator fournit une méthode plus simple pour le faire en utilisant le profil de performance.

Par exemple, dans la section hugepages pages du profil de performance, vous pouvez spécifier plusieurs blocs de size, count et, éventuellement, node:

hugepages:
   defaultHugepagesSize: "1G"
   pages:
   - size:  "1G"
     count:  4
     node:  0 
1
1
node est le nœud NUMA dans lequel les pages volumineuses sont allouées. Si vous omettez node, les pages sont réparties uniformément entre tous les nœuds NUMA.
Note

Attendez que le statut du pool de configuration de la machine concerné indique que la mise à jour est terminée.

Ce sont les seules étapes de configuration que vous devez effectuer pour allouer des pages volumineuses.

Vérification

  • Pour vérifier la configuration, consultez le fichier /proc/meminfo sur le nœud :

    $ oc debug node/ip-10-0-141-105.ec2.internal
    # grep -i huge /proc/meminfo

    Exemple de sortie

    AnonHugePages:    ###### ##
    ShmemHugePages:        0 kB
    HugePages_Total:       2
    HugePages_Free:        2
    HugePages_Rsvd:        0
    HugePages_Surp:        0
    Hugepagesize:       #### ##
    Hugetlb:            #### ##

  • Utilisez oc describe pour indiquer la nouvelle taille :

    $ oc describe node worker-0.ocp4poc.example.com | grep -i huge

    Exemple de sortie

                                       hugepages-1g=true
     hugepages-###:  ###
     hugepages-###:  ###

14.3.2. Allocation de plusieurs pages de grande taille

Vous pouvez demander des pages volumineuses de différentes tailles dans le même conteneur. Cela vous permet de définir des pods plus complexes composés de conteneurs ayant des besoins différents en matière de taille des pages.

Par exemple, vous pouvez définir les tailles 1G et 2M et l'opérateur Node Tuning configurera les deux tailles sur le nœud, comme illustré ci-dessous :

spec:
  hugepages:
    defaultHugepagesSize: 1G
    pages:
    - count: 1024
      node: 0
      size: 2M
    - count: 4
      node: 1
      size: 1G

Configurez un nœud de cluster pour l'équilibrage de charge dynamique IRQ afin de contrôler quels cœurs peuvent recevoir des demandes d'interruption de périphérique (IRQ).

Conditions préalables

  • Pour l'isolation du noyau, tous les composants matériels du serveur doivent prendre en charge l'affinité IRQ. Pour plus d'informations, voir la section Additional resources.

Procédure

  1. Connectez-vous au cluster OpenShift Container Platform en tant qu'utilisateur disposant des privilèges cluster-admin.
  2. Définissez le profil de performance apiVersion pour utiliser performance.openshift.io/v2.
  3. Supprimez le champ globallyDisableIrqLoadBalancing ou attribuez-lui la valeur false.
  4. Définissez les CPU isolés et réservés appropriés. L'extrait suivant illustre un profil qui réserve 2 CPU. L'équilibrage de la charge des IRQ est activé pour les pods fonctionnant sur l'ensemble de CPU isolated:

    apiVersion: performance.openshift.io/v2
    kind: PerformanceProfile
    metadata:
      name: dynamic-irq-profile
    spec:
      cpu:
        isolated: 2-5
        reserved: 0-1
    ...
    Note

    Lorsque vous configurez des CPU réservés et isolés, les conteneurs d'infrastructure dans les pods utilisent les CPU réservés et les conteneurs d'application utilisent les CPU isolés.

  5. Créez le pod qui utilise des CPU exclusifs et attribuez les annotations irq-load-balancing.crio.io et cpu-quota.crio.io à disable. Par exemple :

    apiVersion: v1
    kind: Pod
    metadata:
      name: dynamic-irq-pod
      annotations:
         irq-load-balancing.crio.io: "disable"
         cpu-quota.crio.io: "disable"
    spec:
      containers:
      - name: dynamic-irq-pod
        image: "registry.redhat.io/openshift4/cnf-tests-rhel8:v4.4.12"
        command: ["sleep", "10h"]
        resources:
          requests:
            cpu: 2
            memory: "200M"
          limits:
            cpu: 2
            memory: "200M"
      nodeSelector:
        node-role.kubernetes.io/worker-cnf: ""
      runtimeClassName: performance-dynamic-irq-profile
    ...
  6. Saisissez le pod runtimeClassName sous la forme performance-<profile_name>, où <profile_name> est le name du YAML PerformanceProfile, dans cet exemple, performance-dynamic-irq-profile.
  7. Définir le sélecteur de nœud pour cibler un travailleur cnf.
  8. Assurez-vous que le pod fonctionne correctement. Le statut doit être running, et le nœud cnf-worker correct doit être défini :

    $ oc get pod -o wide

    Résultats attendus

    NAME              READY   STATUS    RESTARTS   AGE     IP             NODE          NOMINATED NODE   READINESS GATES
    dynamic-irq-pod   1/1     Running   0          5h33m   <ip-address>   <node-name>   <none>           <none>

  9. Obtenir les unités centrales sur lesquelles le pod configuré pour l'équilibrage de charge dynamique IRQ fonctionne :

    $ oc exec -it dynamic-irq-pod -- /bin/bash -c "grep Cpus_allowed_list /proc/self/status | awk '{print $2}'"

    Résultats attendus

    Cpus_allowed_list:  2-3

  10. Assurez-vous que la configuration du nœud est appliquée correctement. Accédez au nœud par SSH pour vérifier la configuration.

    $ oc debug node/<node-name>

    Résultats attendus

    Starting pod/<node-name>-debug ...
    To use host binaries, run `chroot /host`
    
    Pod IP: <ip-address>
    If you don't see a command prompt, try pressing enter.
    
    sh-4.4#

  11. Vérifiez que vous pouvez utiliser le système de fichiers du nœud :

    sh-4.4# chroot /host

    Résultats attendus

    sh-4.4#

  12. Assurez-vous que le masque d'affinité CPU du système par défaut n'inclut pas les CPU dynamic-irq-pod, par exemple, les CPU 2 et 3.

    $ cat /proc/irq/default_smp_affinity

    Exemple de sortie

    33

  13. Assurez-vous que les IRQ du système ne sont pas configurées pour fonctionner sur les unités centrales dynamic-irq-pod:

    find /proc/irq/ -name smp_affinity_list -exec sh -c 'i="$1"; mask=$(cat $i); file=$(echo $i); echo $file: $mask' _ {} \;

    Exemple de sortie

    /proc/irq/0/smp_affinity_list: 0-5
    /proc/irq/1/smp_affinity_list: 5
    /proc/irq/2/smp_affinity_list: 0-5
    /proc/irq/3/smp_affinity_list: 0-5
    /proc/irq/4/smp_affinity_list: 0
    /proc/irq/5/smp_affinity_list: 0-5
    /proc/irq/6/smp_affinity_list: 0-5
    /proc/irq/7/smp_affinity_list: 0-5
    /proc/irq/8/smp_affinity_list: 4
    /proc/irq/9/smp_affinity_list: 4
    /proc/irq/10/smp_affinity_list: 0-5
    /proc/irq/11/smp_affinity_list: 0
    /proc/irq/12/smp_affinity_list: 1
    /proc/irq/13/smp_affinity_list: 0-5
    /proc/irq/14/smp_affinity_list: 1
    /proc/irq/15/smp_affinity_list: 0
    /proc/irq/24/smp_affinity_list: 1
    /proc/irq/25/smp_affinity_list: 1
    /proc/irq/26/smp_affinity_list: 1
    /proc/irq/27/smp_affinity_list: 5
    /proc/irq/28/smp_affinity_list: 1
    /proc/irq/29/smp_affinity_list: 0
    /proc/irq/30/smp_affinity_list: 0-5

Certains contrôleurs d'IRQ ne prennent pas en charge le rééquilibrage des IRQ et exposent toujours tous les CPU en ligne comme masque d'IRQ. Ces contrôleurs d'IRQ fonctionnent effectivement sur l'unité centrale 0. Pour plus d'informations sur la configuration de l'hôte, connectez-vous en SSH à l'hôte et exécutez la commande suivante, en remplaçant <irq-num> par le numéro de l'unité centrale que vous souhaitez interroger :

$ cat /proc/irq/<irq-num>/effective_affinity

14.3.3.1. Compatibilité matérielle avec l'affinité IRQ

Pour l'isolation du noyau, tous les composants matériels du serveur doivent prendre en charge l'affinité IRQ. Pour vérifier si les composants matériels de votre serveur prennent en charge l'affinité IRQ, consultez les spécifications matérielles du serveur ou contactez votre fournisseur de matériel.

OpenShift Container Platform prend en charge les périphériques matériels suivants pour l'équilibrage dynamique de la charge :

Expand
Tableau 14.2. Contrôleurs d'interface réseau pris en charge
FabricantModelID du vendeurID de l'appareil

Broadcom

BCM57414

14e4

16d7

Broadcom

BCM57508

14e4

1750

Intel

X710

8086

1572

Intel

XL710

8086

1583

Intel

XXV710

8086

158b

Intel

E810-CQDA2

8086

1592

Intel

E810-2CQDA2

8086

1592

Intel

E810-XXVDA2

8086

159b

Intel

E810-XXVDA4

8086

1593

Mellanox

Famille MT27700 [ConnectX-4]

15b3

1013

Mellanox

Famille MT27710 [ConnectX-4 Lx]

15b3

1015

Mellanox

Famille MT27800 [ConnectX-5]

15b3

1017

Mellanox

Famille MT28880 [ConnectX-5 Ex]

15b3

1019

Mellanox

Famille MT28908 [ConnectX-6]

15b3

101b

Mellanox

Famille MT2892 [ConnectX-6 Dx]

15b3

101d

Mellanox

Famille MT2894 [ConnectX-6 Lx]

15b3

101f

Mellanox

MT42822 BlueField-2 en mode NIC ConnectX-6

15b3

a2d6

Pensando

DSC-25 carte de services distribués 25G à double port pour pilote ionique

0x1dd8

0x1002

Pensando

DSC-100 carte de services distribués 100G à double port pour pilote ionique

0x1dd8

0x1003

Silicom

Famille STS

8086

1591

14.3.4. Configuration de l'hyperthreading pour un cluster

Pour configurer l'hyperthreading pour un cluster OpenShift Container Platform, définissez les threads CPU dans le profil de performance sur les mêmes cœurs que ceux configurés pour les pools de CPU réservés ou isolés.

Note

Si vous configurez un profil de performance et que vous modifiez par la suite la configuration de l'hyperthreading pour l'hôte, assurez-vous de mettre à jour les champs CPU isolated et reserved dans le PerformanceProfile YAML pour qu'ils correspondent à la nouvelle configuration.

Avertissement

La désactivation d'une configuration d'hyperthreading de l'hôte précédemment activée peut entraîner l'inexactitude des ID des cœurs de CPU répertoriés dans le fichier PerformanceProfile YAML. Cette configuration incorrecte peut entraîner l'indisponibilité du nœud car les CPU répertoriés ne peuvent plus être trouvés.

Conditions préalables

  • Accès au cluster en tant qu'utilisateur ayant le rôle cluster-admin.
  • Installer le CLI OpenShift (oc).

Procédure

  1. Vérifiez quels threads s'exécutent sur quels processeurs pour l'hôte que vous souhaitez configurer.

    Vous pouvez voir quels threads sont en cours d'exécution sur les CPU hôtes en vous connectant au cluster et en exécutant la commande suivante :

    $ lscpu --all --extended

    Exemple de sortie

    CPU NODE SOCKET CORE L1d:L1i:L2:L3 ONLINE MAXMHZ    MINMHZ
    0   0    0      0    0:0:0:0       yes    4800.0000 400.0000
    1   0    0      1    1:1:1:0       yes    4800.0000 400.0000
    2   0    0      2    2:2:2:0       yes    4800.0000 400.0000
    3   0    0      3    3:3:3:0       yes    4800.0000 400.0000
    4   0    0      0    0:0:0:0       yes    4800.0000 400.0000
    5   0    0      1    1:1:1:0       yes    4800.0000 400.0000
    6   0    0      2    2:2:2:0       yes    4800.0000 400.0000
    7   0    0      3    3:3:3:0       yes    4800.0000 400.0000

    Dans cet exemple, il y a huit cœurs logiques de CPU fonctionnant sur quatre cœurs physiques de CPU. CPU0 et CPU4 fonctionnent sur le Core0 physique, CPU1 et CPU5 fonctionnent sur le Core 1 physique, et ainsi de suite.

    Pour afficher les threads définis pour un cœur de processeur physique particulier (cpu0 dans l'exemple ci-dessous), ouvrez une invite de commande et exécutez la commande suivante :

    $ cat /sys/devices/system/cpu/cpu0/topology/thread_siblings_list

    Exemple de sortie

    0-4

  2. Appliquez les CPU isolés et réservés dans le YAML PerformanceProfile. Par exemple, vous pouvez définir les cœurs logiques CPU0 et CPU4 comme isolated, et les cœurs logiques CPU1 à CPU3 et CPU5 à CPU7 comme reserved. Lorsque vous configurez des CPU réservés et isolés, les conteneurs d'infrastructure dans les pods utilisent les CPU réservés et les conteneurs d'application utilisent les CPU isolés.

    ...
      cpu:
        isolated: 0,4
        reserved: 1-3,5-7
    ...
    Note

    Les pools de CPU réservés et isolés ne doivent pas se chevaucher et doivent couvrir tous les cœurs disponibles dans le nœud de travail.

Important

L'hyperthreading est activé par défaut sur la plupart des processeurs Intel. Si vous activez l'hyperthreading, tous les threads traités par un cœur particulier doivent être isolés ou traités sur le même cœur.

Lorsque vous configurez des clusters pour un traitement à faible latence, vous devez vous demander si vous souhaitez désactiver l'hyperthreading avant de déployer le cluster. Pour désactiver l'hyperthreading, procédez comme suit :

  1. Créez un profil de performance adapté à votre matériel et à votre topologie.
  2. Définir nosmt comme un argument supplémentaire du noyau. L'exemple de profil de performance suivant illustre ce paramètre :

    apiVersion: performance.openshift.io/v2
    kind: PerformanceProfile
    metadata:
      name: example-performanceprofile
    spec:
      additionalKernelArgs:
        - nmi_watchdog=0
        - audit=0
        - mce=off
        - processor.max_cstate=1
        - idle=poll
        - intel_idle.max_cstate=0
        - nosmt
      cpu:
        isolated: 2-3
        reserved: 0-1
      hugepages:
        defaultHugepagesSize: 1G
        pages:
          - count: 2
            node: 0
            size: 1G
      nodeSelector:
        node-role.kubernetes.io/performance: ''
      realTimeKernel:
        enabled: true
    Note

    Lorsque vous configurez des CPU réservés et isolés, les conteneurs d'infrastructure dans les pods utilisent les CPU réservés et les conteneurs d'application utilisent les CPU isolés.

14.3.5. Comprendre les indices de charge de travail

Le tableau suivant décrit l'impact des combinaisons de consommation d'énergie et de paramètres en temps réel sur la latence.

Note

Les indices de charge de travail suivants peuvent être configurés manuellement. Vous pouvez également utiliser les indices de charge de travail à l'aide du Créateur de profil de performance. Pour plus d'informations sur le profil de performance, voir la section "Création d'un profil de performance".

Expand
Paramètres du créateur du profil de performanceIndiceEnvironnementDescription

Défaut

workloadHints:
highPowerConsumption: false
realTime: false

Cluster à haut débit sans exigences de latence

Performances obtenues grâce au partitionnement de l'unité centrale uniquement.

Faible latence

workloadHints:
highPowerConsumption: false
realTime: true

Centres de données régionaux

Des économies d'énergie et une faible latence sont souhaitables : il faut trouver un compromis entre la gestion de l'énergie, la latence et le débit.

Très faible latence

workloadHints:
highPowerConsumption: true
realTime: true

Clusters de pointe, charges de travail critiques en termes de latence

Optimisé pour une latence minimale absolue et un déterminisme maximal au prix d'une consommation d'énergie accrue.

Gestion de l'alimentation par pod

workloadHints:
realTime: true
highPowerConsumption: false
perPodPowerManagement: true

Charges de travail critiques et non critiques

Permet la gestion de l'énergie par module.

Procédure

  1. Créez un site PerformanceProfile adapté au matériel et à la topologie de l'environnement, comme décrit dans le tableau de la section "Comprendre les indices de charge de travail". Ajustez le profil pour qu'il corresponde à la charge de travail prévue. Dans cet exemple, nous réglons la latence pour qu'elle soit la plus faible possible.
  2. Ajoutez les indices de charge de travail highPowerConsumption et realTime. Les deux sont réglés sur true ici.

        apiVersion: performance.openshift.io/v2
        kind: PerformanceProfile
        metadata:
          name: workload-hints
        spec:
          ...
          workloadHints:
            highPowerConsumption: true 
    1
    
            realTime: true 
    2
    1
    Si highPowerConsumption est true, le nœud est réglé pour une latence très faible au prix d'une consommation d'énergie accrue.
    2
    Désactive certaines fonctions de débogage et de surveillance qui peuvent affecter la latence du système.

Les tâches génériques de maintenance et de charge de travail utilisent les CPU d'une manière qui peut avoir un impact sur les processus sensibles à la latence. Par défaut, le moteur d'exécution des conteneurs utilise tous les processeurs en ligne pour exécuter tous les conteneurs ensemble, ce qui peut entraîner des changements de contexte et des pics de latence. Le partitionnement des CPU empêche les processus bruyants d'interférer avec les processus sensibles à la latence en les séparant les uns des autres. Le tableau suivant décrit comment les processus s'exécutent sur une unité centrale après avoir réglé le nœud à l'aide de l'opérateur de réglage du nœud :

Expand
Tableau 14.3. Affectation de l'unité centrale du processus
Type de processusDétails

Burstable et BestEffort pods

Fonctionne sur n'importe quelle unité centrale, sauf en cas de charge de travail à faible latence

Pods d'infrastructure

Fonctionne sur n'importe quelle unité centrale, sauf en cas de charge de travail à faible latence

Interruptions

Redirections vers des CPU réservés (optionnel dans OpenShift Container Platform 4.7 et plus)

Processus du noyau

Broches vers les unités centrales réservées

Pods de charge de travail sensibles aux temps de latence

Pins vers un ensemble spécifique d'unités centrales exclusives du pool isolé

Processus du système d'exploitation/services Systemd

Broches vers les unités centrales réservées

La capacité allouable des cœurs sur un nœud pour les pods de tous les types de processus QoS, Burstable, BestEffort, ou Guaranteed, est égale à la capacité du pool isolé. La capacité du pool réservé est retirée de la capacité totale des cœurs du nœud pour être utilisée par le cluster et les tâches ménagères du système d'exploitation.

Exemple 1

Un nœud a une capacité de 100 cœurs. À l'aide d'un profil de performance, l'administrateur de la grappe alloue 50 cœurs au pool isolé et 50 cœurs au pool réservé. L'administrateur de cluster attribue 25 cœurs aux pods QoS Guaranteed et 25 cœurs aux pods BestEffort ou Burstable. Cela correspond à la capacité du pool isolé.

Exemple 2

Un nœud a une capacité de 100 cœurs. À l'aide d'un profil de performance, l'administrateur de la grappe alloue 50 cœurs au pool isolé et 50 cœurs au pool réservé. L'administrateur de cluster attribue 50 cœurs aux pods QoS Guaranteed et un cœur pour les pods BestEffort ou Burstable. La capacité du pool isolé est ainsi dépassée d'un cœur. La planification des pods échoue en raison d'une capacité insuffisante de l'unité centrale.

Le modèle de partitionnement exact à utiliser dépend de nombreux facteurs tels que le matériel, les caractéristiques de la charge de travail et la charge prévue du système. Voici quelques exemples de cas d'utilisation :

  • Si la charge de travail sensible à la latence utilise un matériel spécifique, tel qu'un contrôleur d'interface réseau (NIC), assurez-vous que les CPU du pool isolé sont aussi proches que possible de ce matériel. Au minimum, vous devez placer la charge de travail dans le même nœud NUMA (Non-Uniform Memory Access).
  • Le pool réservé est utilisé pour gérer toutes les interruptions. Lorsque vous dépendez du réseau du système, allouez un pool de réserve suffisamment grand pour gérer toutes les interruptions de paquets entrants. Dans la version 4.12 et les versions ultérieures, les charges de travail peuvent éventuellement être qualifiées de sensibles.

La décision concernant les unités centrales spécifiques à utiliser pour les partitions réservées et isolées nécessite une analyse et des mesures détaillées. Des facteurs tels que l'affinité NUMA des périphériques et de la mémoire jouent un rôle. La sélection dépend également de l'architecture de la charge de travail et du cas d'utilisation spécifique.

Important

Les pools de CPU réservés et isolés ne doivent pas se chevaucher et doivent couvrir tous les cœurs disponibles dans le nœud de travail.

Pour garantir que les tâches ménagères et les charges de travail n'interfèrent pas les unes avec les autres, spécifiez deux groupes de CPU dans la section spec du profil de performance.

  • isolated - Spécifie les unités centrales pour les charges de travail des conteneurs d'application. Ces unités centrales ont la latence la plus faible. Les processus de ce groupe n'ont pas d'interruptions et peuvent, par exemple, atteindre une bande passante DPDK sans perte de paquets beaucoup plus élevée.
  • reserved - Spécifie les unités centrales pour les tâches d'entretien du cluster et du système d'exploitation. Les threads du groupe reserved sont souvent occupés. N'exécutez pas d'applications sensibles aux temps de latence dans le groupe reserved. Les applications sensibles aux temps de latence sont exécutées dans le groupe isolated.

Procédure

  1. Créer un profil de performance adapté au matériel et à la topologie de l'environnement.
  2. Ajoutez les paramètres reserved et isolated avec les CPU que vous souhaitez réserver et isoler pour les conteneurs d'infrastructure et d'application :

    apiVersion: performance.openshift.io/v2
    kind: PerformanceProfile
    metadata:
      name: infra-cpus
    spec:
      cpu:
        reserved: "0-4,9" 
    1
    
        isolated: "5-8" 
    2
    
      nodeSelector: 
    3
    
        node-role.kubernetes.io/worker: ""
    1
    Spécifiez les unités centrales destinées aux conteneurs infra pour effectuer les tâches de maintenance du cluster et du système d'exploitation.
    2
    Spécifiez les unités centrales destinées aux conteneurs d'application pour l'exécution des charges de travail.
    3
    Facultatif : Spécifiez un sélecteur de nœuds pour appliquer le profil de performance à des nœuds spécifiques.
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

© 2026 Red Hat
Retour au début