Contenido

Introducción

Requisito previo

Compruebe si los certificados han caducado

Renovar los certificados

Compruebe de nuevo si los certificados se han renovado

Modificar kubelet.conf

Copiar admin.conf

Reinicie el sistema

Asegúrese de que el comando kubectl funciona

Introducción

Este documento describe el procedimiento para renovar certificados Kubernetes en Cisco 5G RCM(Redundancy Configuration Manager).

Requisito previo

Si se trata de la configuración de alta disponibilidad del RCM, el procedimiento se debe ejecutar primero en el RCM en espera, luego realizar un switchover y ejecutar el procedimiento en el nuevo RCM en espera. Si no hay disponibilidad alta de RCM disponible, la redundancia UP no está disponible durante el reinicio del RCM, que forma parte del proceso de renovación de certificados.

Compruebe si los certificados han caducado

Para asegurarse de que los certificados han caducado, ejecute sudo kubeadm alpha certs check-expiry.

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

Renovar los certificados

Ejecute sudo kubeadm alpha certs renew all para renovar los certificados.

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

Compruebe de nuevo si los certificados se han renovado

Ejecute sudo kubeadm alpha certs check-expiry para comprobar si los certificados se han renovado.

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

Modificar kubelet.conf

Antes de la versión 1.17 de kubeadm, es necesario modificar manualmente kubelet.conf. Reemplace client-certificate-data y client-key-data con esto.

/etc/kubernetes/kubelet.conf

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

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

Copiar admin.conf

Copie admin.conf para sobrescribir .kube/config.

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

Reinicie el sistema

sudo reboot

Asegúrese de que el comando kubectl funciona

Después del reinicio, asegúrese de que el comando kubectl funcione correctamente.

ubuntu@rcm:~$ kubectl get node

NAME   STATUS   ROLES       AGE   VERSION

rcm    Ready    master,oam  16d   v1.15.12