3.2.17. 手动重新部署证书
手动重新部署路由器证书:
检查包含默认路由器证书的 secret 是否已添加到路由器中:
$ oc set volume dc/router deploymentconfigs/router secret/router-certs as server-certificate mounted at /etc/pki/tls/private
如果添加了证书,请跳过以下步骤并覆盖 secret。
确保为以下变量
DEFAULT_CERTIFICATE_DIR
设置了一个默认证书目录:$ oc set env dc/router --list DEFAULT_CERTIFICATE_DIR=/etc/pki/tls/private
如果没有,请使用以下命令创建该目录:
$ oc set env dc/router DEFAULT_CERTIFICATE_DIR=/etc/pki/tls/private
将证书导出到 PEM 格式:
$ cat custom-router.key custom-router.crt custom-ca.crt > custom-router.crt
覆盖或创建路由器证书 secret:
如果证书 secret 添加到路由器,请覆盖该 secret。如果没有,请创建一个新 secret。
要覆盖 secret,请运行以下命令:
$ oc create secret generic router-certs --from-file=tls.crt=custom-router.crt --from-file=tls.key=custom-router.key --type=kubernetes.io/tls -o json --dry-run | oc replace -f -
要创建新 secret,请运行以下命令:
$ oc create secret generic router-certs --from-file=tls.crt=custom-router.crt --from-file=tls.key=custom-router.key --type=kubernetes.io/tls $ oc set volume dc/router --add --mount-path=/etc/pki/tls/private --secret-name='router-certs' --name router-certs
部署路由器。
$ oc rollout latest dc/router