硬件 HBA LUN

Last published : Oct 07, 2026
本节介绍管理 SAS、光纤通道和 iSCSI HBA 所需的各种操作。

基于硬件 HBA 的 LVM

基于硬件 HBA 的 LVM 类型将磁盘表示为逻辑卷上的 VHD,这些逻辑卷位于在 HBA LUN 上创建的卷组中,该 HBA LUN 例如提供基于硬件的 iSCSI 或 FC 支持。
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 的设备条目,请使用以下步骤:
  1. 根据需要使用 sr-forget 或 sr-destroy 从 XenServer 主机数据库中删除 SR。有关详细信息,请参阅 删除 SR。
  2. 移除 SAN 中所需 LUN 到所需主机的分区配置。
  3. 使用 sr-probe 命令确定要移除的 LUN 对应的 ADAPTER、BUS、TARGET 和 LUN 值。有关更多信息,请参阅 探测 SR。
  4. 使用以下命令移除设备条目:
    echo "1" > /sys/class/scsi_device/adapter:bus:target:lun/device/delete
警告:
确保您确定要移除哪个 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,请在池中的每个主机上执行以下步骤:
  1. 将一个或多个 LUN 区域化到池中的每个 XenServer 主机。此过程高度依赖于所使用的 SAN 设备。有关详细信息,请参阅您的 SAN 文档。
  2. 如有必要,请使用第三方工具在 BIOS 或固件中配置 HBA。
    • 有关配置 QLogic 光纤通道和 iSCSI HBA 的信息,请参阅 Marvell 网站。
    • 有关配置 Emulex 光纤通道 HBA 的信息,请参阅 Broadcom 网站。
  3. 使用 sr-probe 命令确定 HBA LUN 的全局设备路径。sr-probe 命令强制系统中的 HBA 重新扫描,以检测已区域化到主机的任何新 LUN。该命令返回找到的每个 LUN 的属性列表。指定 host-uuid 参数以确保在所需主机上进行探测。
    作为 <path> 属性返回的全局设备路径在池中的所有主机上都是通用的。因此,在创建 SR 时,必须将此路径用作 device-config:device 参数的值。
    如果存在多个 LUN,请使用 <path> 属性中的供应商、LUN 大小、LUN 序列号或 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>
  4. 在池协调器上,创建 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
注意:
您可以使用 XenCenter 的“修复存储库”功能重试 sr-create 操作的 PBD 创建和插入部分。当 SR 创建时,如果池中一个或多个主机的 LUN 区域化不正确,此功能会很有用。更正受影响主机的区域化,并使用“修复存储库”功能,而不是删除并重新创建 SR。

在 XenCenter 中

  1. 要打开“新建存储库”向导,您可以执行以下任一操作:
    • 在工具栏上,选择“新建存储”。
    • 在选定池或服务器的“存储”选项卡上,选择“新建 SR”。
    • 在“存储”菜单上,选择“新建 SR”。
    • 在“资源”窗格中,选择一个服务器或池,然后右键单击并在快捷菜单上选择“新建 SR”。
  2. 选择“硬件 HBA”作为物理存储类型,然后选择“下一步”。
  3. 在“名称”页面上,输入新 SR 的名称。默认情况下,向导会生成 SR 的描述。此描述包含您在向导中选择的配置选项的摘要。要输入您自己的描述,请清除“自动生成描述”复选框并在“描述”框中键入。单击“下一步”继续进入“预配”页面。
  4. 在“预配”页面上,选择预配类型。可用选项包括
    • 精简预配 (GFS2)。此类型的预配仅在 GFS2 群集池上可用。有关 GFS2 群集的详细信息,请参阅 更改池属性
    • 完全预配 (LVM)
单击“下一步”继续进入“位置”页面。
向导会扫描可用的 LUN,然后显示一个页面,其中列出所有找到的 LUN。从列表中选择一个 LUN,然后单击“创建”。
注意:
如果您选择的 LUN 上存在现有 SR,则会显示警告消息。查看详细信息并选择以下选项之一。
  • 要使用现有的,请单击 重新连接。
  • 要删除现有 SR 并创建 SR,请单击 格式化。
  • 如果您希望选择其他 LUN,请单击 取消 并从列表中选择一个 LUN。
“摘要”页面显示有关新 SR 的信息。阅读信息,然后单击“完成”以完成 SR 创建过程。