kubernetes-kubeadm自動生成的證書過期的解決方法
阿新 • • 發佈:2019-03-11
hour exp cti 編輯 1.2 oca x509 set 文件添加
拉取kubernetes的源碼:
git clone https://github.com/kubernetes/kubernetes.git
切換版本:
cd kubernetes && git checkout -b remotes/origin/release-1.12 v1.12.3
安裝Go環境:
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
修改源碼:
cd /kubernetes/staging/src/k8s.io/client-go/util/cert/cert.go #編輯 cert.go文件
maxAge := time.Hour * 24 * 365 #修改前
maxAge := time.Hour * 24 * 365 * 50 #修改後 給證書期限為50年
編譯Go:
cd /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
kubernetes-kubeadm自動生成的證書過期的解決方法