更新和替换 TLS 证书

本文以更新和替换 TiDB 集群中 PD、TiKV、TiDB 组件间的 TLS 证书为例,介绍在证书过期之前,如何更新和替换相应组件的证书。

如需要更新和替换集群中其他组件间的证书、TiDB Server 端证书或 MySQL Client 端证书,可使用类似的步骤进行操作。

本文的更新和替换操作假定原证书尚未过期。若原证书已经过期或失效,可参考为 TiDB 组件间开启 TLS为 MySQL 客户端开启 TLS 生成新的证书并重启集群。

更新和替换 cert-manager 颁发的证书

如原 TLS 证书是使用 cert-manager 系统颁发的证书,且原证书尚未过期,根据是否需要更新 CA 证书需要分别处理。

更新和替换 CA 证书

仅更新和替换组件间证书

使用 cert-manager 颁发证书时,可通过配置 Certificate 资源的 spec.renewBefore 字段,让 cert-manager 在证书过期前自动进行更新。

  1. cert-manager 支持在证书过期前自动更新各组件的证书及对应的 Kubernetes Secret 对象。如需手动更新,可以参考使用 cmctl renew 证书

  2. 对于各组件间的证书,各组件会在之后新建连接时自动重新加载新的证书,无需手动操作。

文档内容是否有帮助?