kubernetes-kubeadm自動生成的證書過期的解決方法


拉取kubernetes的源碼:

git clone https://github.com/kubernetes/kubernetes.git

切換版本:

cd kubernetes && git checkout -b remotes/origin/release-1.13 v1.13.0

安裝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   #修改前       

NotAfter:     time.Now().Add(duration365d).UTC()

 maxAge := time.Hour * 24 * 365 * 50  #修改后   給證書期限為50年

NotAfter:     time.Now().Add(duration365d * 50).UTC()

編譯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

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM