Introducción
Este documento describe cómo resolver los problemas más comunes de los problemas de licencia de registro de Hyperflex.
Prerequisites
Requirements
Cisco recomienda tener conocimientos básicos sobre estos temas:
- Conexión Hyperflex
- Registro de licencias
- HTTP/HTTPS
Componentes Utilizados
La información de este documento se basa en:
- Hyperflex Data Program (HXDP) 5.0.(2a) y superior
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Antecedentes
Qué es Smart License
Cisco Smart Licensing (Smart Licensing) es una solución inteligente de gestión de licencias de software basada en la nube que simplifica las tres funciones principales de las licencias (compra, gestión e informes) en toda la organización.
Puede acceder a su cuenta de licencia inteligente aquí.
Cómo funcionan las licencias en Hyperflex
Cisco Hyperflex se integra con Smart Licensing y se habilita automáticamente de forma predeterminada al crear un clúster de almacenamiento Hyperflex. Sin embargo, para que su clúster de almacenamiento Hyperflex consuma y genere informes de licencias, debe registrarlo con Cisco Smart Software Manager (SSM) a través de su Cisco Smart Account.
Una cuenta inteligente es un repositorio basado en la nube que proporciona visibilidad completa y control de acceso a todas las licencias de software de Cisco adquiridas y las instancias de productos de su empresa.
Nota: En clústeres Hyperflex, el registro es válido durante un año. Después de eso, Hyperflex intenta automáticamente volver a registrarse para que no se requiera ninguna interacción humana.
Política de aplicación estricta
A partir de la versión HXDP 5.0(2a), algunas funciones se bloquean de la GUI de Hyperflex Connect si el clúster no cumple con la licencia.
Escenarios de ejemplo de estado de licencia:
En esta situación, el clúster cumple con el estado de licencia.
En la siguiente situación, el clúster está registrado, pero el estado de la licencia es Incumplimiento y el período de gracia oscila entre uno (1) y noventa (90) días.
En este caso, no se bloquea ninguna función, pero aparece un banner en la parte superior del menú que le solicita que active la licencia necesaria antes de que caduque el período de gracia.
En esta situación, el clúster está registrado, el estado de la licencia es Incumplimiento y el período de gracia es cero (0).
Configurar
Para obtener orientación sobre cómo registrar Hyperflex con su cuenta de Smart License, mire este video.
Verificación
Confirme que la configuración funciona correctamente.
Verifique el estado de la licencia a través de CLI. Ver el estado de registro y el estado de autorización.
Troubleshoot
Hay algunos escenarios comunes donde estos dos estados pueden fallar, ambos causados por la misma causa raíz.
Situación 1: conectividad HTTP/HTTPs
El registro de licencias se realiza a través de TCP y, más concretamente, a través de HTTP y HTTPS; por lo tanto, es fundamental permitir esta comunicación.
Pruebe la conectividad de cada VM de controlador de almacenamiento (SCVM), pero principalmente de la SCVM de IP de administración de clústeres (CMIP).
curl https://tools.cisco.com/its/service/oddce/services/DDCEService
Debe obtener el resultado que se muestra en el ejemplo; de lo contrario, significa que el tráfico está bloqueado.
<h1>DDCEService</h1>
<p>Hi there, this is an AXIS service!</p>
<i>Perhaps there will be a form for invoking the service here...</i>
Si el resultado recibido es diferente del resultado anterior, confirme la conectividad y verifique que los puertos se abran con estos comandos:
ping tools.cisco.com -c 5
nc -zv tools.cisco.com 80
nc -zv tools.cisco.com 443
Situación 2: problemas de proxy
A veces, se configura un proxy entre todos los clientes web y los servidores web públicos cuando realizan inspecciones de seguridad del tráfico.
En este caso, entre el SCVM con el CMIP y cisco.com, valide que el proxy ya está configurado en el clúster (como se muestra en el ejemplo).
hxshell:/var/log/springpath$ stcli services sch show
cloudEnvironment: production
enabled: True
emailAddress: johndoe@example.com
portalUrl:
enableProxy: True
proxyPassword:
encEnabled: True
proxyUser:
cloudAsupEndpoint: https://diag.hyperflex.io/
proxyUrl:
proxyPort: 0
si el proxy muestra ya configurado, pruebe la conectividad con la URL o la dirección IP del proxy junto con el puerto configurado.
curl -v --proxy https://url:
https://tools.cisco.com/its/service/oddce/services/DDCEService
curl -v --proxy <Proxy IP>:<Proxy Port> https://tools.cisco.com/its/service/oddce/services/DDCEService
Además, pruebe la conectividad con el proxy.
nc -vzw2 x.x.x.x 8080
Situación 3: entorno de nube
En determinadas situaciones, el entorno de nube se establece en devtest, lo que hace que el registro falle. En este ejemplo, se establece en producción.
hxshell:/var/log/springpath$ stcli services sch show
cloudEnvironment: production
cloudAsupEndpoint: https://diag.hyperflex.io/
portalUrl:
proxyPort: 0
enabled: True
encEnabled: True
proxyUser:
proxyPassword:
enableProxy: True
emailAddress: johndoe@example.com
proxyUrl:
En los registros, puede ver errores específicos cuando el entorno está configurado incorrectamente como devtest.
cat hxLicenseSvc.log | grep -ia "Name or service not known"
2021-09-01-18:27:11.557 [] [Thread-40] ERROR event_msg_sender_log - sch-alpha.cisco.com: Name or service not known
Sugerencia: a partir de la versión 5.0(2a), el usuario diag está disponible para permitir que los usuarios tengan más privilegios para solucionar problemas con el acceso a carpetas y comandos restringidos que no son accesibles a través de la línea de comandos priv, que se introdujo en la versión 4.5.x de Hyperflex.
Puede cambiar el tipo de entorno a producción y volver a intentar el registro.
diag# stcli services sch set --email johndoe@example.com --environment production --enable-proxy false
Situación 4: Protocolo de estado de certificados en línea (OCSP)
Hyperflex aprovecha los servidores OCSP y de listas de revocación de certificados (CRL) para validar los certificados HTTPS durante el proceso de registro de licencias.
Estos protocolos están diseñados para distribuir el estado de revocación a través de HTTP. Los mensajes de CRL y OCSP son documentos públicos que indican el estado de revocación de los certificados X.509 cuando falla la validación de OCSP y también falla el registro de licencias.
Sugerencia: si OCSP falla, significa que un dispositivo de seguridad intermedio interrumpe la conexión HTTP.
Para confirmar si la validación de OCSP es correcta, puede intentar descargar el archivo en la partición CMIP SCVM / tmp, como se muestra en el ejemplo.
hxshell:~$cd /tmp
hxshell:/tmp$ wget http://www.cisco.com/security/pki/trs/ios_core.p7b
--2022-08-18 00:13:37-- http://www.cisco.com/security/pki/trs/ios_core.p7b
Resolving www.cisco.com (www.cisco.com)... x.x.x.x aaaa:aaaa:aaaa:aaaa::aaaa
Connecting to www.cisco.com (www.cisco.com)|x.x.x.x|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 25799 (25K)
Saving to: 'ios_core.p7b'
ios_core.p7b 100%[=======================================================================================================================================================>] 25.19K --.-KB/s in 0.04s
2022-08-18 00:13:37 (719 KB/s) - 'ios_core.p7b' saved [25799/25799]
hxshell:/tmp$ ls -lath ios*
-rw-rw-r-- 1 diag diag 26K Jun 30 18:00 ios_core.p7b
-rw-rw-r-- 1 diag diag 26K Jun 30 18:00 ios_core.p7b.1
-rw-rw-r-- 1 diag diag 26K Jun 30 18:00 ios_core.p7b.2
-rw-rw-r-- 1 diag diag 26K Jun 30 18:00 ios_core.p7b.3
-rw-r--r-- 1 admin springpath 26K Jun 30 18:00 ios_core.p7b.4
Situación 5: certificado cambiado
En algunas redes, los dispositivos de seguridad de proxy y firewall ejecutan la inspección de Secure Sockets Layer (SSL) y pueden dañar el certificado que Hyperflex espera recibir from tools.cisco.com:443.
Para verificar que el certificado no ha sido cambiado por un proxy o firewall, en el SCVM que contiene el CMIP, ejecute el comando:
diag# openssl s_client -connect tools.cisco.com:443 -showcerts < /dev/null
Es importante señalar que la información del nombre del sujeto y del nombre del emisor debe coincidir con el certificado que se muestra en este ejemplo.
Advertencia: si al menos un campo del asunto o del emisor es diferente, el registro falla. Una regla de omisión en la inspección SSL de seguridad para las IP de administración del clúster Hyperflex y tools.cisco.com:443 puede solucionar este problema.
En este ejemplo, puede ver cómo validar la misma información recibida del certificado en Hyperflex CMIP SCVM.
hxshell:~$ su diag
diag# openssl s_client -connect tools.cisco.com:443 -showcerts < /dev/null
CONNECTED(00000003)
depth=2 C = US, O = IdenTrust, CN = IdenTrust Commercial Root CA 1
verify return:1
depth=1 C = US, O = IdenTrust, OU = HydrantID Trusted Certificate Service, CN = HydrantID Server CA O1
verify return:1
depth=0 CN = tools.cisco.com, O = Cisco Systems Inc., L = San Jose, ST = California, C = US
verify return:1
---
Certificate chain
0 s:/CN=tools.cisco.com/O=Cisco Systems Inc./L=San Jose/ST=California/C=US
i:/C=US/O=IdenTrust/OU=HydrantID Trusted Certificate Service/CN=HydrantID Server CA O1
...
<TRUNCATED>
...
1 s:/C=US/O=IdenTrust/OU=HydrantID Trusted Certificate Service/CN=HydrantID Server CA O1
i:/C=US/O=IdenTrust/CN=IdenTrust Commercial Root CA 1
...
<TRUNCATED>
...
2 s:/C=US/O=IdenTrust/CN=IdenTrust Commercial Root CA 1
i:/C=US/O=IdenTrust/CN=IdenTrust Commercial Root CA 1
...
<TRUNCATED>
...
---
Server certificate
subject=/CN=tools.cisco.com/O=Cisco Systems Inc./L=San Jose/ST=California/C=US
issuer=/C=US/O=IdenTrust/OU=HydrantID Trusted Certificate Service/CN=HydrantID Server CA O1
---
...
<TRUNCATED>
...
---
DONE
Procedimiento adicional
Este procedimiento se puede aprovechar si los escenarios cubiertos son exitosos o se resuelven, pero el registro de la licencia sigue fallando.
Anule el registro de la licencia.
hxshell:~$stcli license disable
hxshell:~$stcli license enable
hxshell:~$stcli license deregister
Adquiera un nuevo token de Smart Licensing, reinicie el proceso de licencia y vuelva a intentar el registro de la licencia.
hxshell:~$priv service hxLicenseSvc stop
hxshell:~$priv service hxLicenseSvc start
hxshell:~$stcli license register --idtoken IDTOKEN --force
Información Relacionada