记录日常工作关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题。

解决kubernetes默认证书1年有效期问题


拉取源码

cd /data && git clone https://github.com/kubernetes/kubernetes.git


切换到指定版本

以V1.12.3为例

git checkout -b remotes/origin/release-1.12  v1.12.3


安装go环境

cd /data/soft && wget https://dl.google.com/go/go1.11.2.linux-amd64.tar.gz
tar zxvf go1.11.2.linux-amd64.tar.gz  -C /usr/local 

编辑/etc/profile文件添加如下:

#go setting
export GOROOT=/usr/local/go
export GOPATH=/usr/local/gopath
export PATH=$PATH:$GOROOT/bin

source /etc/profile 生效

验证:

go version
go version go1.11.2 linux/amd64


修改源码

/data/kubernetes/staging/src/k8s.io/client-go/util/cert/cert.go

112  NotAfter:     time.Now().Add(duration365d * 10).UTC(),
187  NotAfter:  validFrom.Add(maxAge *10),
215  NotAfter:  validFrom.Add(maxAge * 10),

原来1年 ; * 10 表示10年 


编译

cd /data/kubernetes/ && make WHAT=cmd/kubeadm


查看编译之后文件

ls -l /data/kubernetes/_output/bin/kubeadm

替换kubeadm

mv /usr/bin/kubeadm /usr/bin/kubeadm_backup
ln -s /data/kubernetes/_output/bin/kubeadm /usr/bin/kubeadm

重新初始化集群


查看证书

cd /etc/kubernetes/pki

openssl x509 -in front-proxy-client.crt   -noout -text  |grep Not
            Not Before: Nov 28 09:07:02 2018 GMT
            Not After : Nov 25 09:07:03 2028 GMT

openssl x509 -in apiserver.crt   -noout -text  |grep Not
            Not Before: Nov 28 09:07:04 2018 GMT
            Not After : Nov 25 09:07:04 2028 GMT


转载请标明出处【解决kubernetes默认证书1年有效期问题】。

《www.92cto.com》 虚拟化云计算,系统运维,安全技术服务.

网站已经关闭评论