博客
关于我
Kubernetes 证书有效期更改
阅读量:634 次
发布时间:2019-03-14

本文共 4081 字,大约阅读时间需要 13 分钟。

Kubernetes相关证书详细介绍:

在更新证书之前先查看一下当前证书的过期时间

[root@k8s-master01 ~]# kubeadm alpha certs check-expirationCERTIFICATE                EXPIRES                  RESIDUAL TIME   EXTERNALLY MANAGEDadmin.conf                 Feb 20, 2022 05:57 UTC   363d            no      apiserver                  Feb 20, 2022 05:57 UTC   363d            no      apiserver-etcd-client      Feb 20, 2022 05:57 UTC   363d            no      apiserver-kubelet-client   Feb 20, 2022 05:57 UTC   363d            no      controller-manager.conf    Feb 20, 2022 05:57 UTC   363d            no      etcd-healthcheck-client    Feb 20, 2022 05:57 UTC   363d            no      etcd-peer                  Feb 20, 2022 05:57 UTC   363d            no      etcd-server                Feb 20, 2022 05:57 UTC   363d            no      front-proxy-client         Feb 20, 2022 05:57 UTC   363d            no      scheduler.conf             Feb 20, 2022 05:57 UTC   363d            no

Go环境部署:

[root@k8s-master01 ~]# wget https://dl.google.com/go/go1.15.6.linux-amd64.tar.gz[root@k8s-master01 ~]# tar -zxvf go1.15.6.linux-amd64.tar.gz -C /usr/local[root@k8s-master01 ~]# vim /etc/profile添加:    export PATH=$PATH:/usr/local/go/bin[root@k8s-master01 ~]# source /etc/profile

下载Kubernetes源码

[root@k8s-master01 ~]# cd /home && git clone https://github.com/kubernetes/kubernetes.git[root@k8s-master01 ~]# git clone -b 1.15.1 --depth=1 https://github.com/kubernetes/kubernetes.git	#  下载执行版本[root@k8s-master01 home]# git checkout -b remotes/origin/release-1.15.1 v1.15.1	# 切换当前Kubernetes 版本

修改 Kubeadm 源码包更新证书策略

[root@k8s-master01 home]# vim staging/src/k8s.io/client-go/util/cert/cert.go  # kubeadm 1.14 版本之前[root@k8s-master01 home]# vim cmd/kubeadm/app/util/pkiutil/pki_helpers.go # kubeadm 1.14 至今	const duration365d = time.Hour * 24 * 365	NotAfter:     time.Now().Add(duration365d).UTC(),[root@k8s-master01 home]# makeWHAT=cmd/kubeadm GOFLAGS=-v[root@k8s-master01 home]# cp _output/bin/kubeadm /root/kubeadm-new

更新 kubeadm

# 将 kubeadm 进行替换[root@k8s-master01 home]# cp /usr/bin/kubeadm /usr/bin/kubeadm.old[root@k8s-master01 home]# cp /root/kubeadm-new /usr/bin/kubeadm[root@k8s-master01 home]# chmod a+x /usr/bin/kubeadm

更新各节点证书至 Master 节点

[root@k8s-master01 home]# cp-r /etc/kubernetes/pki /etc/kubernetes/pki.old[root@k8s-master01 home]# cd /etc/kubernetes/pki[root@k8s-master01 pki]# kubeadm alpha certs renew all --config=/root/kubeadm-config.yaml[root@k8s-master01 pki]# openssl x509 -in apiserver.crt -text-noout | grep Not

HA集群其余 mater 节点证书更新

#!/bin/bashmasterNode="192.168.66.20 192.168.66.21"# for host in ${masterNode}; do#    scp /etc/kubernetes/pki/{ca.crt,ca.key,sa.key,sa.pub,front-proxy-ca.crt,front-proxy-ca.key}"${USER}"@$host:/etc/kubernetes/pki/#    scp /etc/kubernetes/pki/etcd/{ca.crt,ca.key} "root"@$host:/etc/kubernetes/pki/etcd#    scp /etc/kubernetes/admin.conf "root"@$host:/etc/kubernetes/#donefor host in${CONTROL_PLANE_IPS}; do    scp /etc/kubernetes/pki/{ca.crt,ca.key,sa.key,sa.pub,front-proxy-ca.crt,front-proxy-ca.key}"${USER}"@$host:/root/pki/    scp /etc/kubernetes/pki/etcd/{ca.crt,ca.key} "root"@$host:/root/etcd    scp /etc/kubernetes/admin.conf "root"@$host:/root/kubernetes/done

再次再看证书过期时间

[root@k8s-master01 ~]# kubeadm alpha certs check-expirationCERTIFICATE                EXPIRES                  RESIDUAL TIME   EXTERNALLY MANAGEDadmin.conf                 Feb 20, 2032 05:57 UTC   363d            no      apiserver                  Feb 20, 2032 05:57 UTC   363d            no      apiserver-etcd-client      Feb 20, 2032 05:57 UTC   363d            no      apiserver-kubelet-client   Feb 20, 2032 05:57 UTC   363d            no      controller-manager.conf    Feb 20, 2032 05:57 UTC   363d            no      etcd-healthcheck-client    Feb 20, 2032 05:57 UTC   363d            no      etcd-peer                  Feb 20, 2022 05:57 UTC   363d            no      etcd-server                Feb 20, 2022 05:57 UTC   363d            no      front-proxy-client         Feb 20, 2022 05:57 UTC   363d            no      scheduler.conf             Feb 20, 2032 05:57 UTC   363d            no

转载地址:http://txqoz.baihongyu.com/

你可能感兴趣的文章
mysql中出现Unit mysql.service could not be found 的解决方法
查看>>
mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
查看>>
Mysql中各类锁的机制图文详细解析(全)
查看>>
MySQL中地理位置数据扩展geometry的使用心得
查看>>
Mysql中存储引擎简介、修改、查询、选择
查看>>
Mysql中存储过程、存储函数、自定义函数、变量、流程控制语句、光标/游标、定义条件和处理程序的使用示例
查看>>
mysql中实现rownum,对结果进行排序
查看>>
mysql中对于数据库的基本操作
查看>>
Mysql中常用函数的使用示例
查看>>
MySql中怎样使用case-when实现判断查询结果返回
查看>>
Mysql中怎样使用update更新某列的数据减去指定值
查看>>
Mysql中怎样设置指定ip远程访问连接
查看>>
mysql中数据表的基本操作很难嘛,由这个实验来带你从头走一遍
查看>>
Mysql中文乱码问题完美解决方案
查看>>
mysql中的 +号 和 CONCAT(str1,str2,...)
查看>>
Mysql中的 IFNULL 函数的详解
查看>>
mysql中的collate关键字是什么意思?
查看>>
MySql中的concat()相关函数
查看>>
mysql中的concat函数,concat_ws函数,concat_group函数之间的区别
查看>>
MySQL中的count函数
查看>>