第 6 章 使用 director Operator 配置和部署 overcloud
在为 overcloud 置备虚拟和裸机节点后,您可以配置 overcloud 节点。您必须创建一个 OpenStackConfigGenerator 资源来生成 Ansible playbook,将节点注册到红帽客户门户网站或 Red Hat Satellite,然后创建一个 OpenStackDeploy 资源来将配置应用到节点。
置备 overcloud 基础架构后,您必须创建一组 Ansible playbook,以便在 overcloud 节点上配置 Red Hat OpenStack Platform (RHOSP)。您可以使用 OpenStackConfigGenerator 自定义资源定义(CRD)创建这些 playbook。OpenStackConfigGenerator CRD 使用 RHOSP director config-download 功能将 heat 配置转换为 playbook。
使用以下命令查看 OpenStackConfigGenerator CRD 定义和规格模式:
oc describe crd openstackconfiggenerator oc explain openstackconfiggenerator.spec
$ oc describe crd openstackconfiggenerator
$ oc explain openstackconfiggenerator.spec
先决条件
-
您已创建了带有
OpenStackControlPlaneCRD 的 control plane。 -
已使用
OpenStackBarementalSetsCRD 创建 Compute 节点。 -
您已创建了包含自定义 heat 模板的
ConfigMap对象。 -
您已创建了包含自定义环境文件的
ConfigMap对象。
流程
在工作站上创建一个名为
openstack-config-generator.yaml的文件。包含用于生成 Ansible playbook 的资源规格。以下示例定义了生成 playbook 的规格:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 配置生成器的名称,
默认为。 - 2
- 设置为
true以启用自动创建所需的 heat 环境文件以启用隔离。生产环境 RHOSP 环境必须启用隔离。运行 Pacemaker 的虚拟机需要fence-agents-kubevirt软件包。 - 3
- 设置为包含 Git 身份验证凭据的
ConfigMap对象,默认为git-secret。 - 4
- 默认情况下,包含自定义环境文件的
ConfigMap对象(默认为heat-env-config)。 - 5
tripleo-heat-templates/environments目录中由 TripleO 提供的默认 heat 环境文件列表,用于生成 playbook。- 6
- 默认情况下,包含带有自定义 heat 模板的 tarball 的
ConfigMap对象默认为tripleo-tarball-config。
可选: 要更改
OpenStackConfigGeneratorCR 用来创建临时 heat 服务的容器镜像位置,请在openstack-config-generator.yaml文件中添加以下配置:Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<heat_api_image_location> 替换为托管 heat API 镜像的目录的路径,openstack-heat-api。 -
将
<heat_engine_image_location> 替换为托管 heat 引擎镜像的目录的路径,即openstack-heat-engine。 -
将
<mariadb_image_location> 替换为托管 MariaDB 镜像的目录的路径,openstack-mariadb。 -
将
<rabbitmq_image_location> 替换为托管 RabbitMQ 镜像的目录的路径,openstack-rabbitmq。
-
将
可选: 要在 debug 模式中为生成配置创建 Ansible playbook,请在
openstack-config-generator.yaml文件中添加以下配置:spec: ... interactive: true
spec: ... interactive: trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 有关在交互模式中调试
OpenStackConfigGeneratorpod 的更多信息,请参阅 调试配置生成。-
保存
openstack-config-generator.yaml文件。 创建 Ansible 配置生成器:
oc create -f openstack-config-generator.yaml -n openstack
$ oc create -f openstack-config-generator.yaml -n openstackCopy to Clipboard Copied! Toggle word wrap Toggle overflow 验证是否已创建配置生成器的资源:
oc get openstackconfiggenerator/default -n openstack
$ oc get openstackconfiggenerator/default -n openstackCopy to Clipboard Copied! Toggle word wrap Toggle overflow