kubernetes-kubeadm自动生成的证书过期的解决方法
kubernetes-kubeadm自动生成的证书过期的解决方法
拉取kubernetes的源码:
|
1
|
git clone https://github.com/kubernetes/kubernetes.git |
切换版本:
|
1
|
cd kubernetes && git checkout -b remotes/origin/release-1.13 v1.13.0 |
安装Go环境:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
wget https://dl.google.com/go/go1.11.2.linux-amd64.tar.gztar zxvf go1.11.2.linux-amd64.tar.gz -C /usr/local #编辑/etc/profile文件添加如下:#go settingexport GOROOT=/usr/local/goexport GOPATH=/usr/local/gopathexport PATH=$PATH:$GOROOT/binsource /etc/profile 生效验证:go versiongo version go1.11.2 linux/amd64 |
修改源码:
|
1
2
|
cd /kubernetes/staging/src/k8s.io/client-go/util/cert/cert.go#编辑 cert.go文件 |
maxAge := time.Hour * 24 * 365 #修改前
NotAfter: time.Now().Add(duration365d).UTC()
maxAge := time.Hour * 24 * 365 * 50 #修改后 给证书期限为50年
NotAfter: time.Now().Add(duration365d * 50).UTC()
编译Go:
|
1
|
cd /kubernetes/ && make WHAT=cmd/kubeadm<br>查看编译后的文件 |
|
1
|
ls -l /data/kubernetes/_output/bin/kubeadm |
|
1
|
<strong>替换kubeadm</strong> |
|
1
2
|
mv /usr/bin/kubeadm /usr/bin/kubeadm_backupln -s /data/kubernetes/_output/bin/kubeadm /usr/bin/kubeadm |
|
1
|
重新初始化集群并查看证书
|
1
2
|
cd /etc/kubernetes/pkiopenssl x509 -in front-proxy-client.crt -noout -text |grep Not |
目录 返回
首页