访问虚拟设备目标(DM-MP 设备)的 NVMe 卷
对于 RHEL 7 和 SLES 12,Linux 主机将把 I/O 定向到虚拟设备目标。DM-MP 管理这些虚拟目标下的物理路径。
虚拟设备为 I/O 目标
请确保运行的 I/O 仅针对 DM MP 创建的虚拟设备,不针对物理设备路径。如果运行的 I/O 针对物理路径,则 DM MP 无法管理故障转移事件,因此 I/O 将失败。
可通过 dm 设备或 /dev/mapper 中的 symlink 访问这些块设备,例如:
/dev/dm-1
/dev/mapper/eui.00001bc7593b7f5f00a0980000af4462
示例
nvme list 命令的以下示例输出显示主机节点名称及其与命名空间标识的关系。
NODE SN MODEL NAMESPACE
/dev/nvme1n1 021648023072 Lenovo DE-Series 10
/dev/nvme1n2 021648023072 Lenovo DE-Series 11
/dev/nvme1n3 021648023072 Lenovo DE-Series 12
/dev/nvme1n4 021648023072 Lenovo DE-Series 13
/dev/nvme2n1 021648023151 Lenovo DE-Series 10
/dev/nvme2n2 021648023151 Lenovo DE-Series 11
/dev/nvme2n3 021648023151 Lenovo DE-Series 12
/dev/nvme2n4 021648023151 Lenovo DE-Series 13
列 | 描述 |
---|---|
Node | 节点名称中包含两部分:
|
Namespace | “命名空间”列中列举命名空间标识(NSID),这是存储阵列角度的标识。 |
在下面的 multipath -ll 输出中,优化过的路径在显示时 prio 值为 50,而未优化的路径在显示时 prio 值为 10。
Linux 操作系统将 I/O 路由到显示为 status=active 的路径组,而列出为 status=enabled 的路径组则可用于故障转移。
eui.00001bc7593b7f500a0980000af4462 dm-0 NVME,Lenovo DE-Series
size=15G features='1 queue_if_no_path' hwhandler='0' wp=rw
|-+- policy='service-time 0' prio=50 status=active
| `- #:#:#:# nvme1n1 259:5 active ready running
`-+- policy='service-time 0' prio=10 status=enabled
`- #:#:#:# nvme2n1 259:9 active ready running
eui.00001bc7593b7f5f00a0980000af4462 dm-0 NVME,Lenovo DE-Series
size=15G features='1 queue_if_no_path' hwhandler='0' wp=rw
|-+- policy='service-time 0' prio=0 status=enabled
| `- #:#:#:# nvme1n1 259:5 failed faulty running
`-+- policy='service-time 0' prio=10 status=active
`- #:#:#:# nvme2n1 259:9 active ready running
行项目 | 描述 |
---|---|
policy='service-time 0' prio=50 status=active | 此行和下面的行显示 nvme1n1(这是 NSID 为 10 的命名空间)在 prio 值为 50 且 status 值为 active 的路径上已经过优化。 此命名空间属于控制器 A。 |
policy='service-time 0' prio=10 status=enabled | 此行显示命名空间 10 的故障转移路径,其 prio 值为 10,status 值为 enabled。此时未在将 I/O 定向到该路径上的命名空间。 此命名空间属于控制器 B。 |
policy='service-time 0' prio=0 status=enabled | 此示例显示控制器 A 重新启动期间另一个时间点的 multipath -ll 输出。命名空间 10 的路径显示为 failed faulty running,且 prio 值为 0,status 值为 enabled。 |
policy='service-time 0' prio=10 status=active | 请注意,active 路径引用 nvme2,所以正在此路径上将 I/O 定向到控制器 B。 |