ベアメタルk8クラスタをデプロイしました。キューブスプレー、その証明書はまもなく期限切れになります。
openssl x509 -in /etc/kubernetes/pki/apiserver.crt -noout -text |grep ' Not '
証明書を更新するには、公式ガイド。
kubeadm certs renew all
その後、 のマニフェスト ファイルを/etc/kubernetes/manifests/
1 つずつ削除しましたが、api-server
マニフェストを に戻した後、再起動しなかったため/etc/kubernetes/manifests
、ノードを手動で再起動する必要がありました。
ここ、Docker コンテナを再起動することをお勧めします。
私の質問は次のとおりです:
- 証明書を更新する最も安全な方法は何ですか (ノードの再起動または docker の再起動)。
- この証明書更新プロセス中のパフォーマンスへの影響はどのようなものですか?
- Kubespray インストールで証明書の有効期間を定義する方法はありますか?
Kubernetes バージョン: 1.18.8
Kubeadm: v1.18.8
OS: Ubuntu 18.04
答え1
- あるいは、/etc/kubernetes/manifests/からマニフェストファイルを一時的に削除して20秒待つか、リンク同様の回避策を見つけましたここ。
-
ルート CA 証明書の更新が進行中の場合、Kubernetes コンポーネント (apiserver、scheduler、controller-manager、kubelet) とアプリケーション ポッドが再起動されます。更新はローリング更新であるため、システムは通常どおり機能しますが、更新中はパフォーマンスに若干の影響があります。影響を最小限に抑えるために、ユーザーはホストを順番に更新する必要があります。https://docs.starlingx.io/specs/specs/stx-6.0/approved/security-2008675-kubernetes-rootca-update.html
- に従ってこの問題そのような方法はないようです。