17.3. NVMe デバイスでの DM Multipath の有効化
ネイティブ NVMe マルチパスを無効にすることで、接続された NVMe デバイスで DM マルチパスを有効にできます。
前提条件
- NVMe デバイスがシステムに接続されていることを確認します。詳細は、NVMe over fabric デバイスの概要 を参照してください。
手順
ネイティブ NVMe マルチパスが無効になっているかどうかを確認します。
cat /sys/module/nvme_core/parameters/multipath
# cat /sys/module/nvme_core/parameters/multipath
Copy to Clipboard Copied! コマンドは以下のいずれかを表示します。
N
- ネイティブ NVMe マルチパスは無効です。
Y
- ネイティブ NVMe マルチパスは有効です。
ネイティブ NVMe マルチパスが有効になっている場合は、次のいずれかの方法を使用して無効にします。
カーネルオプションの使用
カーネルのコマンドラインから
nvme_core.multipath=Y
オプションを削除しました。grubby --update-kernel=ALL --remove-args="nvme_core.multipath=Y"
# grubby --update-kernel=ALL --remove-args="nvme_core.multipath=Y"
Copy to Clipboard Copied! 64 ビットの IBM Z アーキテクチャーでは、ブートメニューを更新します。
zipl
# zipl
Copy to Clipboard Copied! - システムを再起動します。
カーネルモジュール設定ファイルの使用
-
/etc/modprobe.d/nvme_core.conf
ファイルにnvme_core multipath=Y
オプションの行が存在する場合は、それを削除します。 initramfs
ファイルをバックアップします。cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m%d-%H%M%S).img
# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m%d-%H%M%S).img
Copy to Clipboard Copied! initramfs
を再構築します。cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m-%d-%H%M%S).img dracut --force --verbose
# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m-%d-%H%M%S).img # dracut --force --verbose
Copy to Clipboard Copied! - システムを再起動します。
-
DM マルチパスを有効にします。
systemctl enable --now multipathd.service
# systemctl enable --now multipathd.service
Copy to Clipboard Copied! 利用可能なすべてのパスに I/O を分配します。
/etc/multipath.conf
ファイルに以下の内容を追加します。devices { device { vendor "NVME" product ".*" path_grouping_policy group_by_prio } }
devices { device { vendor "NVME" product ".*" path_grouping_policy group_by_prio } }
Copy to Clipboard Copied! 注記DM Multipath が NVMe デバイスを管理する場合、
/sys/class/nvme-subsystem/nvme-subsys0/iopolicy
設定ファイルは I/O ディストリビューションには影響を与えません。設定の変更を適用するために、
multipathd
サービスをリロードします。multipath -r
# multipath -r
Copy to Clipboard Copied!
検証
ネイティブ NVMe マルチパスが無効になっているかどうかを確認します。
cat /sys/module/nvme_core/parameters/multipath N
# cat /sys/module/nvme_core/parameters/multipath N
Copy to Clipboard Copied! DM Multipath が NVMe デバイスを認識しているかどうかを確認します。
multipath -l
# multipath -l eui.00007a8962ab241100a0980000d851c8 dm-6 NVME,NetApp E-Series size=20G features='0' hwhandler='0' wp=rw `-+- policy='service-time 0' prio=0 status=active |- 0:10:2:2 nvme0n2 259:3 active undef running `-+- policy='service-time 0' prio=0 status=enabled |- 4:11:2:2 nvme4n2 259:28 active undef running `-+- policy='service-time 0' prio=0 status=enabled |- 5:32778:2:2 nvme5n2 259:38 active undef running `-+- policy='service-time 0' prio=0 status=enabled |- 6:32779:2:2 nvme6n2 259:44 active undef running
Copy to Clipboard Copied!