Introduction
Ce document décrit comment dépanner les problèmes les plus courants des licences d'enregistrement Hyperflex.
Conditions préalables
Exigences
Cisco vous recommande de prendre connaissance des rubriques suivantes :
- Hyperflex Connect
- Enregistrement de licence
- HTTP/HTTPS
Composants utilisés
Les informations contenues dans ce document sont basées sur :
- Hyperflex Data Program (HXDP) 5.0.(2a) et versions ultérieures
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Informations générales
Qu'est-ce que Smart License
Cisco Smart Licensing (Smart Licensing) est une solution intelligente de gestion des licences logicielles basée sur le cloud qui simplifie les trois principales fonctions de licence (achat, gestion et création de rapports) dans l'ensemble de votre entreprise.
Vous pouvez accéder à votre compte de licence Smart ici.
Fonctionnement des licences sur Hyperflex
Cisco Hyperflex s'intègre à Smart Licensing et est automatiquement activé par défaut lorsque vous créez un cluster de stockage Hyperflex. Toutefois, pour que votre cluster de stockage Hyperflex consomme et signale les licences, vous devez l'enregistrer auprès de Cisco Smart Software Manager (SSM) via votre compte Cisco Smart.
Un compte Smart est un référentiel basé sur le cloud qui offre une visibilité et un contrôle d'accès complets à toutes les licences logicielles Cisco achetées et instances de produit dans votre entreprise.
Remarque : dans les clusters Hyperflex, l'inscription est valide pendant un an. Après cela, Hyperflex tente automatiquement de se réenregistrer afin qu'aucune interaction humaine ne soit requise.
Politique D'Application Stricte
À partir de la version HXDP 5.0(2a), certaines fonctionnalités de l'interface utilisateur graphique Hyperflex Connect sont bloquées si le cluster n'est pas conforme à la licence.
Exemples de scénarios d'état de licence :
Dans ce scénario, le cluster est conforme à l'état de licence.
Dans le scénario suivant, le cluster est enregistré, mais l'état de la licence est Non conforme et la période de grâce est comprise entre un (1) et quatre-vingt-dix (90) jours.
Dans ce cas, aucune fonctionnalité n'est bloquée, mais une bannière apparaît en haut du menu qui vous invite à activer la licence requise avant l'expiration du délai de grâce.
Dans ce scénario, le cluster est enregistré, l'état de la licence est Non conforme et la période de grâce est de zéro (0).
Configurer
Pour savoir comment enregistrer Hyperflex avec votre compte Smart License, consultez cette vidéo.
Vérifier
Vérifiez que votre configuration fonctionne correctement.
Vérifiez l'état de la licence via CLI. Affichez l'état de l'enregistrement et l'état des autorisations.
Dépannage
Il existe des scénarios courants où ces deux états peuvent échouer, tous deux causés par la même cause racine.
Scénario 1 : connectivité HTTP/HTTP
L'enregistrement des licences passe par TCP, et plus particulièrement par HTTP et HTTPS. Il est donc essentiel d'autoriser cette communication.
Testez la connectivité à partir de chaque machine virtuelle de contrôleur de stockage (SCVM), mais principalement à partir de la machine virtuelle SCVM (CMIP) de gestion de cluster IP.
curl https://tools.cisco.com/its/service/oddce/services/DDCEService
Vous devez obtenir le résultat affiché dans l'exemple, sinon, cela signifie que le trafic est bloqué.
<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 le résultat reçu est différent du résultat précédent, vérifiez la connectivité et vérifiez que les ports sont ouverts à l'aide des commandes suivantes :
ping tools.cisco.com -c 5
nc -zv tools.cisco.com 80
nc -zv tools.cisco.com 443
Scénario 2 : problèmes de proxy
Parfois, un proxy est configuré entre tous les clients Web et les serveurs Web publics lorsqu'ils effectuent des inspections de sécurité du trafic.
Dans ce cas, entre le SCVM avec le CMIP et cisco.com, vérifiez que le proxy est déjà configuré dans le cluster (comme indiqué dans l'exemple).
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 le proxy affiche déjà configuré, testez la connectivité avec l'URL ou l'adresse IP du proxy ainsi que le port configuré.
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
En outre, testez la connectivité au proxy.
nc -vzw2 x.x.x.x 8080
Scénario 3 : environnement cloud
Dans certains cas, l'environnement cloud est défini sur devtest, ce qui entraîne l'échec de l'enregistrement. Dans cet exemple, il est défini sur production.
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:
Dans les journaux, vous pouvez voir des erreurs spécifiques lorsque l'environnement n'est pas défini correctement comme 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
Conseil : à partir de la version 5.0(2a), diag user est disponible pour permettre aux utilisateurs d'avoir plus de privilèges pour dépanner l'accès aux dossiers restreints et aux commandes qui ne sont pas accessibles via la ligne de commande priv qui a été introduite dans Hyperflex version 4.5.x.
Vous pouvez remplacer le type d'environnement par production et recommencer l'enregistrement.
diag# stcli services sch set --email johndoe@example.com --environment production --enable-proxy false
Scénario 4 : Protocole OCSP (Online Certificate Status Protocol)
Hyperflex exploite les serveurs OCSP et CRL (Certificate Revocation Lists) pour valider les certificats HTTPS lors du processus d'enregistrement des licences.
Ces protocoles sont conçus pour distribuer l'état de révocation sur HTTP. Les listes de révocation de certificats et les messages OCSP sont des documents publics qui indiquent l'état de révocation des certificats X.509 lorsque la validation OCSP échoue et que l'enregistrement de la licence échoue également.
Conseil : si le protocole OCSP échoue, cela signifie qu'un périphérique de sécurité situé entre les deux interrompt la connexion HTTP.
Afin de confirmer si la validation OCSP est bonne, vous pouvez essayer de télécharger le fichier sur votre partition CMIP SCVM / tmp, comme indiqué dans l'exemple.
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
Scénario 5 : certificat modifié
Dans certains réseaux, les périphériques de sécurité proxy et pare-feu exécutent l'inspection SSL (Secure Sockets Layer) et peuvent corrompre le certificat que Hyperflex s'attend à recevoir from tools.cisco.com:443.
Afin de vérifier que le certificat n'est pas modifié par un proxy ou un pare-feu, dans le SCVM qui contient le CMIP, exécutez la commande :
diag# openssl s_client -connect tools.cisco.com:443 -showcerts < /dev/null
Il est important de noter que le nom du sujet et le nom de l'émetteur doivent correspondre au certificat présenté dans cet exemple.
Avertissement : si au moins un champ de l'objet ou de l'émetteur est différent, l'enregistrement échoue. Une règle de contournement dans l'inspection SSL de sécurité pour les adresses IP de gestion Hyperflex Cluster et tools.cisco.com:443 peut résoudre ce problème.
Dans cet exemple, vous pouvez voir comment valider les mêmes informations reçues du certificat dans 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
Procédure Supplémentaire
Cette procédure peut être mise à profit si les scénarios couverts sont réussis ou résolus, mais que l'enregistrement de la licence échoue toujours.
Résilier l'enregistrement de la licence.
hxshell:~$stcli license disable
hxshell:~$stcli license enable
hxshell:~$stcli license deregister
Acquérir un nouveau jeton à partir de la licence Smart, redémarrer le processus de licence et réessayer l'enregistrement de la licence.
hxshell:~$priv service hxLicenseSvc stop
hxshell:~$priv service hxLicenseSvc start
hxshell:~$stcli license register --idtoken IDTOKEN --force
Informations connexes