Pure Storage FlashBlade 文件服务驱动程序,适用于 OpenStack¶
概述¶
Pure Storage FlashBlade 文件服务驱动程序为 OpenStack 提供 NFS 共享文件系统。
需求¶
Pure Storage FlashBlade
Purity//FB v2.3.0 或更高版本
准备和部署¶
重要提示
必须能够从管理网络通过共享文件系统节点访问 FlashBlade 管理接口,同时选定的 EVS 数据接口能够从 OpenStack 云访问,例如通过 Neutron flat 网络。
Kolla 部署上的配置¶
在 /etc/kolla/globals.yml 中启用共享文件系统服务和 FlashBlade 驱动程序
enable_manila: "yes"
enable_manila_backend_flashblade: "yes"
配置 OpenStack 网络,使其能够访问 FlashBlade 管理接口和 FlashBlade 数据接口。
配置两个物理网络 physnet1 和 physnet2,分别关联端口 eth1 和 eth2
在 /etc/kolla/globals.yml 中设置
neutron_bridge_name: "br-ex,br-ex2"
neutron_external_interface: "eth1,eth2"
注意
eth1 用于 Neutron 外部接口,eth2 用于 FlashBlade 数据接口。
FlashBlade 后端配置¶
在 /etc/kolla/globals.yml 中取消注释并设置
manila_flashblade_mgmt_vip: "172.24.44.15"
manila_flashblade_data_vip: "172.24.45.22"
manila_flashblade_api: "<API token for admin-privilaged user>"
FlashBlade 上的配置¶
在 Kolla OpenStack 中创建 FlashBlade 数据网络
列出可用的租户
$ openstack project list
为给定的租户(服务)创建一个网络,提供租户 ID、网络的名称、虚拟网络所实现的物理网络的名称以及虚拟网络所实现的物理机制的类型
$ openstack network create --project <SERVICE_ID> \
--provider-physical-network physnet2 \
--provider-network-type flat \
flashblade_network
可选 - 列出可用的网络
$ openstack network list
为同一个租户(服务)创建一个子网,提供此子网的网关 IP、子网的名称、之前创建的网络 ID 以及子网的 CIDR
$ openstack subnet create --project <SERVICE_ID> --gateway <GATEWAY> \
--subnet_range <SUBNET_CIDR> flashblade_subnet
可选 - 列出可用的子网
$ openstack subnet list
将子网接口添加到路由器,提供路由器 ID 和之前创建的子网 ID
$ openstack router add submet <ROUTER_ID> <SUBNET_ID>
配置多个后端¶
管理员可以配置一个 Manila 实例,从一个或多个后端配置共享。每个后端利用 Manila 驱动程序 API 的特定供应商实现的一个实例。
后端名称声明为配置选项 share_backend_name,位于包含该后端相关配置选项的特定配置段中。
因此,在部署多个后端的情况下,在部署之前更改默认共享后端是必要的。
修改文件 /etc/kolla/config/manila.conf 并添加内容
[DEFAULT]
enabled_share_backends = generic,fb1,fb2
修改文件 /etc/kolla/config/manila-share.conf 并添加内容
[generic]
share_driver = manila.share.drivers.generic.GenericShareDriver
interface_driver = manila.network.linux.interface.OVSInterfaceDriver
driver_handles_share_servers = True
service_instance_password = manila
service_instance_user = manila
service_image_name = manila-service-image
share_backend_name = GENERIC
[fb1]
share_backend_name = FB1
share_driver = manila.share.drivers.purestorage.flashblade.FlashBladeShareDriver
driver_handles_share_servers = False
flashblade_mgmt_vip = <fb1_mgmt_ip>
flashblade_data_vip = <fb1_data_ip>
flashblade_api = <FB1 API token>
[fb2]
share_backend_name = FB2
share_driver = manila.share.drivers.purestorage.flashblade.FlashBladeShareDriver
driver_handles_share_servers = False
flashblade_mgmt_vip = <fb2_mgmt_ip>
flashblade_data_vip = <fb2_data_ip>
flashblade_api = <FB2 API token>
有关如何管理共享的更多信息,请参阅 管理共享。
有关如何使用 Pure Storage FlashBlade 的详细信息,请参阅 Pure Storage Manila 参考指南。
使用此后端需要将 purity_fb SDK 包安装在 manila-share 容器中。为此,请按照 kolla 镜像构建指南 中概述的步骤操作,特别是 Package Customisation 和 Custom Repos 部分。