4.2. 部署后端服务
使用部署基本后端服务创建 OpenStackControlPlane 自定义资源(CR),并禁用所有 Red Hat OpenStack Platform (RHOSP)服务。此 CR 是 control plane 的基础。
先决条件
- 要采用的云正在运行,它处于 RHOSP 17.1 的最新次要版本。
- 源云的所有 control plane 和数据平面主机都在运行,并在整个采用过程中继续运行。
-
部署
openstack-operator,但未部署OpenStackControlPlane。 - 安装 OpenStack Operator。如需更多信息,请参阅在 OpenShift 上部署 Red Hat OpenStack Services 中的 安装和准备 Operator。
-
如果您在 RHOSP 环境中启用了 TLS (TLS-e),您必须将
tlsroot CA 从 RHOSP 环境复制到rootca-internal签发者。 - Galera 和 RabbitMQ 有可用的 PV。
为 control plane 部署设置所需的 admin 密码。这可以是来自您原始部署的管理员密码或不同的密码:
ADMIN_PASSWORD=SomePassword
ADMIN_PASSWORD=SomePasswordCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用现有的 RHOSP 部署密码:
declare -A TRIPLEO_PASSWORDS TRIPLEO_PASSWORDS[default]="$HOME/overcloud-passwords.yaml" ADMIN_PASSWORD=$(cat ${TRIPLEO_PASSWORDS[default]} | grep ' AdminPassword:' | awk -F ': ' '{ print $2; }')declare -A TRIPLEO_PASSWORDS TRIPLEO_PASSWORDS[default]="$HOME/overcloud-passwords.yaml" ADMIN_PASSWORD=$(cat ${TRIPLEO_PASSWORDS[default]} | grep ' AdminPassword:' | awk -F ': ' '{ print $2; }')Copy to Clipboard Copied! Toggle word wrap Toggle overflow 设置服务密码变量以匹配原始部署。数据库密码在 control plane 环境中可能会有所不同,但您必须同步服务帐户密码。
例如,在使用 director Operator Standalone 的开发人员环境中,可以提取密码:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
流程
确保您在使用要部署 control plane 的 Red Hat OpenShift Container Platform (RHOCP)命名空间:
oc project openstack
$ oc project openstackCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 创建 RHOSP secret。如需更多信息,请参阅在 OpenShift 上部署 Red Hat OpenStack Services 中的 为 Red Hat OpenStack Services 提供安全访问 OpenShift 服务。
如果
$ADMIN_PASSWORD与您在osp-secret中设置的密码不同,请修改osp-secret中的AdminPassword键:oc set data secret/osp-secret "AdminPassword=$ADMIN_PASSWORD"
$ oc set data secret/osp-secret "AdminPassword=$ADMIN_PASSWORD"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在
osp-secret中设置服务帐户密码,以匹配原始部署中的服务帐户密码:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 部署
OpenStackControlPlaneCR。确保您只启用 DNS、Galera、Memcached 和 RabbitMQ 服务。所有其他服务必须禁用:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 在 RHOCP 集群中选择一个现有的 <
storage_class>。 - 2
- 将
<address_pool> 替换为网络定义的名称。 - 3
- 将
<loadBalancer_IP> 替换为 LoadBalancer IP 地址。 - 4
- 本例为 3 个计算单元提供所需的基础架构数据库和消息传递服务,名为
cell1、cell2和cell3。根据需要,调整每个 Compute 单元的副本、存储 或等字段的值。storageRequest - 5
- 将
<networkAttachment_name> 替换为您的网络的名称。 - 6
- 如果您在 RHOSP 环境中启用了 TLS-e,在
spec:tls部分将tls设置为以下内容:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意如果使用 IPv6,请将负载均衡器 IP 更改为环境中的 IP,例如:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
验证所有定义的单元的 Galera 和 RabbitMQ 状态是否为
Running:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 之后,使用环境变量
RENAMED_CELLS会引用给定的单元名称。确保所有 Rabbitmq 和 Galera CR 的状态都
完成:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证
OpenStackControlPlaneCR 是否已等待openstackclientpod 部署:oc get OpenStackControlPlane openstack
$ oc get OpenStackControlPlane openstack NAME STATUS MESSAGE openstack Unknown OpenStackControlPlane Client not startedCopy to Clipboard Copied! Toggle word wrap Toggle overflow