12.3. 重新部署证书
重新部署 playbook 重启 control plane 服务,并可能导致集群停机。一个服务中的错误可能会导致 playbook 失败并影响集群健康状况。如果 playbook 失败,您可能需要手动解决问题并重新启动 playbook。playbook 必须按顺序完成所有任务才能成功。
使用以下 playbook 在所有相关主机上重新部署 master、etcd、node、registry 和路由器证书。您可以一次使用当前的 CA 重新部署所有这些证书,只为特定组件重新部署证书,或者自行重新部署新生成的或自定义 CA。
与证书到期 playbook 一样,这些 playbook 必须使用代表集群 的清单文件 运行。
特别是,清单必须通过以下变量指定或覆盖所有主机名和 IP 地址,以便它们与当前的集群配置匹配:
-
openshift_public_hostname
-
openshift_public_ip
-
openshift_master_cluster_hostname
-
openshift_master_cluster_public_hostname
您需要的 playbook 通过以下方式提供:
# yum install openshift-ansible
任何证书在重新部署时自动生成的任何证书的有效性(以天为单位),也可以通过 Ansible 配置。请参阅 配置证书有效期。
OpenShift Container Platform CA 和 etcd 证书在 5 年后过期。签名的 OpenShift Container Platform 证书在两年后过期。
12.3.1. 使用当前 OpenShift Container Platform 和 etcd CA 重新部署所有证书
redeploy-certificates.yml playbook 不会 重新生成 OpenShift Container Platform CA 证书。使用当前 CA 证书创建新 master、etcd、node、registry 和路由器证书,为新证书签名。
这还包括以下串行重启:
- etcd
- 主服务
- 节点服务
要使用当前的 OpenShift Container Platform CA 重新部署 master、etcd 和节点证书,请切换到 playbook 目录并运行此 playbook,指定您的清单文件:
$ cd /usr/share/ansible/openshift-ansible $ ansible-playbook -i <inventory_file> \ playbooks/redeploy-certificates.yml
如果 OpenShift Container Platform CA 被重新部署为 openshift-master/redeploy-openshift-ca.yml playbook,则必须将 -e openshift_redeploy_openshift_ca=true
添加到这个命令。