Inhalt

Einleitung

Voraussetzung

Überprüfen, ob die Zertifikate abgelaufen sind

Erneuern Sie die Zertifikate

Überprüfen Sie erneut, ob die Zertifikate erneuert wurden.

kubelet.conf ändern

Admin.conf kopieren

System neu starten

Stellen Sie sicher, dass der Befehl kubectl funktioniert.

Einleitung

In diesem Dokument wird das Verfahren zur Verlängerung von Kubernetes-Zertifikaten in Cisco 5G RCM (Redundancy Configuration Manager) beschrieben.

Voraussetzung

Wenn RCM High Availability eingerichtet ist, muss die Prozedur zuerst auf dem Standby-RCM ausgeführt werden. Anschließend muss ein Switchover durchgeführt und die Prozedur auf dem neuen Standby-RCM ausgeführt werden. Wenn keine RCM High Availability verfügbar ist, ist UP-Redundanz während des RCM-Neustarts, der Teil des Prozesses zur Erneuerung von Zertifikaten ist, nicht verfügbar.

Überprüfen, ob die Zertifikate abgelaufen sind

Um sicherzustellen, dass Zertifikate abgelaufen sind, führen Sie sudo kubeadm alpha certs check-expiration aus.

ubuntu@rcm:~$ sudo kubeadm alpha certs check-expiration

CERTIFICATE               EXPIRES                  RESIDUAL TIME   EXTERNALLY MANAGED

admin.conf                Oct 31, 2024 03:34 UTC   <invalid>       no

apiserver                 Oct 31, 2024 03:34 UTC   <invalid>       no

apiserver-etcd-client     Oct 31, 2024 03:34 UTC   <invalid>       no

apiserver-kubelet-client  Oct 31, 2024 03:34 UTC   <invalid>       no

controller-manager.conf   Oct 31, 2024 03:34 UTC   <invalid>       no

etcd-healthcheck-client   Oct 31, 2024 03:34 UTC   <invalid>       no

etcd-peer                 Oct 31, 2024 03:34 UTC   <invalid>       no

etcd-server               Oct 31, 2024 03:34 UTC   <invalid>       no

front-proxy-client        Oct 31, 2024 03:34 UTC   <invalid>       no

scheduler.conf            Oct 31, 2024 03:34 UTC   <invalid>       no

Erneuern Sie die Zertifikate

Führen Sie sudo kubeadm alpha certs renew alle zu erneuern die Zertifikate.

ubuntu@rcm:~$ sudo kubeadm alpha certs renew all

certificate embedded in the kubeconfig file for the admin to use and for kubeadm itself renewed

certificate for serving the Kubernetes API renewed

certificate the apiserver uses to access etcd renewed

certificate for the API server to connect to kubelet renewed

certificate embedded in the kubeconfig file for the controller manager to use renewed

certificate for liveness probes to healtcheck etcd renewed

certificate for etcd nodes to communicate with each other renewed

certificate for serving etcd renewed

certificate for the front proxy client renewed

certificate embedded in the kubeconfig file for the scheduler manager to use renewed

Überprüfen Sie erneut, ob die Zertifikate erneuert wurden.

Führen Sie sudo kubeadm alpha certs check-expiration aus, um zu überprüfen, ob die Zertifikate erneuert werden.

ubuntu@rcm:~$ sudo kubeadm alpha certs check-expiration

CERTIFICATE               EXPIRES                  RESIDUAL TIME   EXTERNALLY MANAGED

admin.conf                Nov 01, 2025 03:34 UTC   364d            no

apiserver                 Nov 01, 2025 03:34 UTC   364d            no

apiserver-etcd-client     Nov 01, 2025 03:34 UTC   364d            no

apiserver-kubelet-client  Nov 01, 2025 03:34 UTC   364d            no

controller-manager.conf   Nov 01, 2025 03:34 UTC   364d            no

etcd-healthcheck-client   Nov 01, 2025 03:34 UTC   364d            no

etcd-peer                 Nov 01, 2025 03:34 UTC   364d            no

etcd-server               Nov 01, 2025 03:34 UTC   364d            no

front-proxy-client        Nov 01, 2025 03:34 UTC   364d            no

scheduler.conf            Nov 01, 2025 03:34 UTC   364d            no

kubelet.conf ändern

Vor der Version 1.17 von kubeadm müssen Sie kubelet.conf manuell ändern. Ersetzen Sie die Clientzertifikatdaten und die Clientschlüsseldaten durch diese.

/etc/kubernetes/kubelet.conf

client-certificate:/var/lib/kubelet/pki/kubelet-client-current.pem

client-key: /var/lib/kubelet/pki/kubelet-client-current.pem

Admin.conf kopieren

Kopieren Sie admin.conf, um .kube/config zu überschreiben.

sudo cp /etc/kubernetes/admin.conf ~/.kube/config

System neu starten

sudo reboot

Stellen Sie sicher, dass der Befehl kubectl funktioniert.

Stellen Sie nach dem Neustart sicher, dass der Befehl kubectl einwandfrei funktioniert.

ubuntu@rcm:~$ kubectl get node

NAME   STATUS   ROLES       AGE   VERSION

rcm    Ready    master,oam  16d   v1.15.12