8.16. 使用 director Operator 应用 overcloud 配置
只有在创建 control plane、置备裸机 Compute 节点并生成 Ansible playbook 来配置各个节点上的软件后,才可使用 director Operator 配置 overcloud。创建 OpenStackDeploy 资源时,director Operator 会创建一个运行 ansible playbook 来配置 overcloud 的作业。
前提条件
- 确保 OpenShift Container Platform 集群正常运行,并且已正确安装了 director Operator。
-
确保已在工作站上安装了
oc
命令行工具。 - 使用 OpenStackControlPlane 资源来创建 control plane。
- 使用 OpenStackBareMetalSet 资源来创建裸机 Compute 节点。
- 使用 OpentackConfigGenerator 为 overcloud 创建 Ansible playbook 配置。
- 使用 OpeenstackConfigVersion 选择 ansible playbook 的 hash/digest,用于配置 overcloud。
流程
在工作站上创建一个名为
openstack-deployment.yaml
的文件。包含 Ansible playbook 的资源规格。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在资源规格中设置以下值:
metadata.name
-
默认情况下
,设置 Compute 节点 baremetal 设置的名称,默认为。 metadata.namespace
-
设置为 diretor Operator 命名空间,默认为
openstack
。 spec.configVersion
- 要部署的 playbook 的 config 版本/git 哈希。
spec.configGenerator
- configGenerator 的名称。
有关您可以在 spec 部分使用的值的更多描述,请查看
openstackdeploy
CRD 的自定义资源定义中的规格模式:oc describe crd openstackdeploy
$ oc describe crd openstackdeploy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 配置完 OpenStackDeploy 规范后,保存文件。
创建 OpenStackDeploy 资源:
oc create -f openstack-deployment.yaml -n openstack
$ oc create -f openstack-deployment.yaml -n openstack
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 当部署运行时,它会创建一个 Kubernetes 作业来执行 Ansible playbook。您可以跟踪作业的日志,以观察运行的 Ansible playbook:
oc logs -f jobs/deploy-openstack-default
$ oc logs -f jobs/deploy-openstack-default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 另外,您可以通过登录到
openstackclient
pod 来手动访问执行的 Ansible playbook。在/home/cloud-admin/work/directory
中,您可以查找当前部署的 ansible playbook 和ansible.log
文件。