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.
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
Ouvrez un shell SSH distant vers l'hôte du cluster. Par exemple :
ssh core@<node_name>
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 scriptkubensenter
. Par exemple, pour exécuter la commandefindmnt
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 ...
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