在 Linux 主機上為 E 系列中的 NVMe over FC 設定故障轉移
若要提供儲存陣列的備援路徑、您可以設定主機執行容錯移轉。
您必須在系統上安裝所需的套件。
-
對於Red Hat(RHEL)主機、請執行「rpm -q device-mapper-multipath'來驗證套件是否已安裝
-
對於SLES主機、請執行「rpm -q多重路徑工具」來驗證套件是否已安裝
SLES 12 use Device Mapper Multipath (DMMP) for multipathing when using NVMe over Fibre Channel. RHEL 8, RHEL 9, RHEL 10, SLES 15 and SLES 16 use a built-in Native NVMe Failover. Depending on which OS you are running, some additional configuration of multipath is required to get it running properly.
為 SLES 12 啟用裝置映射器多路徑 (DMMP)
預設情況下,SLES 中會停用 DM-MP。完成以下步驟以在主機上啟用 DM-MP 元件。
-
將NVMe E系列裝置項目新增至/etc/multipath.conf檔案的「裝置」區段、如下列範例所示:
devices { device { vendor "NVME" product "NetApp E-Series*" path_grouping_policy group_by_prio failback immediate no_path_retry 30 } } -
將「multiPathd」設定為在系統開機時啟動。
# systemctl enable multipathd
-
如果當前未運行"multiPathd",請將其啓動。
# systemctl start multipathd
-
驗證「multiPathd」的狀態、以確保它處於作用中狀態且正在執行:
# systemctl status multipathd
為RHEL 8設定原生NVMe多路徑
原生NVMe多重路徑在RHEL 8中預設為停用、必須使用下列步驟啟用。
-
設定「modProbe」規則以開啟原生NVMe多路徑。
# echo "options nvme_core multipath=y" >> /etc/modprobe.d/50-nvme_core.conf
-
使用新的modProbe參數重新建立"initramfs"。
# dracut -f
-
重新開機伺服器以啟用原生NVMe多路徑來啟動伺服器
# reboot
-
驗證在主機開機備份後、原生NVMe多路徑功能已啟用。
# cat /sys/module/nvme_core/parameters/multipath
-
如果命令輸出為「N」、則原生NVMe多路徑仍會停用。
-
如果命令輸出為「Y」、則會啟用原生NVMe多路徑、您發現的任何NVMe裝置都會使用它。
-
|
|
對於 RHEL 9 和 SLES 15,預設已啟用原生 NVMe 多重路徑,無需額外組態。 |
設定 NVMe I/O 原則
Linux NVMe 原生多重路徑預設可能採用 numa I/O 原則。對於 E 系列 / EF 系列 NVMe-over-Fabrics 組態,建議的 I/O 原則為 round-robin,這會將 I/O 平均分配到所有可用路徑上。
-
驗證目前的 NVMe I/O 原則:
# cat /sys/module/nvme_core/parameters/iopolicy numa
-
使用下列其中一種方法來設定
round-robinI/O 原則:-
持久化(建議) — 建立 udev 規則檔案:
<code>/etc/udev/rules.d/71-nvme-io-policy.rules</code>ACTION=="add|change", SUBSYSTEM=="nvme-subsystem", ATTR{iopolicy}="round-robin"然後重新載入並套用規則:
udevadm control --reload udevadm trigger --subsystem-match=nvme-subsystem
-
開機時全域設定 — 將下列內核參數新增至您的開機載入程式組態:
nvme_core.iopolicy=round-robin
-
非持續性(線上,無 I/O 中斷) — 無需重新開機即可立即套用:
echo "round-robin" > /sys/class/nvme-subsystem/nvme-subsys0/iopolicy
此設定在重新開機後不會保留。
-