惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
GbyAI
GbyAI
P
Proofpoint News Feed
Engineering at Meta
Engineering at Meta
Recent Announcements
Recent Announcements
L
LangChain Blog
B
Blog
阮一峰的网络日志
阮一峰的网络日志
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
M
MIT News - Artificial intelligence
D
Docker
WordPress大学
WordPress大学
J
Java Code Geeks
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The GitHub Blog
The GitHub Blog
博客园 - 叶小钗
Last Week in AI
Last Week in AI
Stack Overflow Blog
Stack Overflow Blog
有赞技术团队
有赞技术团队
MyScale Blog
MyScale Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
MongoDB | Blog
MongoDB | Blog
博客园 - Franky

jobcher on 打工人日志

2023-12-21 打工人日报 2023-12-20 打工人日报 2023-12-19 打工人日报 2023-12-18 打工人日报 2023-12-17 打工人日报 2023-12-16 打工人日报 2023-12-15 打工人日报 2023-12-14 打工人日报 2023-12-13 打工人日报 2023-12-12 打工人日报 2023-12-11 打工人日报 2023-12-10 打工人日报 2023-12-09 打工人日报 2023-12-08 打工人日报 2023-12-07 打工人日报 2023-12-06 打工人日报 2023-12-05 打工人日报 2023-12-04 打工人日报 2023-12-03 打工人日报 2023-12-02 打工人日报 2023-12-01 打工人日报 2023-11-30 打工人日报 2023-11-29 打工人日报 2023-11-28 打工人日报 2023-11-27 打工人日报 2023-11-26 打工人日报 2023-11-25 打工人日报 2023-11-24 打工人日报 2023-11-23 打工人日报 2023-11-22 打工人日报
Kubernetes — 更新证书
2022-11-15 · via jobcher on 打工人日志

背景

使用 kubeadm 安装 kubernetes 集群非常方便,但是也有一个比较烦人的问题就是默认的证书有效期只有一年时间,所以需要考虑证书升级的问题

检查证书

由 kubeadm 生成的客户端证书默认只有一年有效期,我们可以通过 check-expiration 命令来检查证书是否过期:

1kubeadm alpha certs check-expiration

该命令显示 /etc/kubernetes/pki 文件夹中的客户端证书以及 kubeadm 使用的 KUBECONFIG 文件中嵌入的客户端证书的到期时间/剩余时间

手动更新

kubeadm alpha certs renew
这个命令用 CA(或者 front-proxy-CA )证书和存储在 /etc/kubernetes/pki 中的密钥执行更新。
高可用的集群,这个命令需要在所有控制面板节点上执行

具体执行

接下来我们来更新我们的集群证书,下面的操作都是在 master 节点上进行

  1. 备份节点
1$ mkdir /etc/kubernetes.bak
2$ cp -r /etc/kubernetes/pki/ /etc/kubernetes.bak
3$ cp /etc/kubernetes/*.conf /etc/kubernetes.bak
  1. 备份 etcd 数据目录
1$ cp -r /var/lib/etcd /var/lib/etcd.bak
  1. 执行更新证书的命令
1kubeadm alpha certs renew all --config=kubeadm.yaml
  1. 检查更新
1kubeadm alpha certs check-expiration
  1. 更新下 kubeconfig 文件
1kubeadm init phase kubeconfig all --config kubeadm.yaml
  1. 覆盖掉原本的 admin 文件
1$ mv $HOME/.kube/config $HOME/.kube/config.old
2$ cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
3$ chown $(id -u):$(id -g) $HOME/.kube/config
  1. 重启 kube-apiserver、kube-controller、kube-scheduler、etcd ,查看 apiserver 的证书的有效期
1echo | openssl s_client -showcerts -connect 127.0.0.1:6443 -servername api 2>/dev/null | openssl x509 -noout -enddate

总结

可以看到现在的有效期是一年过后的,证明已经更新成功了。