硬件 HBA LUN
本节介绍管理 SAS、光纤通道和 iSCSI HBA 所需的各种操作。
基于硬件 HBA 的 LVM
基于硬件 HBA 的 LVM 类型将磁盘表示为卷组中的 VHD,该卷组创建在提供硬件 iSCSI 或 FC 支持的 HBA LUN 上。
XenServer® 主机通过 Emulex 或 QLogic 主机总线适配器 (HBA) 支持光纤通道 SAN。将光纤通道 LUN 暴露给主机所需的所有光纤通道配置都必须手动完成。此配置包括存储设备、网络设备以及 XenServer 主机内的 HBA。完成所有 FC 配置后,HBA 会将由 FC LUN 支持的 SCSI 设备暴露给主机。然后,SCSI 设备可用于访问 FC LUN,就像它是本地连接的 SCSI 设备一样。
使用 sr-probe 命令列出主机上存在的由 LUN 支持的 SCSI 设备。此命令会强制扫描新的由 LUN 支持的 SCSI 设备。sr-probe 为由 LUN 支持的 SCSI 设备返回的路径值在所有可访问该 LUN 的主机上都是一致的。因此,在创建资源池中所有主机都可访问的共享 SR 时,必须使用此值。
相同的功能也适用于 QLogic iSCSI HBA。
注意:
XenServer 对光纤通道的支持不支持将 LUN 直接映射到 VM。基于 HBA 的 LUN 必须映射到主机并指定用于 SR。SR 中的 VDI 作为标准块设备暴露给 VM。
基于 HBA LUN 的 LVM 的块大小必须为 512 字节。要使用具有 4 KB 物理块的存储,该存储还必须支持 512 字节分配块的仿真(逻辑块大小必须为 512 字节)。
删除基于 HBA 的 SAS、FC 或 iSCSI 设备条目
注意:
此步骤不是必需的。我们建议仅在必要时由高级用户执行此过程。
每个基于 HBA 的 LUN 在 /dev/disk/by-scsibus 下都有一个相应的全局设备路径条目,格式为 <SCSIid>-<adapter>:<bus>:<target>:<lun>,并在 /dev 下有一个标准设备路径。要删除不再用作 SR 的 LUN 的设备条目,请使用以下步骤:
-
根据需要使用
sr-forget或sr-destroy从 XenServer 主机数据库中删除 SR。有关详细信息,请参阅 删除 SR。 -
移除 SAN 中所需 LUN 到所需主机的分区配置。
-
使用
sr-probe命令确定要移除的 LUN 对应的 ADAPTER、BUS、TARGET 和 LUN 值。有关更多信息,请参阅 探测 SR。 -
使用以下命令移除设备条目:
echo "1" > /sys/class/scsi_device/adapter:bus:target:lun/device/delete <!--NeedCopy-->
警告:
确保您确定要移除哪个 LUN。意外移除主机操作所需的 LUN(例如引导或根设备)将导致主机无法使用。
共享 LVM 存储
共享 LVM 类型将磁盘表示为在 iSCSI(FC 或 SAS)LUN 上创建的卷组中的逻辑卷。
注意:
iSCSI LUN 的块大小必须为 512 字节。要使用具有 4 KB 物理块的存储,存储还必须支持 512 字节分配块的仿真(逻辑块大小必须为 512 字节)。
LVMoHBA SR 的设备配置参数:
| 参数名称 | 描述 | 必需? |
|---|---|---|
SCSIid |
设备 SCSI ID | 是 |
创建基于光纤通道/以太网光纤通道/iSCSI HBA 或 SAS SR 的共享 LVM
可以使用 xe CLI 或 XenCenter 创建和管理 LVMoHBA 类型的 SR。
xe CLI
要在池中的每个主机上创建共享 LVMoHBA SR,请执行以下步骤:
-
将一个或多个 LUN 区域化到池中的每个 XenServer 主机。此过程高度依赖于所使用的 SAN 设备。有关详细信息,请参阅您的 SAN 文档。
-
如有必要,请使用 BIOS 或固件中的第三方工具配置 HBA。
-
使用
sr-probe命令确定 HBA LUN 的全局设备路径。sr-probe命令强制重新扫描系统中安装的 HBA,以检测已区域化到主机的任何新 LUN。该命令返回找到的每个 LUN 的属性列表。指定host-uuid参数以确保在所需主机上进行探测。作为
<path>属性返回的全局设备路径在池中的所有主机上都是通用的。因此,在创建 SR 时,必须将此路径用作device-config:device参数的值。如果存在多个 LUN,请使用供应商、LUN 大小、LUN 序列号或
<path>属性中的 SCSI ID 来识别所需的 LUN。xe sr-probe type=lvmohba \ host-uuid=1212c7b3-f333-4a8d-a6fb-80c5b79b5b31 Error code: SR_BACKEND_FAILURE_90 Error parameters: , The request is missing the device parameter, \ <?xml version="1.0" ?> <Devlist> <BlockDevice> <path> /dev/disk/by-id/scsi-360a9800068666949673446387665336f </path> <vendor> HITACHI </vendor> <serial> 730157980002 </serial> <size> 80530636800 </size> <adapter> 4 </adapter> <channel> 0 </channel> <id> 4 </id> <lun> 2 </lun> <hba> qla2xxx </hba> </BlockDevice> <Adapter> <host> Host4 </host> <name> qla2xxx </name> <manufacturer> QLogic HBA Driver </manufacturer> <id> 4 </id> </Adapter> </Devlist> <!--NeedCopy--> -
在池协调器上,创建 SR。指定从
sr-probe的<path>属性中返回的全局设备路径。将自动为池中的每个主机创建并插入 PBD。xe sr-create host-uuid=valid_uuid \ content-type=user \ name-label="Example shared LVM over HBA SR" shared=true \ device-config:SCSIid=device_scsi_id type=lvmohba <!--NeedCopy-->
注意:
您可以使用 XenCenter 的“修复存储库”功能重试
sr-create操作的 PBD 创建和插入部分。当创建 SR 时,如果池中一个或多个主机的 LUN 区域化不正确,此功能会很有用。更正受影响主机的区域化,并使用“修复存储库”功能,而不是删除并重新创建 SR。
在 XenCenter 中
- 要打开新建存储库向导,您可以执行以下任一操作:
- 在工具栏上,选择新建存储。
- 在选定池或服务器的存储选项卡上,选择新建 SR。
- 在存储菜单上,选择新建 SR。
- 在资源窗格中,选择一个服务器或池,然后右键单击并在快捷菜单上选择新建 SR。
- 选择硬件 HBA 作为物理存储类型,然后选择下一步。
- 在名称页面上,输入新 SR 的名称。默认情况下,向导会生成 SR 的描述。此描述包含您在向导中选择的配置选项的摘要。要输入您自己的描述,请清除自动生成描述复选框并在描述框中键入。单击下一步继续到预配页面。
- 在预配页面上,选择预配类型。可用选项包括
- 精简预配 (GFS2)。此类型的预配仅在 GFS2 群集池上可用。有关 GFS2 群集的更多信息,请参阅更改池属性
- 完全预配 (LVM)
单击下一步继续到位置页面。
向导会扫描可用的 LUN,然后显示一个页面,其中列出所有找到的 LUN。从列表中选择一个 LUN,然后单击创建。
注意:
如果您选择的 LUN 上存在现有 SR,则会显示警告消息。查看详细信息并选择以下选项之一。
- 要使用现有项,请单击重新连接。
- 要删除现有 SR 并创建 SR,请点击 格式化。
- 如果您希望选择不同的 LUN,请点击 取消 并从列表中选择一个 LUN。
摘要 页面显示有关新 SR 的信息。阅读信息,然后点击 完成 以完成 SR 创建过程。