Rechercher

6.2. Création d'un objet RuntimeClass pour encapsuler les mécanismes de planification

download PDF

L'utilisation d'un objet RuntimeClass simplifie l'utilisation de mécanismes de planification tels que les taints et les tolérances ; vous déployez une classe d'exécution qui encapsule vos taints et vos tolérances, puis vous l'appliquez à vos pods pour les planifier sur le nœud approprié. La création d'une classe d'exécution est également nécessaire dans les clusters qui prennent en charge plusieurs variantes de systèmes d'exploitation.

Procédure

  1. Créer un fichier YAML de l'objet RuntimeClass. Par exemple, runtime-class.yaml:

    apiVersion: node.k8s.io/v1beta1
    kind: RuntimeClass
    metadata:
      name: <runtime_class_name> 1
    handler: 'runhcs-wcow-process'
    scheduling:
      nodeSelector: 2
        kubernetes.io/os: 'windows'
        kubernetes.io/arch: 'amd64'
        node.kubernetes.io/windows-build: '10.0.17763'
      tolerations: 3
      - effect: NoSchedule
        key: os
        operator: Equal
        value: "Windows"
    1
    Spécifiez le nom de l'objet RuntimeClass, qui est défini dans les pods que vous souhaitez voir gérés par cette classe d'exécution.
    2
    Spécifie les étiquettes qui doivent être présentes sur les nœuds qui prennent en charge cette classe d'exécution. Les modules utilisant cette classe d'exécution ne peuvent être planifiés que sur un nœud correspondant à ce sélecteur. Le sélecteur de nœud de la classe d'exécution est fusionné avec le sélecteur de nœud existant du module. Tout conflit empêche la programmation du module sur le nœud.
    3
    Spécifier les tolérances à ajouter aux modules, à l'exclusion des doublons, fonctionnant avec cette classe d'exécution lors de l'admission. Cela combine l'ensemble des nœuds tolérés par le module et la classe d'exécution.
  2. Créer l'objet RuntimeClass:

    oc create -f <nom-de-fichier>.yaml

    Par exemple :

    $ oc create -f runtime-class.yaml
  3. Appliquez l'objet RuntimeClass à votre pod pour vous assurer qu'il est planifié sur la variante appropriée du système d'exploitation :

    apiVersion: v1
    kind: Pod
    metadata:
      name: my-windows-pod
    spec:
      runtimeClassName: <runtime_class_name> 1
    ...
    1
    Spécifiez la classe d'exécution pour gérer l'ordonnancement de votre module.
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.