Rancher 轮换证书 和 Rancher 自身证书过期处理
1. 进入 rancher server 容器,执行相关操作
docker exec -it rancher /bin/sh
kubectl --insecure-skip-tls-verify -n kube-system delete secrets k3s-serving
kubectl --insecure-skip-tls-verify delete secret serving-cert -n cattle-system
rm -f /var/lib/rancher/k3s/server/tls/dynamic-cert.json
2. 请求刷新参数
curl --insecure -sfL https://localhost:8443/v3
3. 重启rancher server 容器
docker restart rancher
概述
本文所述 “证书” 分为 “Rancher 自身证书” 和 “Rancher 启动的 Kubernetes 的证书” 两种。
默认情况下,Kubernetes 集群所需要的证书由 Rancher 生成,如果出现证书过期,或证书泄露等情况,则需要使用新的证书轮换掉有问题的证书。轮换证书后,Kubernetes 组件将自动重新启动。
以下服务支持证书轮换:
etcd
kubelet
kube-apiserver
kube-proxy
kube-scheduler
kube-controller-manager
警告:轮换 Kubernetes 证书可能会导致集群在重新启动组件时暂时不可用。对于生产环境,建议在维护时段内执行此操作。
为 K8s 轮换证书
通过 Rancher 启动的 Kubernetes 集群(RKE 集群)能够通过 UI 轮换自动生成的证书。
在全局视图中,导航到要轮换证书的集群》选择省略号(…)》 轮换证书》选择要轮换的证书。
轮换所有服务证书(保持相同的 CA)
轮换单个服务,然后从下拉菜单中选择一项服务
最后单击保存。
结果:所选证书将被轮换,相关服务将重新启动以开始使用新证书。
注意: 尽管 RKE CLI 可以为 Kubernetes 集群组件使用自定义证书,但目前 Rancher 不支持在 Rancher UI 中创建 RKE 集群时上传这些证书。
因为证书改变,相应的token也会变化,所以在完成集群证书更新后,需要对连接API SERVER的 Pod 进行重建,以获取新的token,否则会出现服务启动失败的情况(日志会显示 token 错误等类似信息,有的服务可能不会显示,请跟进实际情况处理)。
cattle-system/cattle-cluster-agent
cattle-system/cattle-node-agent
cattle-system/kube-api-auth ingress-nginx/nginx-ingress-controller
kube-system/canal kube-system/kube-dns
kube-system/kube-dns-autoscaler
其他应用 Pod
独立容器 Rancher 证书过期
正常情况下,Rancher 需要和 K8s 集群交互,K8s 集群中有 agent 需要和 Rancher 通讯,如果 Rancher 自身的证书已经过期,则会出现无法通讯的情况,在 UI 上体现的症状就是 k8s 集群出现错误提示无法被管理。
官方文档说:对于 v2.2.2+ 以后的 Rancher 它会自动检查证书有效期,如果发现证书即将过期,将会自动生成新的证书。
不巧的是我独立容器运行的 Rancher 并没有自动为我更新证书,所以出现了错误,这里特别说一下证书已经过期后的处理方法。
1、将服务器的时间往后调,调到证书有效期之内。
2、docker exec 进入 rancher 容器,然后执行如下命令。
kubectl --insecure-skip-tls-verify -n kube-system delete secrets k3s-serving
kubectl --insecure-skip-tls-verify delete secret serving-cert -n cattle-system
rm -f /var/lib/rancher/k3s/server/tls/dynamic-cert.json
1
2
3
3、退出 docker 容器命令行,重启 rancher 容器 docker restart <rancher_server_id>
4、执行命令刷新参数 curl --insecure -sfL https://server-url/v3
5、再重启 rancher 容器 docker restart <rancher_server_id>
6、恢复并校准服务器时间。
官方文档: https://docs.rancher.cn/docs/rancher2/trending-topics/certificate-rotation/_index/
处理rancher-webhook证书
详见:https://shanhy.blog.csdn.net/article/details/121925034
Rancher 轮换证书 和 Rancher 自身证书过期处理相关推荐
- kubeadm修改默认证书有效期,解决证书过期问题
kubeadm 修改默认证书有效期 前言 出于安全考虑,k8s 团队推荐定期更新版本,因此kubeadm生成的证书,有效期默认在代码中写死为1年,一旦证书过期,k8s集群将会崩溃,因此,续期 or 升 ...
- iOS开发证书、bundle ID、App ID、描述文件、p12文件,企业证书打包发布,及过期处理
文章目录 1 .iOS开发证书,描述文件,bundle ID的关系 2. Apple开发账号添加团队成员 3 .开发证书,生产证书,描述文件,AppID关系及生成. 4.证书导出p12文件 5.描述文 ...
- Kubernetes kubeadm 证书到期,更新证书
版本 服务 版本 CentOS 7.8 Kubernetes 1.18.x 证书问题 可能很多人在一开始学习 k8s 的时候,没有注意过证书的问题,在使用 kubeadm 安装 k8s 单机/集群 ...
- 200 ssl服务器证书无效_服务器证书无效网站显示异常怎么办?
我们每天都在运用网络, 所以说网络的正常对于我们来说是太重要了.但是在遇到网络问题的时候,有时候我们真的是特别苦恼,因为不会解决,那么现在我就给大家来介绍一些关于网络问题的一个解决方法,首先我们就来看 ...
- 密码学专题 证书和CA指令 证书和CA功能概述
为什么需要证书 实现了公钥和私钥的相互验证,但是任何人都可以生成很多的密钥对,密钥对并没有关联实体身份,因此诞生可数字证书 前提是CA是所有用户都信任的 用户需要将自己的信息和公钥交给CA进行认证生成 ...
- 多个域名泛域名证书和多域名证书
现在很多网站经营者已经不止经营一个网站了,所以现在不论是个人或者企业都需要为多个网站的数据安全进行负责,这时候给每个网站单独申请单域名SSL证书并且进行管理就会耗费很多的成本,也不利于管理者对自己旗下 ...
- SSL证书的根证书和中间根证书的区别
SSL证书的根证书和中间根证书的区别. 什么是根证书? 根证书是指CA机构颁发SSL证书的核心,是信任链的起始点. 根证书是浏览器是否对SSL证书每个浏览器都有一个根证书库?有的浏览器是采用自主的根证 ...
- 根证书和中间根证书之间有什么区别?
随着SSL证书的广泛应用,申请SSL证书的人也越来越多,但是很多使用SSL证书的用户其实并不太了解SSL证书.他们仅仅是因为要把站点从HTTP转换到HTTPS而申请使用SSL证书,而最终用户也只是获取 ...
- ca安全证书字段_CA数字证书常见问题解答
原标题:CA数字证书常见问题解答 1. CA证书是否收费? 证书首次申请免费,更新免费. 2. CA证书如何办理? 方式1:登录和盛天元官网www.qdhsty.com在线预约,在线申请成功后根据预约 ...
最新文章
- JBoss 类加载器问题解决
- 即时通讯音视频开发(三):视频编解码之编码基础
- javascript中对一个对象数组按照对象某个属性进行排序
- Java 数组及多维数组
- 从 Promise、Async/Await 、Generator等角度实现一个 sleep 函数
- 基于 HTML5 WebGL 的 3D 工控裙房系统 1
- javascript基础(对象继承与引用)
- 模仿QQ侧滑样式,借鉴了张鸿洋的最简单侧滑
- 计算机毕业设计 SSM+Vue房屋出租系统 房屋租赁合同信息管理系统 房屋租售管理系统Java Vue MySQL数据库 远程调试 代码讲解
- 军品研制阶段划分以及各阶段工作
- 用计算机投屏图片,电脑网页投屏到电视
- 希特管理学(希特)【内容摘要】
- linux的自动挂载
- class中__dict__的理解,Python3
- Graph4Rec: 基于图神经网络的推荐系统通用工具包
- C语言结构体(这一篇就够了)
- 腾讯为何急于收购“弃子”搜狗 ?
- 网络数据包片段拼合(连续h264片段拼接成完整h264 slice)(三)循环体移到外部调用,便于调用者控制
- 【Unity】使用RootMotion跟运动驱动NavMeshAgent导航
- 2019年终总结 千里之行始于足下