4.3. Activation du multipathing NVMe natif
Si le multipathing NVMe natif est désactivé, vous pouvez l'activer à l'aide de la solution suivante.
Conditions préalables
- Les périphériques NVMe sont connectés à votre système. Pour plus d'informations, voir Vue d'ensemble des périphériques NVMe over fabric.
Procédure
Vérifier si le multipathing NVMe natif est activé dans le noyau :
# cat /sys/module/nvme_core/parameters/multipath
La commande affiche l'un des éléments suivants :
N
- Le multipathing NVMe natif est désactivé.
Y
- Le multipathing NVMe natif est activé.
Si le multipathing NVMe natif est désactivé, activez-le en utilisant l'une des méthodes suivantes :
Utilisation d'une option du noyau :
Supprime l'option
nvme_core.multipath=N
de la ligne de commande du noyau :# grubby --update-kernel=ALL --remove-args="nvme_core.multipath=N"
Sur l'architecture IBM Z 64 bits, mettez à jour le menu de démarrage :
# zipl
- Redémarrer le système.
Utilisation d'un fichier de configuration du module du noyau :
Supprimez le fichier de configuration
/etc/modprobe.d/nvme_core.conf
:# rm /etc/modprobe.d/nvme_core.conf
Sauvegarder le fichier
initramfs
:# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date %m-\r%H%M%S).img
Reconstruire le site
initramfs
:# dracut --force --verbose
- Redémarrer le système.
Facultatif : Sur le système en cours d'exécution, modifiez la stratégie d'E/S sur les périphériques NVMe afin de répartir les E/S sur tous les chemins disponibles :
# echo "round-robin" > /sys/class/nvme-subsystem/nvme-subsys0/iopolicy
Facultatif : Définissez la politique d'E/S de manière persistante à l'aide des règles
udev
. Créez le fichier/etc/udev/rules.d/71-nvme-io-policy.rules
avec le contenu suivant :ACTION=="add|change", SUBSYSTEM=="nvme-subsystem", ATTR{iopolicy}="round-robin"
Vérification
Vérifiez que votre système reconnaît les périphériques NVMe. L'exemple suivant suppose que vous avez un sous-système de stockage NVMe over fabrics connecté avec deux espaces de noms NVMe :
# nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 a34c4f3a0d6f5cec Linux 1 250.06 GB / 250.06 GB 512 B + 0 B 4.18.0-2 /dev/nvme0n2 a34c4f3a0d6f5cec Linux 2 250.06 GB / 250.06 GB 512 B + 0 B 4.18.0-2
Liste de tous les sous-systèmes NVMe connectés :
# nvme list-subsys nvme-subsys0 - NQN=testnqn \ +- nvme0 fc traddr=nn-0x20000090fadd597a:pn-0x10000090fadd597a host_traddr=nn-0x20000090fac7e1dd:pn-0x10000090fac7e1dd live +- nvme1 fc traddr=nn-0x20000090fadd5979:pn-0x10000090fadd5979 host_traddr=nn-0x20000090fac7e1dd:pn-0x10000090fac7e1dd live +- nvme2 fc traddr=nn-0x20000090fadd5979:pn-0x10000090fadd5979 host_traddr=nn-0x20000090fac7e1de:pn-0x10000090fac7e1de live +- nvme3 fc traddr=nn-0x20000090fadd597a:pn-0x10000090fadd597a host_traddr=nn-0x20000090fac7e1de:pn-0x10000090fac7e1de live
Vérifiez le type de transport actif. Par exemple,
nvme0 fc
indique que l'appareil est connecté via le transport Fibre Channel, etnvme tcp
indique que l'appareil est connecté via TCP.Si vous avez modifié les options du noyau, vérifiez si le multipathing NVMe natif est activé sur la ligne de commande du noyau :
# cat /proc/cmdline BOOT_IMAGE=[...] nvme_core.multipath=Y
Si vous avez modifié la stratégie d'E/S, vérifiez que
round-robin
est la stratégie d'E/S active sur les périphériques NVMe :# cat /sys/class/nvme-subsystem/nvme-subsys0/iopolicy round-robin
Ressources supplémentaires