第 12 章 使用 director Operator 为公共端点部署 TLS
使用 TLS 部署 overcloud,为 director Operator (OSPdO)创建公共端点 IP 或 DNS 名称。
先决条件
- 您已在正常运行的 Red Hat OpenShift Container Platform (RHOCP)集群上安装了 OSPdO。
-
您已在工作站上安装了
oc命令行工具。 - 您已创建了证书颁发机构、密钥和证书。如需更多信息,请参阅在 overcloud 公共端点中启用 SSL/TLS。
12.1. TLS 用于公共端点 IP 地址 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要引用公共端点 IP 地址,请通过创建 ConfigMap 资源来存储 CA 证书,然后在 OpenStackControlPlane 资源中引用该 ConfigMap 资源,将 CA 证书添加到 openstackclient pod。
流程
创建
ConfigMap资源以存储 CA 证书:apiVersion: v1 kind: ConfigMap metadata: name: cacerts namespace: openstack data: local_CA: | -----BEGIN CERTIFICATE----- … -----END CERTIFICATE----- another_CA: | -----BEGIN CERTIFICATE----- … -----END CERTIFICATE-----创建
OpenStackControlPlane资源并引用ConfigMap资源:apiVersion: osp-director.openstack.org/v1beta2 kind: OpenStackControlPlane metadata: name: <overcloud> namespace: openstack spec: caConfigMap: cacerts-
将
<overcloud> 替换为 overcloud control plane 的名称。
-
将
-
在
~/custom_environment_files目录中创建一个名为tls-certs.yaml的文件,它使用SSLCertificate、SSLIntermediateCertificate、SSLKey和CAMap参数为部署指定生成的证书。 更新
heatEnvConfigMap以添加tls-certs.yaml文件:$ oc create configmap -n openstack heat-env-config --from-file=~/custom_environment_files/ --dry-run=client -o yaml | oc apply -f -创建
OpenStackConfigGenerator资源,并添加所需的heatEnvs配置文件来为公共端点 IP 配置 TLS:apiVersion: osp-director.openstack.org/v1beta1 kind: OpenStackConfigGenerator … spec: … heatEnvs: - ssl/tls-endpoints-public-ip.yaml - ssl/enable-tls.yaml … heatEnvConfigMap: heat-env-config tarballConfigMap: tripleo-tarball-config-
使用
OpenStackConfigGenerator生成 Ansible playbook,并应用 overcloud 配置。如需更多信息,请参阅使用 director Operator 配置和部署 overcloud。