Contenido

Introducción

Este documento describe el procedimiento para recuperar una instalación de Cisco DNA Center con un certificado etcd caducado. Cisco DNA Center introdujo certificados digitales para etcd en la versión 2.3.2.0 para garantizar la comunicación segura de datos a través de Kubernetes, tanto dentro de un nodo como entre nodos en un clúster. Estos certificados son válidos durante un año y se renuevan automáticamente antes de que caduquen. Los certificados renovados son procesados por un contenedor auxiliar y, a continuación, se ponen a disposición del contenedor etcd. En las versiones afectadas de Cisco DNA Center, el contenedor etcd no reconoce y activa dinámicamente esos certificados renovados y continúa señalando a los certificados caducados hasta que se reinicie etcd. Una vez que caduca el certificado, Cisco DNA Center deja de funcionar y este documento proporciona los pasos para recuperar la instalación de Cisco DNA Center afectada.

Condiciones

Versiones Afectadas:

2.3.2.x.

2.3.3.x.

2.3.5.3

2.3.7.0

Versiones fijas:

2.3.3.7 HF4

2.3.5.3 HF5

2.3.5.4 después del 12 de octubre de 2023

2.3.5.4 HF3

2.3.7.3

Síntomas

Cuando caduque el certificado, se observará uno o más de estos síntomas.

1. La GUI del Cisco DNA Center está inactiva

2. La mayoría de los servicios están inactivos

3. Estos errores se observan en la CLI

WARNING:urllib3.connectionpool:Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)'),)': /v2/keys/maglev/config/node-x.x.x.x?sorted=true&recursive=true

Recuperación

La recuperación necesita acceso al shell raíz. En 2.3.x.x, el shell restringido estaba habilitado de forma predeterminada. En 2.3.5.x y superiores, se requiere validación de token de consentimiento para acceder al shell raíz. Si el entorno afectado se encuentra en la versión 2.3.5.3, trabaje con el TAC para recuperar la instalación.

Paso 1: Verifique el problema

Desde la CLI, ejecute el comando

lista de miembros de etcdctl

Si el problema se debe a la expiración del certificado, el comando no funcionará y devolverá un error. Si el comando se ejecuta correctamente, el Centro de ADN de Cisco no se verá afectado por este problema.  Este es un ejemplo del resultado de una instalación realizada con un certificado caducado.

lista de miembros de etcdctl

cliente: el clúster etcd no está disponible o está mal configurado; error #0: x509: el certificado ha caducado o todavía no es válido: la hora actual 2023-10-20T20:50:14Z es posterior a 2023-10-12T22:47:42Z

Paso 2: Verificar el certificado

Ejecute este comando para verificar la fecha de vencimiento del certificado.

para certificados en $(ls /etc/maglev/.pki/ | grep etcd | grep -v -e key -e .cnf); do sudo openssl x509 -noout -subject -issuer -dates -in /etc/maglev/.pki/$certs;done

Introduzca la contraseña de sudo cuando se le solicite. En el resultado, compruebe si el certificado ha caducado

[sudo] contraseña para maglev:

subject=CN = etcd-client

issuer=CN = d0be82b3-0b50-e7bd-6bcd-b817c249f1c6, O = Cisco Systems, OU = Cisco DNA Center

notBefore=8 de octubre de 00:59:37 2022 GMT

notAfter=7 de octubre 00:59:37 2023 GMT

subject=CN = etcd-peer

issuer=CN = d0be82b3-0b50-e7bd-6bcd-b817c249f1c6, O = Cisco Systems, OU = Cisco DNA Center

notBefore=8 de octubre de 00:59:37 2022 GMT

notAfter=7 de octubre 00:59:37 2023 GMT

Paso 4: Reinicio de Docker

a. Borrar los contenedores salientes

docker rm -v $(docker ps -q -f status=exited)

Dependiendo del número de contenedores salientes, esto puede tardar unos minutos.

b. Reiniciar Docker

sudo systemctl restart docker

Este comando reinicia todos los contenedores y podría tardar de 30 a 45 minutos en completarse.

Paso 5: compruebe que el certificado se ha renovado

Ejecute el mismo comando desde el paso 2 para verificar que el certificado se ha renovado. Debería haber sido renovado por un año.

para certificados en $(ls /etc/maglev/.pki/ | grep etcd | grep -v -e key -e .cnf); do sudo openssl x509 -noout -subject -issuer -dates -in /etc/maglev/.pki/$certs;done

Verifique que la GUI esté accesible y que el acceso a la CLI no tenga errores.

Solución

Esta solución alternativa mantendrá Cisco DNA Center en funcionamiento durante un máximo de un año. Para obtener una solución permanente, actualice la instalación de Cisco DNA Center a una versión fija como se menciona en el aviso práctico FN74065.