如何在 Kubernetes 1.12 中更新证书

如何在 Kubernetes 1.12 中更新证书

你好,我目前正在更新 Kubernetes 1.12 版的证书。

证书将在一个月后过期。证书过期前我们需要更新证书,并将其应用到所有系统以使服务正常运行。

有人有手册或类似的东西吗?专家的意见也很好。

即使用Google搜索,也只有针对最新版本的证书更新,而没有关于1.12等老版本证书更新后申请服务的信息。

请帮忙。

以下是我安装它的方法。

sudo apt-get update   && sudo apt-get install -qy docker.io
sudo apt-get update   && sudo apt-get install -y apt-transport-https   && curl -s 
https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb http://apt.kubernetes.io/ kubernetes-xenial main"   | sudo tee -a /etc/apt/sources.list.d/kubernetes.list   &&
sudo apt-get update
apt-get install kubelet=1.12.3-00 kubeadm=1.12.3-00 kubernetes-cni=0.6.0-00 keepalived haproxy

这是一些附加信息。这是版本信息。

kubeadm version: &version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.3", GitCommit:"435f92c719f279a3a67808c80521ea17d5715c66", GitTreeState:"clean", BuildDate:"2018-11-26T12:54:02Z", GoVersion:"go1.10.4", Compiler:"gc", Platform:"linux/amd64"}

以下是一些附加信息。这是一个命令错误。

kubeadm certs check-expiration
Error: unknown command "certs" for "kubeadm" Run 'kubeadm --help' for usage. error: unknown command "certs" for "kubeadm"

答案1

尝试运行

kubeadm alpha certs check-expiration

在后续版本中标准化的命令可能已在旧版本的 k8s 中作为实验性子命令发布;因此带有“alpha”前缀。

如果上述操作有效,您可以使用以下方法更新所有证书:

kubeadm alpha certs renew all

在较新版本的 k8s 中,有一种机制可以设置定期运行的作业,以自动更新证书。您必须手动执行此操作或使用当前 k8s 版本对其进行脚本化

相关内容