從主機存取 E 系列目標的 NVMe Volume - Linux(NVMe over RoCE)
您可以根據所使用的作業系統(以及擴充多重路徑方法)、設定導向至裝置目標的I/O。
對於 RHEL 9、RHEL 10、SLES 15 和 SLES 16,原生 NVMe 多路徑解決方案管理主機顯示的單一 NVMe 裝置底層的實體路徑。因此,我們將 I/O 直接導向到主機的 NVMe 裝置,而不是像基於 SCSI 的 Device Mapper Multipath(DMMP)這樣的多路徑裝置。NVMe 裝置的位置詳見下文。
NVMe 裝置是 I/O 目標
-
輸入以下命令,以找出從 E-Series 陣列對應到此主機的磁碟區。
以下命令提供主機上的低階 NVMe 裝置位置、該裝置對應的陣列名稱、磁碟區名稱、NSID、唯一磁碟區 ID、目前擁有的控制器以及磁碟區大小。
# nvme netapp smdevices /dev/nvme0n1, Array Name creG63-FN, Volume Name 1, NSID 1, Volume ID 00001b7f606ec75100a0980000ed289e, Controller B, 1.10TB /dev/nvme0n2, Array Name creG63-FN, Volume Name 2, NSID 2, Volume ID 0000128a6a0d045500a0980000ed27f4, Controller A, 536.87GB /dev/nvme0n3, Array Name creG63-FN, Volume Name 3, NSID 3, Volume ID 00001b81606ec75b00a0980000ed289e, Controller B, 536.87GB /dev/nvme0n4, Array Name creG63-FN, Volume Name 4, NSID 4, Volume ID 0000128c6a0d045700a0980000ed27f4, Controller A, 214.75GB
-
對
/dev/disk/by-id/nvme-eui.[Volume ID#]中的鏈路執行 I/O。中的連結
/dev/disk/by-id/nvme-eui.[Volume ID#]`是確定性的,不會改變。請避免使用底層 NVMe 裝置位置 `(/dev/nvme[subsys#]n[id#]),因為它可能會改變。可以使用以下命令找到這兩個位置之間的連結:# ls /dev/disk/by-id/ -l lrwxrwxrwx 1 root root 13 May 19 15:07 nvme-eui.0000128a6a0d045500a0980000ed27f4 -> ../../nvme0n2 lrwxrwxrwx 1 root root 13 May 19 15:07 nvme-eui.0000128c6a0d045700a0980000ed27f4 -> ../../nvme0n4 lrwxrwxrwx 1 root root 13 May 19 15:07 nvme-eui.00001b7f606ec75100a0980000ed289e -> ../../nvme0n1 lrwxrwxrwx 1 root root 13 May 19 15:07 nvme-eui.00001b81606ec75b00a0980000ed289e -> ../../nvme0n3
-
若要查看 NVMe 裝置的路徑,請使用
nvme list-subsys指令。I/O 執行至
/dev/disk/by-id/nvme-eui.[uuid#]`將直接通過 `/dev/nvme[subsys#]n[id#]`,其下所有路徑均使用 Native NVMe 多路徑解決方案進行虛擬化。# nvme list-subsys /dev/nvme0n1 nvme-subsys0 - NQN=nqn.1992-08.com.netapp:EF80.600a098000ed28cb0000000062b24855 hostnqn=nqn.2014-08.org.nvmexpress:uuid:5257c202-9d94-ea11-b761-00000000003c \ +- nvme0 tcp traddr=10.10.10.101,trsvcid=4420,src_addr=10.10.10.100 live non-optimized +- nvme1 tcp traddr=10.10.10.11,trsvcid=4420,src_addr=10.10.10.100 live non-optimized +- nvme2 tcp traddr=10.10.20.201,trsvcid=4420,src_addr=10.10.20.200 live optimized +- nvme3 tcp traddr=10.10.20.21,trsvcid=4420,src_addr=10.10.20.200 live optimized +- nvme4 tcp traddr=10.10.20.39,trsvcid=4420,src_addr=10.10.20.200 live non-optimized +- nvme5 tcp traddr=10.10.20.31,trsvcid=4420,src_addr=10.10.20.200 live non-optimized +- nvme6 tcp traddr=10.10.10.49,trsvcid=4420,src_addr=10.10.10.100 live optimized +- nvme7 tcp traddr=10.10.10.41,trsvcid=4420,src_addr=10.10.10.100 live optimized -
選用 - 若要透過舊版 Device Mapper Multipath (DMMP) 命令檢視原生容錯移轉的路徑資訊,請使用
multipath -ll命令。#multipath -ll
若要透過舊版 DMMP 指令查看路徑資訊,必須在 /etc/multipath.conf檔案中設定以下內容:defaults { enable_foreign nvme }範例輸出
eui.0000a0335c05d57a00a0980000a5229d [nvme]:nvme0n9 NVMe,Netapp E- Series,08520001 size=4194304 features='n/a' hwhandler='ANA' wp=rw |-+- policy='n/a' prio=50 status=optimized | `- 0:0:1 nvme0c0n1 0:0 n/a optimized live `-+- policy='n/a' prio-10 status=non-optimized `- 0:1:1 nvme0c1n1 0:0 n/a non-optimized live
此指令僅適用於 RHEL 9 或更早版本以及 SLES 16 或更早版本。
在 I/O 執行至 NVMe 裝置時,"建立檔案系統"。