k8s 证书过期时间调整

检查证书有限期 kubeadm 部署集群默认证书有效期为一年

cd /etc/kubernetes/pki
openssl x509 -in apiserver.crt -text -noout

  Validity
        Not Before: Jun 12 04:41:18 2019 GMT
        Not After : Jun 12 04:41:18 2020 GMT

go 环境部署
wget https://dl.google.com/go/go1.12.7.linux-amd64.tar.gz
tar -xf go1.12.1.linux-amd64.tar.gz -C /usr/local
vi /etc/profile export PATH=$PATH:/usr/local/go/bin
source /etc/profile

下载源码
git clone https://github.com/kubernetes/kubernetes.git
查看当前版本
kubeadm version
[[email protected] kubernetes]# pwd /root/kubernetes
git checkout -b remotes/origin/release-1.14.0 v1.14.0 #修改至当前版本

修改 Kubeadm 源码包更新证书策略
vim cmd/kubeadm/app/util/pkiutil/pki_helpers.go

增加 const duration3650d = time.Hour * 24 * 365 * 100 #表示一小时24365 表示100年 NotAfter: time.Now().Add(duration36500d).UTC(), #这一行在下面修改add的值就行,如下

make WHAT=cmd/kubeadm GOFLAGS=-v #只编译kubeadm
cp _output/bin/kubeadm /root/kubeadm-new

更新 kubeadm
将 kubeadm 进行替换
cp /usr/bin/kubeadm /usr/bin/kubeadm.old
cp /root/kubeadm-new /usr/bin/kubeadm
chmod a+x /usr/bin/kubeadm

证书更新
cp -r /etc/kubernetes/pki /etc/kubernetes/pki.old
cd /etc/kubernetes/pki
kubeadm alpha certs renew all 有提示可忽略 查看证书有限期 100年
cd /etc/kubernetes/pki
openssl x509 -in apiserver.crt -text -noout

        Validity
            Not Before: Jun 12 04:41:18 2019 GMT
            Not After : Nov 18 11:22:53 2119 GMT

生成一个集群配置的yaml文件 kubeadm config view > /root/cluster.yaml
cd /etc/kubernetes
mkdir conf.old
mv *.conf conf.old

生效 /etc/kubernetes *.conf
kubeadm init phase kubeconfig all   /root/cluster.yaml 

$ ll
total 40
-rw------- 1 root root 5455 Dec 12 19:30 admin.conf
drwxr-xr-x 2 root root   93 Dec 12 19:25 conf.old
-rw------- 1 root root 5491 Dec 12 19:30 controller-manager.conf
-rw------- 1 root root 5471 Dec 12 19:30 kubelet.conf
drwxr-xr-x 2 root root  109 Jun 20 14:16 manifests
drwxr-xr-x 3 root root 4096 Jun 12  2019 pki
drwxr-xr-x 3 root root 4096 Dec 12 17:40 pki.old
-rw------- 1 root root 5439 Dec 12 19:30 scheduler.conf

已经生成最新配置文件

其他master 节点
scp -qpr master01:/usr/bin/kubeadm master02:/usr/bin/kubeadm 然后 进行证书更新操作 和 集群配置文件生成操作

完成后依次重启 etcd  kube-apiserver kube-controller-manager kube-proxy kube-scheduler  查看各个日志  没有报错则没有错

systemctl restart kubelet

$ kubectl get pod   -n kube-system
NAME                                    READY   STATUS             RESTARTS   AGE
coredns-c7b458cf-fxjpp                  1/1     Running            0          6h26m
coredns-c7b458cf-gfsqt                  0/1     Terminating        0          31d
coredns-c7b458cf-sxlps                  1/1     Running            8          7h18m
etcd-master01                           1/1     Running            214        183d
etcd-master02                           1/1     Running            229        183d
etcd-master03                           1/1     Running            210        183d
kube-apiserver-master01                 1/1     Running            2216       72m
kube-apiserver-master02                 1/1     Running            1823       73m
kube-apiserver-master03                 1/1     Running            2155       74m
kube-controller-manager-master01        1/1     Running            9441       71m
kube-controller-manager-master02        1/1     Running            9780       70m
kube-controller-manager-master03        1/1     Running            9431       71m
kube-proxy-glqvn                        1/1     Running            0          63m
kube-proxy-m4fhg                        1/1     Running            0          65m
kube-proxy-rjrlp                        1/1     Running            0          62m
kube-proxy-s4pfg                        1/1     Running            0          66m
kube-proxy-snl7s                        1/1     Running            0          62m
kube-proxy-v5dfz                        0/1     Terminating        0          128d
kube-scheduler-master01                 1/1     Running            9341       69m
kube-scheduler-master02                 1/1     Running            9687       69m
kube-scheduler-master03                 0/1     Error              9374       68m

  

