在 ESXi 环境中,每个存储设备由多个名称进行标识。
设备标识符
ESXi主机使用不同的算法和约定为每个存储设备生成标识符,具体取决于存储类型。
- 存储提供的标识符
-
ESXi 主机查询目标存储设备的设备名称。主机从返回的元数据中提取或生成设备的唯一标识符。该标识符基于特定存储标准,在所有主机之间具有唯一和持久性,且采用以下格式之一:
- naa.xxx
- eui.xxx
- t10.xxx
- 基于路径的标识符
-
如果设备未提供标识符,主机将生成 mpx.
path 名称,其中
path 代表设备的第一个路径,例如
mpx.vmhba1:C0:T1:L3。此标识符的使用方法可以与存储提供的标识符相同。
假设本地设备的路径名称唯一时,才会为其创建 mpx. path 标识符。但是,此标识符不是唯一的也不是永久的,并且每次系统重新启动后都会发生变化。
设备路径通常采用以下格式:
vmhbaAdapter:CChannel:TTarget:LLUN
- vmhbaAdapter 是存储适配器的名称。此名称指的是主机上的物理适配器,而不是由虚拟机使用的 SCSI 控制器。
- CChannel 是存储通道号。
软件 iSCSI 适配器和从属硬件适配器使用通道号来显示到同一目标的多个路径。
- TTarget 为目标号。目标编号由主机确定,对主机可见的目标的映射更改时,编号也可能更改。由不同主机共享的目标可能没有相同的目标号。
- LLUN 是显示目标中 LUN 位置的 LUN 号。LUN 号由存储系统提供。如果目标只有一个 LUN,则 LUN 号始终为零 (0)。
例如,vmhba1:C0:T3:L1 表示通过存储适配器 vmhba1 和通道 0 访问的目标 3 上的 LUN 1。
- 旧标识符
-
除了设备提供的标识符或 mpx.
Path 标识符,
ESXi 还会为每个设备生成一个备用的旧名称。标识符具有以下格式:
vml.number
旧标识符包含一系列对于设备唯一的数字。可以从通过 SCSI INQUIRY 命令获取的元数据部分派生出标识符。对于未提供 SCSI INQUIRY 标识符的非本地设备,使用 vml.number 标识符作为唯一可用的标识符。
在 vSphere CLI 中显示设备名称
您可以在 vSphere CLI 中使用 esxcli storage core device list 命令显示所有设备名称。输出与下例类似:
# esxcli storage core device list naa.XXX Display Name: DGC Fibre Channel Disk(naa.XXX) ... Other UIDs: vml.000XXX mpx.vmhba1:C0:T0:L0 Display Name: Local VMware Disk (mpx.vmhba1:C0:T0:L0) ... Other UIDs: vml.0000000000XYZ