华为卷驱动¶
华为卷驱动可用于在支持 iSCSI 和光纤通道协议的 OpenStack 块存储驱动程序中为虚拟机 (VM) 提供逻辑卷和快照等功能。
版本映射¶
下表描述了块存储驱动程序、华为存储系统和 OpenStack 之间的版本映射
描述 |
存储系统版本 |
|---|---|
创建、删除、扩展、附加、分离、管理和取消管理卷 使用分配的存储池创建卷 使用分配的磁盘类型创建卷 创建、删除和更新一致性组 将镜像复制到卷 将卷复制到镜像 自动分区 SmartThin 卷迁移 复制 V2.1 创建、删除、管理、取消管理和备份快照 创建和删除 cgsnapshot |
OceanStor T 系列 V2R2 C00/C20/C30 OceanStor V3 V3R1C10/C20 V3R2C10 V3R3C00/C10/C20 OceanStor 2200V3 V300R005C00 OceanStor 2600V3 V300R005C00 OceanStor 18500/18800 V1R1C00/C20/C30 V3R3C00 OceanStor Dorado V300R001C00 OceanStor V3 V300R006C00 OceanStor 2200V3 V300R006C00 OceanStor 2600V3 V300R006C00 |
克隆卷 从快照创建卷 重定型 SmartQoS SmartTier SmartCache Thick |
OceanStor T 系列 V2R2 C00/C20/C30 OceanStor V3 V3R1C10/C20 V3R2C10 V3R3C00/C10/C20 OceanStor 2200V3 V300R005C00 OceanStor 2600V3 V300R005C00 OceanStor 18500/18800V1R1C00/C20/C30 OceanStor V3 V300R006C00 OceanStor 2200V3 V300R006C00 OceanStor 2600V3 V300R006C00 |
SmartPartition |
OceanStor T 系列 V2R2 C00/C20/C30 OceanStor V3 V3R1C10/C20 V3R2C10 V3R3C00/C10/C20 OceanStor 2600V3 V300R005C00 OceanStor 18500/18800V1R1C00/C20/C30 OceanStor V3 V300R006C00 OceanStor 2600V3 V300R006C00 |
Hypermetro Hypermetro 一致性组 |
OceanStor V3 V3R3C00/C10/C20 OceanStor 2600V3 V3R5C00 OceanStor 18500/18800 V3R3C00 OceanStor Dorado V300R001C00 OceanStor V3 V300R006C00 OceanStor 2600V3 V300R006C00 |
卷驱动程序配置¶
本节介绍如何为 iSCSI 存储或光纤通道存储配置华为卷驱动程序。
先决条件
从镜像创建卷时,请安装 multipath 工具,并在每个后端部分或在 [backend_defaults] 部分中添加以下配置键,作为 /etc/cinder/cinder.conf 文件中所有后端的通用配置
use_multipath_for_image_xfer = True
enforce_multipath_for_image_xfer = True
要配置卷驱动程序,请按照以下步骤操作
在
/etc/cinder中,创建一个华为定制的驱动程序配置文件。文件格式为 XML。根据站点要求更改驱动程序配置文件的名称,例如
cinder_huawei_conf.xml。配置驱动程序配置文件中的参数。
每个产品在
Storagexml 块下的Product参数都有其自己的值。以下是包含适当Product参数的完整 xml 文件<?xml version="1.0" encoding="UTF-8"?> <config> <Storage> <Product>PRODUCT</Product> <Protocol>PROTOCOL</Protocol> <UserName>xxxxxxxx</UserName> <UserPassword>xxxxxxxx</UserPassword> <RestURL>https://x.x.x.x:8088/deviceManager/rest/</RestURL> </Storage> <LUN> <LUNType>xxx</LUNType> <WriteType>xxx</WriteType> <Prefetch Type="xxx" Value="xxx" /> <StoragePool>xxx</StoragePool> </LUN> <iSCSI> <DefaultTargetIP>x.x.x.x</DefaultTargetIP> <Initiator Name="xxxxxxxx" TargetIP="x.x.x.x"/> </iSCSI> <Host OSType="Linux" HostIP="x.x.x.x, x.x.x.x"/> </config> The corresponding ``Product`` values for each product are as below:
对于 T 系列 V2
<Product>TV2</Product>
对于 V3
<Product>V3</Product>
对于 OceanStor 18000 系列
<Product>18000</Product>
对于 OceanStor Dorado 系列
<Product>Dorado</Product>
要使用的
Protocol值是 iSCSI 的iSCSI,光纤通道的是FC,如下所示# For iSCSI <Protocol>iSCSI</Protocol> # For Fibre channel <Protocol>FC</Protocol>
注意
有关配置文件中参数的详细信息,请参阅 配置文件参数 部分。
配置
cinder.conf文件。在
/etc/cinder/cinder.conf的[default]块中,启用VOLUME_BACKENDenabled_backends = VOLUME_BACKEND
添加一个新的块
[VOLUME_BACKEND],并添加以下内容[VOLUME_BACKEND] volume_driver = VOLUME_DRIVER cinder_huawei_conf_file = /etc/cinder/cinder_huawei_conf.xml volume_backend_name = Huawei_Storage
volume_driver指示加载的驱动程序。cinder_huawei_conf_file指示指定的华为定制配置文件。volume_backend_name指示后端的名称。
在
/etc/cinder/cinder.conf的目标后端块中,添加有关Hypermetro的远程设备信息。[VOLUME_BACKEND] volume_driver = VOLUME_DRIVER cinder_huawei_conf_file = /etc/cinder/cinder_huawei_conf.xml volume_backend_name = Huawei_Storage metro_san_user = xxx metro_san_password = xxx metro_domain_name = xxx metro_san_address = https://x.x.x.x:8088/deviceManager/rest/ metro_storage_pools = xxx
在
/etc/cinder/cinder.conf的目标后端块中,添加有关Replication的远程设备信息。[VOLUME_BACKEND] volume_driver = VOLUME_DRIVER cinder_huawei_conf_file = /etc/cinder/cinder_huawei_conf.xml volume_backend_name = Huawei_Storage replication_device = backend_id: xxx, storage_pool :xxx, san_address: https://x.x.x.x:8088/deviceManager/rest/, san_user: xxx, san_password: xxx, iscsi_default_target_ip: x.x.x.x
注意
默认情况下,
Hypermetro和Replication的值为None。有关配置文件中参数的详细信息,请参阅 配置文件参数 部分。每个产品的
volume-driver值如下# For iSCSI volume_driver = cinder.volume.drivers.huawei.huawei_driver.HuaweiISCSIDriver # For FC volume_driver = cinder.volume.drivers.huawei.huawei_driver.HuaweiFCDriver
运行 service cinder-volume restart 命令以重新启动块存储服务。
配置 iSCSI 多路径¶
要配置 iSCSI 多路径,请按照以下步骤操作
在华为定制的驱动程序配置文件中添加端口组设置,并配置启动器所需的端口组名称。
<iSCSI> <DefaultTargetIP>x.x.x.x</DefaultTargetIP> <Initiator Name="xxxxxx" TargetPortGroup="xxxx" /> </iSCSI>
启用计算服务模块的多路径切换。
在
/etc/nova/nova.conf的[libvirt]中添加volume_use_multipath = True。运行 service nova-compute restart 命令以重新启动
nova-compute服务。
配置 FC 多路径¶
要配置 FC 多路径,请按照以下步骤操作
启用计算服务模块的多路径切换。
在
/etc/nova/nova.conf的[libvirt]中添加volume_use_multipath = True。运行 service nova-compute restart 命令以重新启动
nova-compute服务。
配置 CHAP 和 ALUA¶
在公共网络上,其 IP 地址与存储系统 iSCSI 主机端口位于同一网络段上的任何应用程序服务器都可以访问存储系统并在其中执行读写操作。这会对存储系统的data安全构成风险。为了确保存储系统的访问安全,您可以配置 CHAP 身份验证来控制应用程序服务器对存储系统的访问。
按照以下方式调整驱动程序配置文件
<Initiator ALUA="xxx" CHAPinfo="xxx" Name="xxx" TargetIP="x.x.x.x"/>
ALUA 指示多路径模式。0 表示禁用 ALUA。1 表示启用 ALUA。CHAPinfo 指示由 CHAP 身份验证的用户名和密码。格式为 mmuser; mm-user@storage。用户名和密码用分号 ( ;) 分隔。
配置多个存储¶
多个存储系统配置示例
enabled_backends = v3_fc, 18000_fc
[v3_fc]
volume_driver = cinder.volume.drivers.huawei.huawei_driver.HuaweiFCDriver
cinder_huawei_conf_file = /etc/cinder/cinder_huawei_conf_v3_fc.xml
volume_backend_name = huawei_v3_fc
[18000_fc]
volume_driver = cinder.volume.drivers.huawei.huawei_driver.HuaweiFCDriver
cinder_huawei_conf_file = /etc/cinder/cinder_huawei_conf_18000_fc.xml
volume_backend_name = huawei_18000_fc
配置文件参数¶
本节介绍华为卷驱动程序的强制和可选配置文件参数。
参数 |
默认值 |
描述 |
适用范围 |
|---|---|---|---|
Product |
|
存储产品的类型。可能的值是 |
全部 |
协议 |
|
连接协议的类型。可能的值是 |
全部 |
RestURL |
|
REST 接口的访问地址, |
全部 |
UserName |
|
存储管理员的用户名。 |
全部 |
UserPassword |
|
存储管理员的密码。 |
全部 |
StoragePool |
|
要使用的存储池的名称。如果需要配置多个存储池,请用分号 ( |
全部 |
注意
StoragePool 的值不能包含中文字符。
参数 |
默认值 |
描述 |
适用范围 |
|---|---|---|---|
LUNType |
Thick |
要创建的 LUN 的类型。该值为 |
全部 |
WriteType |
1 |
缓存写入类型,可能的值是: |
全部 |
LUNcopyWaitInterval |
5 |
启用 LUN 复制后,插件频繁查询复制进度。您可以设置一个值来指定查询间隔。 |
全部 |
Timeout |
432000 |
等待存储设备的 LUN 复制完成的超时间隔。单位为秒。 |
全部 |
Initiator Name |
|
计算节点启动器的名称。 |
全部 |
Initiator TargetIP |
|
为计算节点提供的 iSCSI 端口的 IP 地址。 |
全部 |
Initiator TargetPortGroup |
|
为计算节点提供的 iSCSI 目标端口的 IP 地址。 |
全部 |
DefaultTargetIP |
|
为计算节点提供的 iSCSI 目标端口的默认 IP 地址。 |
全部 |
OSType |
Linux |
Nova 计算节点主机的操作系统。 |
全部 |
HostIP |
|
Nova 计算节点主机的 IP 地址。 |
全部 |
metro_san_user |
|
hypermetro 远程设备的存储管理员用户名。 |
V3R3/2600 V3R5/18000 V3R3 |
metro_san_password |
|
hypermetro 远程设备的存储管理员密码。 |
V3R3/2600 V3R5/18000 V3R3 |
metro_domain_name |
|
在 ISM 上配置的 Hypermetro 域名。 |
V3R3/2600 V3R5/18000 V3R3 |
metro_san_address |
|
REST 接口的访问地址,https://x.x.x.x/devicemanager/rest/。值 x.x.x.x 表示管理 IP 地址。 |
V3R3/2600 V3R5/18000 V3R3 |
metro_storage_pools |
|
hypermetro 的远程存储池。 |
V3R3/2600 V3R5/18000 V3R3 |
backend_id |
|
目标设备 ID。 |
全部 |
storage_pool |
|
复制故障转移时目标后端的池名称。 |
全部 |
san_address |
|
REST 接口的访问地址,https://x.x.x.x/devicemanager/rest/。值 x.x.x.x 表示管理 IP 地址。 |
全部 |
san_user |
|
复制远程设备的存储管理员用户名。 |
全部 |
san_password |
|
复制远程设备的存储管理员密码。 |
全部 |
iscsi_default_target_ip |
|
远程事务端口 IP。 |
全部 |
重要提示
Initiator Name、Initiator TargetIP 和 Initiator TargetPortGroup 是 ISCSI 参数,因此不适用于 FC。
以下是在 cinder.conf 中可以设置的华为驱动程序特定选项
配置选项 = 默认值 |
描述 |
|---|---|
|
(字符串) Cinder 华为驱动程序的配置文件。 |
|
(字符串) hypermetro 将使用的远程设备。 |
|
(字符串) 远程 metro 设备的域名。 |
|
(字符串) 远程 metro 设备的请求 URL。 |
|
(字符串) 远程 metro 设备的 san 密码。 |
|
(字符串) 远程 metro 设备的 san 用户。 |
|
(字符串) 远程 metro 设备的池名称。 |