Rechercher

5.4. Déploiement de l'ordonnanceur de pods secondaire NUMA-aware

download PDF

Après avoir installé l'opérateur de ressources NUMA, procédez comme suit pour déployer le planificateur de pods secondaire compatible NUMA :

  • Configurer la politique d'admission des pods pour le profil de machine requis
  • Créer le pool de configuration machine requis
  • Déployer l'ordonnanceur secondaire compatible NUMA

Conditions préalables

  • Installez le CLI OpenShift (oc).
  • Connectez-vous en tant qu'utilisateur disposant des privilèges cluster-admin.
  • Installer l'opérateur de ressources NUMA.

Procédure

  1. Créez la ressource personnalisée KubeletConfig qui configure la politique d'admission des pods pour le profil de la machine :

    1. Enregistrez le YAML suivant dans le fichier nro-kubeletconfig.yaml:

      apiVersion: machineconfiguration.openshift.io/v1
      kind: KubeletConfig
      metadata:
        name: cnf-worker-tuning
      spec:
        machineConfigPoolSelector:
          matchLabels:
            cnf-worker-tuning: enabled
        kubeletConfig:
          cpuManagerPolicy: "static" 1
          cpuManagerReconcilePeriod: "5s"
          reservedSystemCPUs: "0,1"
          memoryManagerPolicy: "Static" 2
          evictionHard:
            memory.available: "100Mi"
          kubeReserved:
            memory: "512Mi"
          reservedMemory:
            - numaNode: 0
              limits:
                memory: "1124Mi"
          systemReserved:
            memory: "512Mi"
          topologyManagerPolicy: "single-numa-node" 3
          topologyManagerScope: "pod"
      1
      Pour cpuManagerPolicy, static doit utiliser une minuscule s.
      2
      Pour memoryManagerPolicy, Static doit utiliser une majuscule S.
      3
      topologyManagerPolicy doit être réglé sur single-numa-node.
    2. Créez la ressource personnalisée (CR) KubeletConfig en exécutant la commande suivante :

      $ oc create -f nro-kubeletconfig.yaml
  2. Créer la ressource personnalisée NUMAResourcesScheduler qui déploie le planificateur de pods personnalisé NUMA-aware :

    1. Enregistrez le YAML suivant dans le fichier nro-scheduler.yaml:

      apiVersion: nodetopology.openshift.io/v1alpha1
      kind: NUMAResourcesScheduler
      metadata:
        name: numaresourcesscheduler
      spec:
        imageSpec: "registry.redhat.io/openshift4/noderesourcetopology-scheduler-container-rhel8:v4.12"
    2. Créez le CR NUMAResourcesScheduler en exécutant la commande suivante :

      $ oc create -f nro-scheduler.yaml

Vérification

Vérifiez que les ressources requises ont été déployées avec succès en exécutant la commande suivante :

$ oc get all -n openshift-numaresources

Exemple de sortie

NAME                                                    READY   STATUS    RESTARTS   AGE
pod/numaresources-controller-manager-7575848485-bns4s   1/1     Running   0          13m
pod/numaresourcesoperator-worker-dvj4n                  2/2     Running   0          16m
pod/numaresourcesoperator-worker-lcg4t                  2/2     Running   0          16m
pod/secondary-scheduler-56994cf6cf-7qf4q                1/1     Running   0          16m
NAME                                          DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                     AGE
daemonset.apps/numaresourcesoperator-worker   2         2         2       2            2           node-role.kubernetes.io/worker=   16m
NAME                                               READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/numaresources-controller-manager   1/1     1            1           13m
deployment.apps/secondary-scheduler                1/1     1            1           16m
NAME                                                          DESIRED   CURRENT   READY   AGE
replicaset.apps/numaresources-controller-manager-7575848485   1         1         1       13m
replicaset.apps/secondary-scheduler-56994cf6cf                1         1         1       16m

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.

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 leBlog 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.

© 2024 Red Hat, Inc.