11.3. Inspection des espaces de noms encapsulés

Vous pouvez inspecter les points de montage spécifiques à Kubernetes dans le système d'exploitation hôte du cluster à des fins de débogage ou d'audit en utilisant le script kubensenter disponible dans Red Hat Enterprise Linux CoreOS (RHCOS).

Les sessions shell SSH vers l'hôte du cluster sont dans l'espace de noms par défaut. Pour inspecter les points de montage spécifiques à Kubernetes dans une invite du shell SSH, vous devez exécuter le script kubensenter en tant que root. Le script kubensenter est conscient de l'état de l'encapsulation du montage, et peut être exécuté en toute sécurité même si l'encapsulation n'est pas activée.

Note

oc debug les sessions shell distantes démarrent par défaut dans l'espace de noms Kubernetes. Vous n'avez pas besoin d'exécuter kubensenter pour inspecter les points de montage lorsque vous utilisez oc debug.

Si la fonction d'encapsulation n'est pas activée, les commandes kubensenter findmnt et findmnt produisent le même résultat, qu'elles soient exécutées dans une session oc debug ou dans une invite du shell SSH.

Conditions préalables

  • Vous avez installé l'OpenShift CLI (oc).
  • Vous vous êtes connecté en tant qu'utilisateur avec les privilèges cluster-admin.
  • Vous avez configuré l'accès SSH à l'hôte du cluster.

Procédure

  1. Ouvrez un shell SSH distant vers l'hôte du cluster. Par exemple :

    ssh core@<node_name>
  2. Exécutez les commandes à l'aide du script kubensenter fourni en tant qu'utilisateur root. Pour exécuter une commande unique dans l'espace de noms Kubernetes, fournissez la commande et les arguments éventuels au script kubensenter. Par exemple, pour exécuter la commande findmnt dans l'espace de noms Kubernetes, exécutez la commande suivante :

    [core@control-plane-1 ~]$ sudo kubensenter findmnt

    Exemple de sortie

    kubensenter: Autodetect: kubens.service namespace found at /run/kubens/mnt
    TARGET                                SOURCE                 FSTYPE     OPTIONS
    /                                     /dev/sda4[/ostree/deploy/rhcos/deploy/32074f0e8e5ec453e56f5a8a7bc9347eaa4172349ceab9c22b709d9d71a3f4b0.0]
    |                                                            xfs        rw,relatime,seclabel,attr2,inode64,logbufs=8,logbsize=32k,prjquota
                                          shm                    tmpfs
    ...

  3. Pour démarrer un nouveau shell interactif dans l'espace de noms Kubernetes, exécutez le script kubensenter sans aucun argument :

    [core@control-plane-1 ~]$ sudo kubensenter

    Exemple de sortie

    kubensenter: Autodetect: kubens.service namespace found at /run/kubens/mnt