更新node_kubernetes证书更新

适用环境:

kubeadm部署的k8s集群,默认证书位置为/etc/kubernetes/pki

如果环境中证书目录为非pki(以ssl为例),则需创建对应软连接。

本文以高可用集群为例(3 master)

master节点:

  1. 查看证书有效期
cd /etc/kubernetes
openssl x509 -in ssl/apiserver.crt -noout -enddate 

2. 更新过期证书(/etc/kubernetes) (master1 节点)

创建软连接pki -> ssl : ln -s ssl/ pki    (如pki存在,可略过)kubeadm alpha certs renew apiserver 
kubeadm alpha certs renew apiserver-kubelet-client 
kubeadm alpha certs renew front-proxy-client 

3. 更新kubeconfig(/etc/kubernetes)(master1 节点)

需更新admin.conf / scheduler.conf / controller-manager.conf / kubelet.conf

kubeadm alpha certs renew admin.conf
kubeadm alpha certs renew controller-manager.conf
kubeadm alpha certs renew scheduler.conf# 以下命令中以master1为例,请根据集群实际节点名称替换。
kubeadm alpha kubeconfig user --client-name=system:node:master1 --org=system:nodes > kubelet.conf

86c76dc6b4e09e7667603cb5fccd7302.png

4. 如上述kubeconfig中apiserver地址非lb地址,则修改为lb地址:(master1 节点)

https://192.168.0.13:6443 -> https://{ lb domain or ip }:6443

5. 重启k8s master组件:(master1 节点)

docker ps -af name=k8s_kube-apiserver* -q | xargs --no-run-if-empty docker rm -f
docker ps -af name=k8s_kube-scheduler* -q | xargs --no-run-if-empty docker rm -f
docker ps -af name=k8s_kube-controller-manager* -q | xargs --no-run-if-empty docker rm -f
systemctl restart kubelet

6. 验证kubeconfig有效性及查看节点状态 (master1 节点)

kubectl get node –kubeconfig admin.conf
kubectl get node –kubeconfig scheduler.conf
kubectl get node –kubeconfig controller-manager.conf
kubectl get node –kubeconfig kubelet.conf

7. 同步master1证书/etc/kubernetes/ssl至master2、master3的对应路径中/etc/kubernetes/ssl(同步前建议备份旧证书)

证书路径:/etc/kubernetes/ssl

8. 更新kubeconfig(/etc/kubernetes)(master2, master3)

kubeadm alpha certs renew admin.conf
kubeadm alpha certs renew controller-manager.conf
kubeadm alpha certs renew scheduler.conf# 以下命令中以master2、master3为例,请根据集群实际节点名称替换。
kubeadm alpha kubeconfig user --client-name=system:node:master2 --org=system:nodes > kubelet.conf (master2)
kubeadm alpha kubeconfig user --client-name=system:node:master3 --org=system:nodes > kubelet.conf (master3)

9. 如上述kubeconfig中apiserver地址非lb地址,则修改为lb地址:(master2、master3)

https://192.168.0.13:6443 -> https://{ lb domain or ip }:6443

注:涉及文件:admin.conf、controller-manager.conf、scheduler.conf、kubelet.conf

10. 重启master2、master3中对应master组件

docker ps -af name=k8s_kube-apiserver* -q | xargs --no-run-if-empty docker rm -f
docker ps -af name=k8s_kube-scheduler* -q | xargs --no-run-if-empty docker rm -f
docker ps -af name=k8s_kube-controller-manager* -q | xargs --no-run-if-empty docker rm -f
systemctl restart kubelet

11. 验证kubeconfig有效性 (master2、master3)

kubectl get node –kubeconfig admin.conf
kubectl get node –kubeconfig scheduler.conf
kubectl get node –kubeconfig controller-manager.conf
kubectl get node –kubeconfig kubelet.conf

12. 更新~/.kube/config (master1、master2、master3)

cp admin.conf ~/.kube/config

