7.4. 使用超融合存储部署边缘站点
部署中心站点后,构建边缘站点并确保每个边缘位置主要连接到自己的存储后端,以及中央位置的存储后端。此配置中应包含 spine 和 leaf 网络配置,并添加了 ceph 需要的 storage 和 storage_mgmt 网络。如需更多信息,请参阅 Spine Leaf Networking。您必须在中央位置和存储网络之间具有连接,以便在每个边缘站点上移动镜像服务(glance)镜像。
确保中央位置可以在每个边缘站点与 mons 和 OSD 通信。但是,您应该在站点位置边界终止存储管理网络,因为存储管理网络用于 OSD 重新平衡。
先决条件
-
您必须创建特定于环境的
network_data.yaml
文件。您可以在/usr/share/openstack-tripleo-heat-templates/network-data-samples
中找到示例文件。 -
您必须创建一个特定于您的环境的
overcloud-baremetal-deploy.yaml
文件。有关更多信息,请参阅为 overcloud 置备裸机节点。 - 您有三个镜像服务(glance)服务器的硬件位于中央位置和每个可用区,或者在需要存储服务的每个地理位置。在边缘位置,镜像服务部署到 DistributedComputeHCI 节点。
流程
- 以 stack 用户身份登录 undercloud。
查找 stackrc 文件:
[stack@director ~]$ source ~/stackrc
生成环境文件 ~/dcn0/dcn0-images-env.yaml :
sudo openstack tripleo container image prepare \ -e containers.yaml \ --output-env-file /home/stack/dcn0/dcn0-images-env.yaml
为 dcn0 边缘位置生成适当的角色:
openstack overcloud roles generate DistributedComputeHCI DistributedComputeHCIScaleOut \ -o ~/dcn0/dcn0_roles.yaml
为 overcloud 置备网络。此命令为 overcloud 网络使用一个定义文件作为输入。您必须使用命令中的输出文件来部署 overcloud:
(undercloud)$ openstack overcloud network provision \ --output /home/stack/dcn0/overcloud-networks-deployed.yaml \ /home/stack/network_data.yaml
置备裸机实例。该命令为裸机节点使用一个定义文件作为输入。您必须使用命令中的输出文件来部署 overcloud:
(undercloud)$ openstack overcloud node provision \ --stack dcn0 \ --network-config \ -o /home/stack/dcn0/deployed_metal.yaml \ /home/stack/overcloud-baremetal-deploy.yaml
如果要使用超融合存储部署边缘站点,则必须使用以下参数创建一个
initial-ceph.conf
配置文件:如需更多信息,请参阅为 HCI 配置 Red Hat Ceph Storage 集群 :[osd] osd_memory_target_autotune = true osd_numa_auto_affinity = true [mgr] mgr/cephadm/autotune_memory_target_ratio = 0.2
使用
deployed_metal.yaml
文件作为openstack overcloud ceph deploy
命令的输入。openstack overcloud ceph deploy 命令输出
描述部署的 Ceph 集群的 yaml 文件:openstack overcloud ceph deploy \ /home/stack/dcn0/deployed_metal.yaml \ --stack dcn0 \ --config ~/dcn0/initial-ceph.conf \ 1 --output ~/dcn0/deployed_ceph.yaml \ --container-image-prepare ~/containers.yaml \ --network-data ~/network-data.yaml \ --cluster dcn0 \ --roles-data dcn_roles.yaml
- 1
- 仅在部署超融合基础架构时包含 initial-ceph.conf。
在 site-name.yaml 环境文件中为站点配置命名约定。Nova 可用区和 Cinder 存储可用区必须匹配:
parameter_defaults: NovaComputeAvailabilityZone: dcn0 ControllerExtraConfig: nova::availability_zone::default_schedule_zone: dcn0 NovaCrossAZAttach: false CinderStorageAvailabilityZone: dcn0 CinderVolumeCluster: dcn0 GlanceBackendID: dcn0
使用类似如下的内容配置 glance.yaml 模板:
parameter_defaults: GlanceEnabledImportMethods: web-download,copy-image GlanceBackend: rbd GlanceStoreDescription: 'dcn0 rbd glance store' GlanceBackendID: dcn0 GlanceMultistoreConfig: central: GlanceBackend: rbd GlanceStoreDescription: 'central rbd glance store' CephClusterName: central
为 dcn0 位置部署堆栈 [d]
openstack overcloud deploy \ --deployed-server \ --stack dcn0 \ --templates /usr/share/openstack-tripleo-heat-templates/ \ -r ~/dcn0/dcn0_roles.yaml \ -n ~/dcn0/network-data.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/dcn-storage.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/cephadm/cephadm-rbd-only.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/nova-az-config.yaml \ -e /home/stack/overcloud-deploy/central/central-export.yaml \ -e /home/stack/dcn0/deployed_ceph.yaml \ -e /home/stack/dcn-common/central_ceph_external.yaml \ -e /home/stack/dcn0/overcloud-vip-deployed.yaml \ -e /home/stack/dcn0/deployed_metal.yaml \ -e /home/stack/dcn0/overcloud-networks-deployed.yaml \ -e ~/control-plane/glance.yaml