3.10. Ordonnanceur secondaire


3.10.1. Vue d'ensemble de l'ordonnanceur secondaire

Vous pouvez installer l'opérateur de planification secondaire pour exécuter un planificateur secondaire personnalisé parallèlement au planificateur par défaut afin de planifier les pods.

3.10.1.1. À propos de l'opérateur de planification secondaire

L'opérateur de planificateur secondaire pour Red Hat OpenShift permet de déployer un planificateur secondaire personnalisé dans OpenShift Container Platform. Le planificateur secondaire s'exécute en même temps que le planificateur par défaut pour planifier les pods. Les configurations des pods peuvent spécifier le planificateur à utiliser.

Le planificateur personnalisé doit avoir le binaire /bin/kube-scheduler et être basé sur le cadre de planification Kubernetes.

Important

Vous pouvez utiliser l'opérateur de planificateur secondaire pour déployer un planificateur secondaire personnalisé dans OpenShift Container Platform, mais Red Hat ne prend pas directement en charge la fonctionnalité du planificateur secondaire personnalisé.

L'opérateur d'ordonnancement secondaire crée les rôles par défaut et les liaisons de rôles nécessaires à l'ordonnateur secondaire. Vous pouvez spécifier les plugins de planification à activer ou à désactiver en configurant la ressource KubeSchedulerConfiguration pour l'ordonnanceur secondaire.

3.10.2. Notes de publication de Secondary Scheduler Operator pour Red Hat OpenShift

L'opérateur de planificateur secondaire pour Red Hat OpenShift vous permet de déployer un planificateur secondaire personnalisé dans votre cluster OpenShift Container Platform.

Ces notes de version suivent le développement de l'opérateur d'ordonnancement secondaire pour Red Hat OpenShift.

Pour plus d'informations, voir À propos de l'opérateur de planification secondaire.

3.10.2.1. Notes de version pour Secondary Scheduler Operator pour Red Hat OpenShift 1.1.0

Publié : 2022-9-1

L'avis suivant est disponible pour le Secondary Scheduler Operator pour Red Hat OpenShift 1.1.0 :

