kubernetes 클러스터를 최초 설치 시, 생성되는 인증서의 기한은 1년입니다. 이 인증서 기간이 만료되면 kubernetes 클러스터를 사용할 수 없어, 인증서를 주기적으로 갱신해야 합니다.
Master Node 3대, Worker Node 2대
k8s 버전 1.19.4
ETCDCTL_API=3 etcdctl \
--endpoints=https://127.0.0.1:2379 \
--cacert=/etc/kubernetes/ssl/etcd/ca.crt \
--cert=/etc/kubernetes/ssl/etcd/server.crt \
--key=/etc/kubernetes/ssl/etcd/server.key \
snapshot save $BACKUP_ETCD.db
버전에 따라 인증서의 경로가 ssl이 아닌 pki인 경우가 있습니다.
cp /etc/kubernetes ./
엔지니어라면 항상 백업은 필수 ❗❗
각 Master Node의 인증서는 다르기 때문에, 모든 Master Node에서 각각 백업하여야 합니다.
kubernetes version <= 1.19
kubeadm alpha certs renew all
이후 kubernetes verion
kubeadm certs renew all
kubeadm alpha certs check-expiration
---
CERTIFICATE EXPIRES RESIDUAL TIME CERTIFICATE AUTHORITY EXTERNALLY MANAGED
admin.conf Jan 30, 2024 05:02 UTC 364d no
apiserver Jan 30, 2024 05:02 UTC 364d ca no
apiserver-etcd-client Jan 30, 2024 05:02 UTC 364d etcd-ca no
apiserver-kubelet-client Jan 30, 2024 05:02 UTC 364d ca no
controller-manager.conf Jan 30, 2024 05:02 UTC 364d no
etcd-healthcheck-client Jan 30, 2024 05:02 UTC 364d etcd-ca no
etcd-peer Jan 30, 2024 05:02 UTC 364d etcd-ca no
etcd-server Jan 30, 2024 05:02 UTC 364d etcd-ca no
front-proxy-client Jan 30, 2024 05:02 UTC 364d front-proxy-ca no
scheduler.conf Jan 30, 2024 05:02 UTC 364d no
CERTIFICATE AUTHORITY EXPIRES RESIDUAL TIME EXTERNALLY MANAGED
ca Oct 15, 2032 05:35 UTC 9y no
etcd-ca Oct 15, 2032 05:35 UTC 9y no
front-proxy-ca Oct 15, 2032 05:35 UTC 9y no
kube-scheduler, kube-apiserver, kube-controller-manager, etcd 순서로 재기동하여 갱신된 인증서를 반영합니다.
각 Master Node의 인증서는 다르기 때문에, 모든 Master Node에서 갱신되어야 합니다.
cp /etc/kubernetes/admin.conf ~/.kube/config