11.2. Configuration de l'encapsulation de l'espace de noms de montage


Vous pouvez configurer l'encapsulation de l'espace de noms de montage de manière à ce qu'un cluster fonctionne avec moins de ressources.

Note

L'encapsulation de l'espace de noms de montage est une fonctionnalité de l'aperçu technologique et elle est désactivée par défaut. Pour l'utiliser, vous devez l'activer manuellement.

Conditions préalables

  • Vous avez installé l'OpenShift CLI (oc).
  • Vous vous êtes connecté en tant qu'utilisateur avec les privilèges cluster-admin.

Procédure

  1. Créer un fichier appelé mount_namespace_config.yaml avec le YAML suivant :

    apiVersion: machineconfiguration.openshift.io/v1
    kind: MachineConfig
    metadata:
      labels:
        machineconfiguration.openshift.io/role: master
      name: 99-kubens-master
    spec:
      config:
        ignition:
          version: 3.2.0
        systemd:
          units:
          - enabled: true
            name: kubens.service
    ---
    apiVersion: machineconfiguration.openshift.io/v1
    kind: MachineConfig
    metadata:
      labels:
        machineconfiguration.openshift.io/role: worker
      name: 99-kubens-worker
    spec:
      config:
        ignition:
          version: 3.2.0
        systemd:
          units:
          - enabled: true
            name: kubens.service
  2. Appliquez l'espace de noms mount MachineConfig CR en exécutant la commande suivante :

    $ oc apply -f mount_namespace_config.yaml

    Exemple de sortie

    machineconfig.machineconfiguration.openshift.io/99-kubens-master created
    machineconfig.machineconfiguration.openshift.io/99-kubens-worker created

  3. La CR MachineConfig peut prendre jusqu'à 30 minutes pour finir d'être appliquée dans le cluster. Vous pouvez vérifier l'état de la CR MachineConfig en exécutant la commande suivante :

    $ oc get mcp

    Exemple de sortie

    NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
    master   rendered-master-03d4bc4befb0f4ed3566a2c8f7636751   False     True       False      3              0                   0                     0                      45m
    worker   rendered-worker-10577f6ab0117ed1825f8af2ac687ddf   False     True       False      3              1                   1

  4. Attendez que la CR MachineConfig soit appliquée avec succès sur tous les nœuds de plan de contrôle et de travail après l'exécution de la commande suivante :

    $ oc wait --for=condition=Updated mcp --all --timeout=30m

    Exemple de sortie

    machineconfigpool.machineconfiguration.openshift.io/master condition met
    machineconfigpool.machineconfiguration.openshift.io/worker condition met

Vérification

Pour vérifier l'encapsulation d'un hôte de cluster, exécutez les commandes suivantes :

  1. Ouvrez un shell de débogage sur l'hôte du cluster :

    oc debug node/<node_name>
  2. Ouvrez une session chroot:

    sh-4.4# chroot /host
  3. Vérifiez l'espace de noms de montage de systemd :

    sh-4.4# readlink /proc/1/ns/mnt

    Exemple de sortie

    mnt:[4026531953]

  4. Vérifier l'espace de noms du montage kubelet :

    sh-4.4# readlink /proc/$(pgrep kubelet)/ns/mnt

    Exemple de sortie

    mnt:[4026531840]

  5. Vérifiez l'espace de noms de la monture CRI-O :

    sh-4.4# readlink /proc/$(pgrep crio)/ns/mnt

    Exemple de sortie

    mnt:[4026531840]

Ces commandes renvoient les espaces de noms de montage associés à systemd, kubelet et à l'exécution du conteneur. Dans OpenShift Container Platform, l'exécution du conteneur est CRI-O.

L'encapsulation est effective si systemd se trouve dans un espace de noms de montage différent de kubelet et CRI-O, comme dans l'exemple ci-dessus. L'encapsulation n'est pas effective si les trois processus se trouvent dans le même espace de noms de montage.

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.