第 5 章 安装中央位置
当您使用分布式计算节点(DCN)架构部署 Red Hat OpenStack 平台时,您必须提前决定您的存储策略。如果您在没有 Red Hat Ceph Storage 的情况下部署 Red Hat OpenStack Platform,则无法使用 Red Hat Ceph 存储部署任何边缘站点。此外,您无法在稍后重新部署后将 Red Hat Ceph Storage 添加到中央位置的选项。
当您为分布式计算节点(DCN)架构部署中心位置时,您可以部署集群:
- 带有或没有 Compute 节点
- 没有 Red Hat Ceph Storage
5.1. 在没有边缘存储的情况下部署中央控制器
如果您使用 Object Storage 服务(swift)作为镜像服务(glance)的后端,您可以在边缘站点部署分布式计算节点集群,而无需在边缘站点进行块存储。因为每个架构的不同角色和网络配置集不同,在没有块存储的情况下部署的站点无法更新,以具有块存储。
重要:以下流程使用 lvm 作为 Cinder 的后端,它不支持用于生产环境。您必须部署一个经过认证的块存储解决方案,作为 Cinder 的后端。
以类似于典型的 overcloud 部署的方式部署中央控制器集群。此集群不需要任何 Compute 节点,因此您可以将计算数设置为 0
以覆盖默认的 1
。中央控制器具有特定存储和 Oslo 配置要求。使用以下步骤解决这些问题。
先决条件
-
您必须创建特定于环境的
network_data.yaml
和vip_data.yaml
文件。您可以在/usr/share/openstack-tripleo-heat-templates/network-data-samples
中找到示例文件。 -
您必须创建一个特定于环境的
overcloud-baremetal-deploy.yaml
文件。有关更多信息,请参阅为 overcloud 置备裸机节点。
流程
以下流程概述了中央位置初始部署的步骤。
以下步骤详细说明了与没有 glance 多存储示例 DCN 部署关联的部署命令和环境文件。这些步骤不包括与不相关的,但必要的配置方面,如网络。
- 以 stack 用户身份登录 undercloud。
查找 stackrc 文件:
[stack@director ~]$ source /home/stack/stackrc
生成环境文件:
sudo openstack tripleo container image prepare \ -e containers.yaml \ --output-env-file /home/stack/central/central-images-env.yaml
在主目录中,为您计划部署的每个堆栈创建目录。将中央位置的
network_data.yaml
、vip_data.yaml
和overcloud-baremetal-deploy.yaml
模板移到/home/stack/central/
。mkdir /home/stack/central mkdir /home/stack/dcn0 mkdir /home/stack/dcn1 mv network_data.yaml /home/stack/central mv vip_data.yaml /home/stack/central mv overcloud-baremetal-deploy.yaml /home/stack/central
调配 overcloud 的网络。此命令取 overcloud 网络的定义文件作为输入。您必须使用命令中的输出文件来部署 overcloud:
(undercloud)$ openstack overcloud network provision \ --output /home/stack/central/overcloud-networks-deployed.yaml \ /home/stack/central/network_data.yaml
为 overcloud 调配虚拟 IP。此命令取虚拟 IP 的定义文件作为输入。您必须使用命令中的输出文件来部署 overcloud:
(undercloud)$ openstack overcloud network vip provision \ --stack central \ --output /home/stack/central/overcloud-vip-deployed.yaml \ /home/stack/central/vip_data.yaml
置备裸机实例。该命令为裸机节点使用一个定义文件作为输入。您必须使用命令中的输出文件来部署 overcloud:
(undercloud)$ openstack overcloud node provision \ --stack central \ --network-config \ -o /home/stack/central/deployed_metal.yaml \ /home/stack/central/overcloud-baremetal-deploy.yaml
使用类似如下的设置,创建一个名为
central/overrides.yaml
的文件:parameter_defaults: NtpServer: - 0.pool.ntp.org - 1.pool.ntp.org GlanceBackend: swift
-
ControllerCount: 3
指定将部署三个节点。它们将 swift 用于 glance,lvm 用于 cinder,并且托管边缘计算节点的 control-plane 服务。 -
ComputeCount: 0
是一个可选参数,用于阻止 Compute 节点使用中央 Controller 节点进行部署。 GlanceBackend: swift
使用 Object Storage (swift)作为 Image Service (glance)后端。生成的配置与分布式计算节点(DCN)交互,其方式如下:
DCN 上的镜像服务创建从中央对象存储后端接收的镜像的缓存副本。镜像服务使用 HTTP 将镜像从对象存储复制到本地磁盘缓存中。
注意中央 Controller 节点必须能够连接到分布式计算节点(DCN)站点。中央 Controller 节点可以使用路由的第 3 层连接。
-
在
site-name.yaml
环境文件中配置站点的命名约定。Nova 可用区,Cinder 存储可用域必须匹配:cat > /home/stack/central/site-name.yaml << EOF parameter_defaults: NovaComputeAvailabilityZone: central ControllerExtraConfig: nova::availability_zone::default_schedule_zone: central NovaCrossAZAttach: false EOF
部署中央 Controller 节点。例如,您可以使用包含以下内容的
deploy.sh
文件:openstack overcloud deploy \ --deployed-server \ --stack central \ --templates /usr/share/openstack-tripleo-heat-templates/ \ -n /home/stack/central/network_data.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/nova-az-config.yaml \ -e /home/stack/central/overcloud-networks-deployed.yaml \ -e /home/stack/central/overcloud-vip-deployed.yaml \ -e /home/stack/central/deployed_metal.yaml
您必须在 openstack overcloud deploy
命令中包含用于配置网络的 heat 模板。为边缘架构设计需要 spine 和 leaf 网络。如需了解更多详细信息,请参阅 配置叶型网络。