• k8s-更改证书时间


    k8s-更改证书时间

    一 查看证书有效时间

    如果用kubeadm安装的k8s,则证书放在/etc/kubernetes/pki 这个目录下,

    然后查看证书时间,发现默认时间是一年

     

    1 [root@k8s-master01 pki]# openssl x509 -in apiserver.crt -text -noout | grep Not
    2             Not Before: Mar 19 17:36:19 2020 GMT
    3             Not After : Mar 19 17:36:19 2021 GMT

     

     

    1.1 go环境部署

     

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

    1.2 下载源码

    cd /data && git clone https://github.com/kubernetes/kubernetes.git
    git checkout -b remotes/origin/release-1.15.1 v1.15.1
    #因为我们安装的是1.15的版本
    


    1.3 修改 Kubeadm 源码包更新证书策略

     

    vim staging/src/k8s.io/client-go/util/cert/cert.go # kubeadm 1.14 版本之前
    vim cmd/kubeadm/app/util/pkiutil/pki_helpers.go # kubeadm 1.14 至今
    const duration365d = time.Hour * 24 * 365
    NotAfter: time.Now().Add(duration365d).UTC(),
    make WHAT=cmd/kubeadm GOFLAGS=-v #编译
    cp _output/bin/kubeadm /root/kubeadm-new #拷贝
    

    1.4更新kubeadm

     

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

    1.5 更新各节点证书至 Master 节点

     

    cp -r /etc/kubernetes/pki /etc/kubernetes/pki.old
    cd /etc/kubernetes/pki
    # 更新
    kubeadm alpha certs renew all --config=/root/kubeadm-config.yaml
    #查看证书时间 openssl x509 -in apiserver.crt -text -noout | grep Not

     

     

    更新:

    kubeadm alpha certs renew all --config=/root/kubeadm-config.yaml

    查看

    然后再次查看证书时间,发现有效时间变成10年了

     

    如果你有多个master节点,用脚本更新即可

     

    scp -r /root/kubeadm-config.yaml root@192.168.1.211:/root/
    
     scp -r /usr/bin/kubeadm root@192.168.1.211:/usr/bin
     然后去1.211这台机器上面执行下面的命令去更新证书即可
     kubeadm alpha certs renew all --config=/root/kubeadm-config.yaml
    
    
    
     
    

     

  • 相关阅读:
    catch tcl tk
    C语言的指针深入理解外加一精华帖
    Linux Shell编程4
    shell之测试语法
    linux 用户空间 和 内核空间 延时函数
    linux 用户空间 和 内核空间 延时函数
    C语言的指针深入理解外加一精华帖
    面向对象的编程技巧
    awk用法小结
    awk用法小结
  • 原文地址:https://www.cnblogs.com/huningfei/p/12699280.html
Copyright © 2020-2023  润新知