注:如node节点也需使用kubectl,将master1上的~/.kube/config拷贝至对应node节点~/.kube/config

13. 验证~/.kube/config有效性:

 kubectl get node  查看集群状态

worker节点:(node节点逐个操作,若kubelet已经配置了证书自动更新,则可略过该步骤)

1. kubeadm token list 查看输出若为空或显示日期过期,则需重新生成。

2. kubeadm token create 重新生成token

3. 记录token值

b3975ee832adaa911df6881e7e7952a3.png

4. 替换node节点/etc/kubernetes/ bootstrap-kubelet.conf中token (所有node节点)

a43ca3e7052d445714f507267129da1a.png

5. 删除/etc/kubernetes/kubelet.conf (所有node节点)

rm -rf /etc/kubernetes/kubelet.conf

6. 重启kubelet (所有node节点)

systemctl restart kubelet

7. 查看节点状态:

kubectl get node 验证集群状态

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489501.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python 3 关于requests库的 text / content /json

最近在爬SDFDA的数据,刚开始用urllib.request 库,一直连不到数据 ; 后来通过CHROME浏览器的F12,发现该 网站用的是JSON格式{}Content-Type: application/json,},不同于以往的提交方式“Content-Type: text/html; chars…

Matlab论文插图绘制模板第132期—函数等高线填充图

在之前的文章中,分享了Matlab函数折线图的绘制模板: 函数三维折线图: 函数网格曲面图: 函数曲面图: 函数等高线图: 进一步,再来分享一下函数等高线填充图。 先来看一下成品效果: 特…

三星固态860evo安装_固态要涨价了?我赶紧屯了这几块好货

从2019年开始,固态硬盘的价格更加适合入手了,几乎已经成为了人们装机的首选,传统的机械硬盘则开始不受重视。到2020年,春节在家闲来无事,笔者发现一些硬盘已经开始有了一定幅度的涨价现象,为了不被请去喝茶…

全球技术竞争新态势

来源:《科技参考》 2019年第11期转自:科情智库技术作为经济增长最重要的驱动力之一,被各国政府视为重要的国家核心资产,围绕着技术的国际竞争也日趋激烈,主要呈现了以下5个特点:一是各国竞相谋划布局新兴和…

cnn输入层_多尺度CNN特征图的分析与应用

本文适用于那些参与CNN架构设计的工程师和研究人员,他们厌倦了盲目尝试和错误,可以从CNN主干中选择哪些特征图以改善其模型的性能,而宁愿从早期开始设计过程的步骤,以使特征图的空间比例轮廓与训练数据集中的对象尺寸相匹配。抽象…

从5G落地看2020年科技产业投资机会

来源:兴业证券015G 商用开展,通信建设、智能终端、云端服务等领域,出现周期性机遇2019 年全球 5G 移动网络陆续商用,将直接拉动通信行业资本开支,同时刺激联网终端的需求,为 AI 及云计算等应用铺路&#xf…

cat命令详解_需要!Linux常用监视和故障排查命令详解

作者:老油条IT记公众号:老油条IT记#命令预览1.top2.ps3.nice4.kill5.iostat6.mpstat7.vmstat8.df9.du10.netstat11.ss#首先我们先来了解一下什么是进程#进程:是Linux用来表示正在运行的程序的一种抽象概念,Linux系统上所有运行的东…

C语言二维数组找出交集,【leetcode C语言实现】剑指 Offer 04. 二维数组中的查找...

题目描述在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下&#xf…

知识图谱从哪里来:实体关系抽取的现状与未来

来源:知乎(zibuyu9)作者:韩旭、高天宇、刘知远最近几年深度学习引发的人工智能浪潮席卷全球,在互联网普及带来的海量数据资源和摩尔定律支配下飞速提升的算力资源双重加持下,深度学习深入影响了自然语言处理…

线条边框简笔画图片大全_超治愈萌系手帐素材大全 美食旅游花草人物花边都备齐了...

