Kubernetes集群通常使用ssl证书来加密通信,Rancher会自动为集群生成证书。在Rancher v2.0.14、v2.1.9之前的版本,Rancher配置集群的自动生成证书的有效期为1年,这意味着如果您在大约1年前使用这些版本创建了Rancher配置集群,那么您需要尽快开始轮换证书,否则证书过期后集群将进入错误状态。轮换证书是一次性操作,新生成的证书有效期为10年。
本文将为您详细介绍如何进行轮换证书的操作。即使您的证书现在已经过期,您也可以依照以下步骤进行证书的轮换。但请注意先不要升级rancher server,根据本文最后一节【证书已过期导致无法连接k8s】进行处理。
注意在重新启动组件时,轮换Kubernetes证书可能会导致您的群集暂时不可用。此外,对于生产环境,建议在维护窗口期间执行此操作。
通过UI轮换证书(业务集群)
注:可用版本 Rancher v2.2.0 +
在Rancher v2.2.0以及更高版本,可通过UI的证书轮换功能对集群证书进行更新,此功能适用于【自定义安装的集群】。
证书轮换之后,Kubernetes组件将自动重新启动,重启不影响应用Pod,重启时间需要3到5分钟。
证书轮换可用于下列服务:
- etcd
- kubelet
- kube-apiserver
- kube-proxy
- kube-scheduler
- kube-controller-manager
通过UI轮换证书,目前支持:
- 批量更新所有服务证书(CA证书不变)
- 更新某个指定服务(CA证书不变)
(重要)集群更新
如果Rancher版本是从v2.x.x升级到2.2.x,则需要先做一次集群更新操作。
1、进入【全局\集群视图】;
2、选择【目标集群】右侧的【省略号菜单】,选择升级;
3、点击右侧【显示高级选项】,检查【Etcd快照轮换】功能是否开启,建议开启此功能;
4、在【授权集群访问地址】中,检查功能是否已开启,建议开始此功能,下边的域名可以不用填写;