zoukankan      html  css  js  c++  java
  • 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
    
    
    
     
    

     

  • 相关阅读:
    linux软件名规则
    给php开启mysql扩展
    centos6可用的Apache管理脚本
    Centos下设置redis开机自启动
    拆卸mysql
    如何判断是否在一个网路中
    linux 如何清理僵尸进程
    如何查找僵尸进程并Kill之,杀不掉的要查看父进程并杀之
    一张图告诉你php的命名空间和自动加载
    PHP的文件加载机制到底是什么目录
  • 原文地址:https://www.cnblogs.com/huningfei/p/12699280.html
Copyright © 2011-2022 走看看