FC-NVMe ホストのマルチパス構成
Linux ホストをシステムに正常に接続するために、FC-NVMe マルチパス構成の推奨事項に従ってください。
ホストは、従来の Device Mapper または Native NVMe Multipath を使用するように構成できます。SCSI 装置の場合、ホストはいずれの場合にも Device Mapper を引き続き使用します。Native NVMe Multipath は、SLES12SP4 および SLES15 でのみサポートされます。Native NVME Multipath は、Red Hat Enterprise Linux ではサポートされません。Native NVMe Multipath は NVMe ANA (SCSI ALUA に等しい NVMe) をサポートしますが、Device Mapper は現在、ANA をサポートしません。Native NVMe Multipath では、すべての名前空間が 1 つのインスタンスとして表示されます。
Native NVMe Multipath をオンまたはオフにする
SLES15 では、Native NVMe Multipath はデフォルトでオンになります。SLES12SP4 では、Native NVMe Multipath はデフォルトでオンになりません。
Native NVMe Multipath がオンであるかどうかを確認するには、次のように入力します。
# systool -m nvme_core -A multipath
Module = "nvme_core"
multipath = "Y"
multipath = "N" のときに、オンにする場合は、次のように入力します。
echo "options nvme_core multipath=Y" > /etc/modprobe.d/50-nvme_core.conf
dracut -f
リブート
Device Mapper を使用することを選択した場合は、次のように入力します。
echo "options nvme_core multipath=N" > /etc/modprobe.d/50-nvme_core.conf
dracut -f
リブートDevice Mapper または Native NVMe Multipath 構成
マルチパス構成ファイルの構成には、Device Mapper と Native NVMe Multipath の 2 つのフレームワーク・オプションがあります。
Device Mapper を構成するには、以下の手順を実行します。
- 以下のコードが含まれるように、/etc/multipath.conf ファイルを編集します。
devices { device { vendor "NVME" product "IBM 2145" path_grouping_policy "multibus" path_selector "round-robin 0" prio "const" path_checker "none" failback "immediate" no_path_retry "queue" rr_weight uniform rr_min_io_rq "1" fast_io_fail_tmo 15 dev_loss_tmo 600 } } defaults { user_friendly_names yes path_grouping_policy group_by_prio } - 次のコマンドを実行して、マルチパス・デーモンが実行中であることを確認します。
systemctl enable multipathd.service systemctl start multipathd.service # ps -ef | grep -v grep | grep multipath root 1616 1 0 Nov21 ? 00:01:14 /sbin/multipathd -d -sSLES12SP4 のマルチパス・サービスを有効にした後、マルチパス・サポートを使用して initrd を再作成します。dracut --force --add multipath - 次のコマンドを実行して、構成を適用します。
multipath -F マルチパス multipath -ll
Native NVMe Multipath を使用する場合は、以下のコードをマルチパス構成ファイルに追加します。
blacklist {
device {
vendor "NVME"
product "IBM\s+2145"
}
}
Device Mapper のパフォーマンス
以下のステップで説明されているように、マルチキュー入出力のスケジューリングを使用するときにパフォーマンスが優れていることがテストで示されます。
注: 以下の手順を適用する前に、SUSE の担当者に連絡して、このオプションがサポートされていることを確認してください。
パフォーマンスを向上させるために、blk-mq (SLES の場合) を使用してマルチキュー入出力スケジューリングを適用します。
- /etc/default/grub ファイルおよび次のテキストを編集します。
GRUB_CMDLINE_LINUX_DEFAULT="BOOTPTimeout=20 BootpWait=20 biosdevname=0 powersaved=off resume=/dev/system/swap splash=silent quiet showopts crashkernel=175M,high dm_mod.use_blk_mq=y scsi_mod.use_blk_mq=1 transparent_hugepage=never" - 新しい構成を適用します。
swfc178:~ # grub2-mkconfig -o /boot/grub2/grub.cfg Generating grub configuration file ... Found theme: /boot/grub2/themes/SLE/theme.txt Found linux image: /boot/vmlinuz-4.12.14-25.19-default Found initrd image: /boot/initrd-4.12.14-25.19-default Found linux image: /boot/vmlinuz-4.12.14-23-default Found initrd image: /boot/initrd-4.12.14-23-default done - リブートします。
- マルチパスでマルチキュー機能が有効になっていることを確認します。
mpatho (eui.880000000000000b0050760071c60044) dm-3 NVME,IBM 2145 size=1.5G features='3 queue_if_no_path queue_mode mq' hwhandler='0' wp=rw