原文地址:https://www.cnblogs.com/lixinliang/p/12217328.html

时间: 2024-10-09 03:14:07

k8s 证书过期时间调整的相关文章

Kubeadm证书过期时间调整

kubeadm 默认证书为一年,一年过期后,会导致api service不可用,使用过程中会出现:x509: certificate has expired or is not yet valid. 方案一 通过修改kubeadm 调整证书过期时间 修改代码,调整过期时间 克隆代码:git clone https://github.com/kubernetes/kubernetes.git, 切换到指定的tag或者版本修改vendor/k8s.io/client-go/util/cert/cer

修改kubeadm证书过期时间

kubernetes集群三步安装 修改kubeadm证书过期时间 本文通过修改kubeadm源码让kubeadm默认的一年证书过期时间修改为99年 我已经编译好了一个放在了github上,有需要的可以直接下 代码编译 编译环境镜像我已经放到dockerhub上了:fanux/kubernetes-build:v1.0.0 首先clone k8s 代码: git clone https://github.com/kubernetes/kubernetes 挂载到镜像中编译 docker run -

kubeadm修改证书过期时间

因为我是安装用kubeadm自动安装的,目前最新版本1.63 但是限于证书过期时间问题,需要去做更改,特此记录! 一.安装go语言. 现在新版本的k8s重新编译都需要高版本的go语言了.我这边安装的是V1.13.5 先下载:rm -rf go1.135.linux-amd64.tar.gz tar -zxvf  go1.135.linux-amd64.tar.gz mv go /usr/local/ 添加环境变量: export PATH=$PATH:/usr/local/go/bin sour

zabbix企业应用之监控域名过期时间与ssl证书过期时间

如果各位维护过n多个域名,可能会对备案与续费有所了解,备案是十分麻烦,各种流程,而续费的话,虽然比较简单,但如果你没有提前续费,可能导致域名不可用,甚至被他人给恶意注册,为了解决这样的问他,我今天给各位分享一下,如何使用zabbix监控域名过期时间与ssl证书过期时间,默认的触发器是在域名或ssl证书要过期前60天通知. 下面是监控域名过期时间的效果图 下面是监控ssl证书过期时间效果图 如何实现: 一.客户端 1.修改zabbix_agentd.conf文件 在zabbix_agentd.co

ssl证书过期时间监控

前几天,因为网易邮箱有部分域名的ssl证书过期,导致很多苹果用户的手机遇到疯狂弹窗,提示无法验证服务器身份.在我看来,这肯定是运维的锅了. 即使ssl厂商有续费提示,但是有可能因为人为的原因或者沟通的原因导致部分域名会忘记更换.所以每个https的域名都有必要添加上证书过期的提醒.(网易邮箱这次好像就是因为更换证书出现了遗漏). 如果你正在使用prometheus的作为监控工具,那么做ssl证书过期的监控就很简单了.prometheus是使用blackbox_exporter来监控http的.而

003_监测域名证书过期时间

由于因为线上证书过期,出过比较大的事故,所以就有了如下的监测证书过期的脚本 一. #!/bin/sh ### SSL Certificate Expire Day Check Script ### if [ "$1" = '' ];then echo "Need URL." exit 1;fi TARGET_URL=$1 EXP_DAY=`openssl s_client -connect ${TARGET_URL}:443 < /dev/null 2>

k8s 证书过期解决

下载kubernetest 源码 apt -get install git git clone https://github.com/kubernetes/kubernetes.git, 切换分支 cd kubernetes && git checkout -b remotes/origin/release-1.13 v1.13.0 下载docker编译环境 https://hub.docker.com/r/gcrcontainer/kube-cross/tags?page=2  在doc

zabbix-监控ssl证书过期时间

脚本: [[email protected] shell]# cat cert_check.sh  #!/bin/sh ### SSL Certificate Expire Day Check Script ### if [ "$1" = '' ];then     echo "Need URL."     exit 1;fi TARGET_URL=$1 EXP_DAY=`openssl s_client -connect ${TARGET_URL}:443 <

关于 ICTCLAS 2015 / NLPIR 出现的证书过期以及Cannot open Configure file 问题

今天使用的时候出现了证书过期,修改了过后出现的是Cannot open Configure file 之类的问题,但是如果项目里存在Data文件夹,这个错误是不应该存在的 搞了一个晚上,目前就找到了一个解决方案 就是调整本机的时间,这个问题是我在8月1号出现的,我调回了7月30,但是还是用不了,原来是一旦执行过后显示了证书过期Data文件就会进行相应的修改并且保存 所以解决方案就是下个新的NLPIR/ICTCLAS 2015 ,在运行程序之前把本机时间修改了 已经发邮件给张教授,不知道多久才能解