现代人每天都生活在一个充满焦灼感的空气中,成年人的世界里,每个人都不容易。不论是生活还是工作,都充满了各种挫折。很少有人能一帆风顺,为学习、为工作、为家庭、为感情、我们总会在坎坎坷坷中成长,难免会觉得焦虑。…

红米android版本,微信红米低版本下载

微信红米低版本是适用于红米手机的低版本微信软件,此版本为7.0.0版,安装包不到一百兆,该有的功能也都挺齐全,很多用户对于微信新版本的内存占用不堪重负,那么这个历史低版本就很适合你,红米手机也能轻松兼容…

《2018-2019世界智能手机AI智商测试报告》发布会将在京举办

《2018-2019世界手机AI智商测试报告》发布会将于2019年11月21日在北京举行,本次发布会由中国科学院虚拟经济与数据科学研究中心、中国科学院大数据挖掘与知识管理重点实验室和天府大数据国际战略与技术研究院联合主办。智能手机作为人们与外界即时连接的终端设备&am…

软件需求分析文档模板_小议管理软件需求分析

从事管理软件设计,一般都是从用户需求分析开始。从事软件工作的,大概谁都知道需求分析的重要性,可能大部分人都吃过需求分析不充分的亏。兵法云,“谋定而后动”。对一个项目而言,需求分析应该是“谋”的一部分&#xf…

python日期格式转换_python中有关时间日期格式转换问题

每次遇到pandas的dataframe某列日期格式问题总会哉坑,下面记录一下常用时间日期函数.... 1、字符串转化为日期 str—>date import datetime date_str 2006-01-03 date_ datetime.datetime.strptime(date_str,%Y-&m-%d) 这是单个字符串的转化,其…

38页PPT深度解析:半导体设备产业链全景图

来源:平安证券要点摘要:1、我国半导体设备市场空间大,增长动力强劲。半导体设备主要用于半导体制造和封测流程,分为晶圆加工设备(核心为光刻机、刻蚀机、薄膜沉积设备)、封装设备和检测设备。2018年全球半导…

XGBoost参数调优完全指南(附Python代码)

XGBoost参数调优完全指南(附Python代码):http://www.2cto.com/kf/201607/528771.html https://www.zhihu.com/question/41354392 【以下转自知乎】 https://www.zhihu.com/question/45487317 为什么xgboost/gbdt在调参时为什么树的深度很少就…

科技基建,自主创芯——详解全球半导体制造行业格局

来源:芯潮今天推荐一份报告,详解全球半导体制造行业格局,本报告从以下几个角度进行分析:一、全球半导体制造市场规模及竞争格局全球半导体制造市场及行业格局中国半导体制造行业情况二、半导体制造制程技术分析28纳米是生命周期相…

python按行读取文件取消空白行_python去掉空白行的多种实现代码

测试代码 jb51.txt 1:www.jb51.net 2:www.jb51.net 3:www.jb51.net 4:www.jb51.net 5:www.jb51.net 6:www.jb51.net 7:www.jb51.net 8:www.jb51.net 9:www.jb51.net 10:www.jb51.net 11:www.jb51.net 12:www.jb51.net 13:www.jb51.net 14:www.jb51.net 15:www.jb51.net 16:www.…

android 大视图风格通知栏,Android中使用Notification实现宽视图通知栏(Notification示例二)...

Notification是在你的应用常规界面以外展现的消息。当app让系统发送一个消息的时候,消息首先以图表的形式显示在通知栏。要查看消息的详情须要进入通知抽屉(notificationdrawer)中查看。通知栏和通知抽屉html(notificationdrawer)都是系统层面控制的,你能…

计算机、数学、运筹学等领域32个重要算法

来源: 深度学习与机器视觉奥地利符号计算研究所(Research Institute for Symbolic Computation,简称RISC)的Christoph Koutschan博士在自己的页面上发布了一篇文章,提到他做了一个调查,参与者大多数是计算机…