3.10.2.1.1. Nouvelles fonctionnalités et améliorations
3.10.2.1.2. Problèmes connus
  • Actuellement, vous ne pouvez pas déployer de ressources supplémentaires, telles que des cartes de configuration, des CRD ou des stratégies RBAC par l'intermédiaire de l'opérateur de planification secondaire. Toutes les ressources autres que les rôles et les liaisons de rôles requises par votre planificateur secondaire personnalisé doivent être appliquées en externe. (BZ#2071684)

3.10.3. Ordonnancement de pods à l'aide d'un ordonnanceur secondaire

Vous pouvez exécuter un planificateur secondaire personnalisé dans OpenShift Container Platform en installant l'opérateur de planificateur secondaire, en déployant le planificateur secondaire et en définissant le planificateur secondaire dans la définition du pod.

3.10.3.1. Installation de l'opérateur de planification secondaire

Vous pouvez utiliser la console web pour installer l'opérateur de planification secondaire pour Red Hat OpenShift.

Conditions préalables

  • Vous avez accès au cluster avec les privilèges cluster-admin.
  • Vous avez accès à la console web de OpenShift Container Platform.

Procédure

  1. Connectez-vous à la console web de OpenShift Container Platform.
  2. Créez l'espace de noms requis pour l'opérateur de planification secondaire pour Red Hat OpenShift.

    1. Naviguez jusqu'à Administration Namespaces et cliquez sur Create Namespace.
    2. Saisissez openshift-secondary-scheduler-operator dans le champ Name et cliquez sur Create.
  3. Installez l'opérateur de planification secondaire pour Red Hat OpenShift.

    1. Naviguez jusqu'à Operators OperatorHub.
    2. Saisissez Secondary Scheduler Operator for Red Hat OpenShift dans le champ de filtre.
    3. Sélectionnez le site Secondary Scheduler Operator for Red Hat OpenShift et cliquez sur Install.
    4. Sur la page Install Operator:

      1. Le site Update channel est défini sur stable, ce qui installe la dernière version stable du Secondary Scheduler Operator pour Red Hat OpenShift.
      2. Sélectionnez A specific namespace on the cluster et sélectionnez openshift-secondary-scheduler-operator dans le menu déroulant.
      3. Sélectionnez une stratégie Update approval.

        • La stratégie Automatic permet à Operator Lifecycle Manager (OLM) de mettre automatiquement à jour l'opérateur lorsqu'une nouvelle version est disponible.
        • La stratégie Manual exige qu'un utilisateur disposant des informations d'identification appropriées approuve la mise à jour de l'opérateur.
      4. Cliquez sur Install.

Vérification

  1. Naviguez jusqu'à Operators Installed Operators.
  2. Vérifiez que Secondary Scheduler Operator for Red Hat OpenShift est répertorié avec Status de Succeeded.

3.10.3.2. Déploiement d'un planificateur secondaire

Après avoir installé l'opérateur de planification secondaire, vous pouvez déployer un planificateur secondaire.

Conditions préalables

  • Vous avez accès au cluster avec les privilèges cluster-admin.
  • Vous avez accès à la console web de OpenShift Container Platform.
  • L'opérateur de planificateur secondaire pour Red Hat OpenShift est installé.

Procédure

  1. Connectez-vous à la console web de OpenShift Container Platform.
  2. Créer une carte de configuration pour contenir la configuration de l'ordonnanceur secondaire.

    1. Naviguez jusqu'à Workloads ConfigMaps.
    2. Cliquez sur Create ConfigMap.
    3. Dans l'éditeur YAML, entrez la définition de la carte de configuration qui contient la configuration nécessaire de KubeSchedulerConfiguration. Par exemple :

      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: "secondary-scheduler-config"                  1
        namespace: "openshift-secondary-scheduler-operator" 2
      data:
        "config.yaml": |
          apiVersion: kubescheduler.config.k8s.io/v1beta3
          kind: KubeSchedulerConfiguration                  3
          leaderElection:
            leaderElect: false
          profiles:
            - schedulerName: secondary-scheduler            4
              plugins:                                      5
                score:
                  disabled:
                    - name: NodeResourcesBalancedAllocation
                    - name: NodeResourcesLeastAllocated
      1
      Le nom de la carte de configuration. Il est utilisé dans le champ Scheduler Config lors de la création du CR SecondaryScheduler.
      2
      La carte de configuration doit être créée dans l'espace de noms openshift-secondary-scheduler-operator.
      3
      La ressource KubeSchedulerConfiguration pour l'ordonnanceur secondaire. Pour plus d'informations, voir KubeSchedulerConfiguration dans la documentation de l'API Kubernetes.
      4
      Nom de l'ordonnanceur secondaire. Les pods dont le champ spec.schedulerName contient cette valeur sont planifiés avec cet ordonnanceur secondaire.
      5
      Les plugins à activer ou désactiver pour l'ordonnanceur secondaire. Pour une liste des plugins d'ordonnancement par défaut, voir Scheduling plugins dans la documentation Kubernetes.
    4. Cliquez sur Create.
  3. Créer le CR SecondaryScheduler:

    1. Naviguez jusqu'à Operators Installed Operators.
    2. Sélectionnez Secondary Scheduler Operator for Red Hat OpenShift.
    3. Sélectionnez l'onglet Secondary Scheduler et cliquez sur Create SecondaryScheduler.
    4. La valeur par défaut du champ Name est cluster; ne modifiez pas ce nom.
    5. Le champ Scheduler Config a pour valeur par défaut secondary-scheduler-config. Assurez-vous que cette valeur correspond au nom de la carte de configuration créée plus tôt dans cette procédure.
    6. Dans le champ Scheduler Image, saisissez le nom de l'image de votre programmateur personnalisé.

      Important

      Red Hat ne prend pas directement en charge la fonctionnalité de votre planificateur secondaire personnalisé.

    7. Cliquez sur Create.

3.10.3.3. Programmation d'un pod à l'aide de l'ordonnanceur secondaire

Pour planifier un pod à l'aide du planificateur secondaire, définissez le champ schedulerName dans la définition du pod.

Conditions préalables

  • Vous avez accès au cluster avec les privilèges cluster-admin.
  • Vous avez accès à la console web de OpenShift Container Platform.
  • L'opérateur de planificateur secondaire pour Red Hat OpenShift est installé.
  • Un planificateur secondaire est configuré.

Procédure

  1. Connectez-vous à la console web de OpenShift Container Platform.
  2. Navigate to Workloads Pods.
  3. Cliquez sur Create Pod.
  4. Dans l'éditeur YAML, entrez la configuration de pod souhaitée et ajoutez le champ schedulerName:

    apiVersion: v1
    kind: Pod
    metadata:
      name: nginx
      namespace: default
    spec:
      containers:
        - name: nginx
          image: nginx:1.14.2
          ports:
            - containerPort: 80
      schedulerName: secondary-scheduler 1
    1
    Le champ schedulerName doit correspondre au nom défini dans la carte de configuration lorsque vous avez configuré l'ordonnanceur secondaire.
  5. Cliquez sur Create.

Vérification

  1. Connectez-vous à l'interface CLI d'OpenShift.
  2. Décrivez le pod à l'aide de la commande suivante :

    $ oc describe pod nginx -n default

    Exemple de sortie

    Name:         nginx
    Namespace:    default
    Priority:     0
    Node:         ci-ln-t0w4r1k-72292-xkqs4-worker-b-xqkxp/10.0.128.3
    ...
    Events:
      Type    Reason          Age   From                 Message
      ----    ------          ----  ----                 -------
      Normal  Scheduled       12s   secondary-scheduler  Successfully assigned default/nginx to ci-ln-t0w4r1k-72292-xkqs4-worker-b-xqkxp
    ...

  3. Dans le tableau des événements, recherchez l'événement dont le message est similaire à Successfully assigned <namespace>/<pod_name> to <node_name>.
  4. Dans la colonne "From", vérifiez que l'événement a été généré par le planificateur secondaire et non par le planificateur par défaut.

    Note

    Vous pouvez également consulter les journaux de pods de secondary-scheduler-* dans openshift-secondary-scheduler-namespace pour vérifier que le pod a été planifié par le planificateur secondaire.

3.10.4. Désinstallation de l'opérateur de planification secondaire

Vous pouvez supprimer l'opérateur Secondary Scheduler Operator for Red Hat OpenShift de OpenShift Container Platform en désinstallant l'opérateur et en supprimant ses ressources associées.

3.10.4.1. Désinstallation de l'opérateur de planification secondaire

Vous pouvez désinstaller l'opérateur de planification secondaire pour Red Hat OpenShift à l'aide de la console web.

Conditions préalables

  • Vous avez accès au cluster avec les privilèges cluster-admin.
  • Vous avez accès à la console web de OpenShift Container Platform.
  • L'opérateur de planificateur secondaire pour Red Hat OpenShift est installé.

Procédure

  1. Connectez-vous à la console web de OpenShift Container Platform.
  2. Désinstallez l'opérateur de planification secondaire pour Red Hat OpenShift Operator.

    1. Naviguez jusqu'à Operators Installed Operators.
    2. Cliquez sur le menu Options kebab à côté de l'entrée Secondary Scheduler Operator et cliquez sur Uninstall Operator.
    3. Dans la boîte de dialogue de confirmation, cliquez sur Uninstall.

3.10.4.2. Suppression des ressources de l'opérateur de planification secondaire

En option, après avoir désinstallé l'opérateur de planificateur secondaire pour Red Hat OpenShift, vous pouvez supprimer ses ressources connexes de votre cluster.

Conditions préalables

  • Vous avez accès au cluster avec les privilèges cluster-admin.
  • Vous avez accès à la console web de OpenShift Container Platform.

Procédure

  1. Connectez-vous à la console web de OpenShift Container Platform.
  2. Supprimez les CRD qui ont été installés par l'opérateur de planification secondaire :

    1. Naviguez jusqu'à Administration CustomResourceDefinitions.
    2. Saisissez SecondaryScheduler dans le champ Name pour filtrer les CRD.
    3. Cliquez sur le menu Options kebab à côté du CRD SecondaryScheduler et sélectionnez Delete Custom Resource Definition:
  3. Supprimer l'espace de noms openshift-secondary-scheduler-operator.

    1. Naviguez jusqu'à Administration Namespaces.
    2. Cliquez sur le menu Options kebab à côté de openshift-secondary-scheduler-operator et sélectionnez Delete Namespace.
    3. Dans la boîte de dialogue de confirmation, saisissez openshift-secondary-scheduler-operator dans le champ et cliquez sur Delete.
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.