kubeadm管理证书
在管理证书之前,你需要了解kubernetes如何使用PKI证书的相关知识:官方文档
检查证书到期时间
<强>检查截止强>可用于检查证书过期时间:
<代码> kubeadmα能够检查截止代码>
输出如下内容;
<代码>证书到期剩余时间外部管理 管理。2020年10月06日相依03:56 UTC 364 d 2020年10月06日apiserver 41 UTC 364 d 2020年10月06日apiserver-etcd-client 03:55 UTC 364 d 2020年10月06日apiserver-kubelet-client 03:55 UTC 364 d controller-manager。2020年10月06日相依03:56 UTC 364 d 2020年10月02日etcd-healthcheck-client 12:14 UTC 361 d 2020年10月02日etcd-peer 12:14 UTC 361 d 2020年10月02日etcd-server 12:14 UTC 361 d 2020年10月06日front-proxy-client 03:55 UTC 364 d 调度器。2020年10月06日相依03:56 UTC 364 d没有代码>
该命令显示了所有证书的到期/剩余时间,包括在等/kubernetes pki目录下的客户端证书及由kubeadm嵌入到KUBECONFIG文件中的客户端证书(admin.conf, controller-manager.conf和scheduler.conf)。
注意:
<李> kubelet.conf未包含在上面的列表中,因为kubeadm将已将其配置为自动更新。李> <李> kubeadm无法管理由外部CA签名的证书。李>
引用>自动续订证书
自动续订指的是,<强>在用kubeadm升级控制平面时自动更新所有证书。强>
如果对证书续约没有要求,并定期升级kubernetes版本,每次升级间隔时间少于1年,最佳做法是经常升级集群以确保安全。
如果不想在升级集群时续约证书,则给kubeadm升级应用或kubeadm升级节点传递参数:<强>——certificate-renewal=false 强>
手动续订证书
使用<强> kubeadmα能够更新>强命令可以随时手动续订证书,该命令使用存储在/etc/kubernetes pki中的CA(或front-proxy-CA)证书和密钥来更新证书。
<>强如果是HA集群,则在所有控制平面执行强>。
引用><强> kubeadmαcerts命令详解:强>
<代码>可用命令: 证书密钥生成证书和关键 检查截止检测证书过期时间 更新续订Kubernetes集群的证书代码>用的最多的续订证书的<强> 强>更新子命令,现在来看下该命令帮助:
<代码> root@k8s-master: ~ # kubeadmα能够更新- h 该命令并不意味着自己运行。看到可用子命令的列表。 用法: kubeadmα能够更新(旗帜) kubeadmα能够更新(命令) 可用命令: 管理。conf更新证书嵌入kubeconfig文件管理使用和kubeadm本身 所有更新所有可用的证书 apiserver更新证书服务Kubernetes API apiserver-etcd-client apiserver使用访问etcd更新证书 apiserver-kubelet-client更新的证书服务器连接kubelet API controller-manager。配置更新证书控制器嵌入到kubeconfig文件管理器使用 etcd-healthcheck-client更新证书活性探测healtcheck etcd etcd-peer更新证书etcd节点相互通信 为服务etcd etcd-server更新证书 front-proxy-client更新证书前代理客户端 调度器。配置更新证书嵌入在调度器kubeconfig文件管理器使用 国旗: - h,帮助帮助更新 全球标志: ——日志文件如果非空字符串,使用这个日志文件 ——log-file-max-size使用uint定义了日志文件的最大大小可以长到。单位是字节。如果该值为0,最大文件大小是无限的。1800(默认) ——rootfs字符串(实验)的路径“真实”的主机根文件系统。 ——skip-headers如果真的,避免头前缀的日志消息 ——skip-log-headers如果真的,避免头打开日志文件 - v, v级数量的日志级别冗长代码> >之前如上所知,<>指定某个证书就能续订该证书,指定所有
则续订所有证书。强>命令执行后,注意:
<李>无论证书的到期时间如何,都会无条件地续订一年。李> <李>证书的圣等信息基于原证书,无需再次提供。李> <李>更新执行后,为使更改生效,需要重启控制平面组件。李>
kubeadmαcerts命令仅支持v1.15及其以上的版本。
引用>示例:手动续订apiserver的证书-apiserver.crt h5>
从上面检测中知道,当前apiserver。2020年10月06日crt到期时间是03:55 UTC,剩余364 d。
如何使用kubeadm管理证书吗?