Introduction
Este documento descreve como solucionar problemas de licença no Network Service Orchestrator (NSO) com o Cisco Smart Software Manager (CSSM).
Prerequisites
Requirements
Não existem requisitos específicos para este documento.
Componentes Utilizados
Este documento não se restringe a versões de software e hardware específicas.
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. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Problema
Os erros encontrados com NSO no CSSM são:
result Error: License Agent not ready. Please try again.
Failure Reason: Communication send error.
java.lang.module.FindException: Module java.xml.bind not found (From the ncs-smart-licensing.log)
Você deve verificar primeiro os próximos comandos/saídas.
- Verifique se o agente inteligente está sendo executado:
[root@nso-ha-1 home]# ps -ef | grep smart
root 63522 63419 0 06:56 ? 00:00:00 /opt/ncs/current/lib/ncs/lib/core/sls/priv/agentwrapper
java -Xmx64M -Xms16M -Djava.security.egd=file:/dev/./urandom -jar
/opt/ncs/current/lib/ncs/lib/core/sls/priv/webapp-runner.jar
/opt/ncs/current/lib/ncs/lib/core/sls/priv/smartagent --port 0 --path /smartagent --shutdown-override
root 63523 63522 4 06:56 ? 00:02:45 java -Xmx64M -Xms16M -Djava.security.egd=file:/dev/./urandom -jar
/opt/ncs/current/lib/ncs/lib/core/sls/priv/webapp-runner.jar
/opt/ncs/current/lib/ncs/lib/core/sls/priv/smartagent
--port 0 --path /smartagent --shutdown-override
[root@nso-ha-1 home]# systemctl status ncs.service
>...
└─63523 java -Xmx64M -Xms16M -Djava.security.egd=file:/dev/./urandom -jar
/opt/ncs/current/lib/ncs/lib/core/sls/priv/webapp-runner.jar
/opt/ncs/current/lib/ncs/lib/core/sls/priv/smartagent -
-port 0 --path /smartagent --shutdown-overr...
...
Apr 13 06:56:15 nso-ha-1 ncs[63406]: - Starting the NCS Smart Licensing Java VM
root@ncs# show smart-license smart-agent start-status
smart-license smart-agent start-status started
- Confirme qual método é usado para registrar o token (direto/proxy/satélite). Depois de determinado, verifique se há conectividade do servidor NSO com o servidor:
wget https://www.cisco.com
wget <IP of proxy or satellite server>
curl -vvv <IP of proxy or satellite server>
Exemplo
Proxy: DDCEService
Satélite: DeviceRequestHandler
- A próxima etapa é verificar onde os parâmetros relacionados à licença inteligente foram configurados. Existem duas maneiras de fazer isso. Uma delas é ter a seção smart-license no arquivo ncs.conf:
<smart-license> <smart-agent>
<java-executable>DEFAULT</java-executable>
<java-options>DEFAULT</java-options>
<production-url>DEFAULT</production-url><
<alpha-url>DEFAULT</alpha-url>
<override-url>
<url>DEFAULT</url>
</override-url>
<proxy>
<url>DEFAULT</url>
</proxy>
</smart-agent>
</smart-license>
A outra é fazer com que as configurações sejam feitas a partir do cli.
admin@ncs# show running-config smart-license smart-agent
Observação: em qualquer sistema, você pode ter apenas uma das duas configurações. As configurações no ncs.conf sempre substituem as feitas a partir do CLI.
- Depois disso, verifique as informações relacionadas à licença com os próximos comandos:
root@ncs# show license ?
Possíveis conclusões:
UDI |
Mostrar o UDI do dispositivo. |
todos os |
Mostrar todas as informações do Smart Licensing. |
status |
Mostrar o status geral do Smart Licensing. |
summary |
Mostrar resumo de status do Smart Licensing. |
suporte técnico |
Mostrar informações de suporte técnico do Smart Licensing. |
rastrear |
Mostrar status de rastreamento do Smart Licensing. |
uso |
Mostrar o uso da licença do Smart Licensing. |
Os comandos anteriores dão uma ideia sobre todas as suas licenças atuais e se é InCompliane
, OutofCompliance
, Erroneous
, Eval
,etc.
- Por fim, os logs da Smart License podem ser ativados com a próxima configuração:
root@ncs# show running-config smart-license
smart-license smart-agent stdout-capture enabled
smart-license smart-agent stdout-capture file /var/log/ncs/ncs-smart-licensing.log
smart-license smart-agent stdout-capture stdout
Solução de problemas 1
Com o erro "License agent is not ready",
verifique a smart-license que executa o config e o arquivo ncs.conf. Se a seção da licença inteligente existir no arquivo ncs.conf, comente-a e configure a próxima sintaxe da CLI do NSO:
root@ncs# config
Entering configuration mode terminal
root@ncs(config)#smart-license smart-agent java-options "-Xmx64M -Xms16M -Djava.security.egd=file:/dev/./urandom"
root@ncs(config)#smart-license smart-agent override-url url
O <URL> pode ser um servidor proxy, como mostrado anteriormente, ou um servidor satélite. No caso de um servidor satélite, é importante garantir que a porta seja "443" e HTTP seja usado. (8443 é usado para GUI). Como alternativa, se o HTTP funcionar, o URL deverá ser modificado de acordo.
Depois que você fizer essas alterações, o agente inteligente será reiniciado:
root@ncs(config)# smart-license smart-agent restart
result Started
É possível que, mesmo após as alterações anteriores, o agente de licença não possa ser iniciado. Outra configuração que pode prejudicar as alterações está relacionada ao 'HA'. Nessa situação, uma verificação rápida pode ser feita no arquivo ncs.conf para confirmar se o HA está habilitado ou desabilitado.
Observação: em uma configuração de HA, o Smart-Licensing deve ser habilitado (configurado) apenas no nó primário.
Com essas alterações, o agente da Smart License estará pronto para a próxima operação. Tente registrar o token para verificação.
Solução de problemas do problema 2
Mesmo quando o agente de licença inteligente funciona bem, você pode encontrar o "Erro de envio de comunicação". Verifique a url de substituição e certifique-se de que as portas funcionem. Como mencionado anteriormente, as conexões também devem ser validadas.
Se não houver nada de errado com o NSO, esse erro pode ser devido à conexão entre o Satélite Local (SSMS) do Gerenciador Inteligente de Software e o CSSM. Pode haver uma alteração no cName para corresponder ao FQDN que não esteja totalmente sincronizado com o CSSM, que é uma etapa obrigatória. Se você não executar essa etapa, haverá problemas enquanto o token gerado a partir do CSSM for gerado. Isso pode causar este erro:
Failure Reason: {"token":"The token ‘<Actual Token from CSSM>’ is not valid."]}
Para obter informações sobre como registrar o NSO com https, consulte Como registrar seu dispositivo com HTTPS para servidor de licenciamento inteligente por satélite.
Solução de problemas do problema 3
O terceiro problema ocorre quando há um problema com a versão java que é usada. O agente inteligente é essencialmente um processo JAVA (NCS Smart Licensing Java VM), é imprescindível que a versão java correta seja usada.
Este é o erro visto:
Error occurred during initialization of boot layer
java.lang.module.FindException: Module java.xml.bind not found
child died (From the ncs-smart-licensing.log)
O Java 11 removeu as dicas sobre um módulo java perdido. Se esse problema for encontrado, verifique a versão e também se o JAVA foi atualizado recentemente primeiro.
Para obter detalhes sobre como configurar o Cisco Smart Licenses para NSO, consulte Configurar o Cisco Smart Licenses com NSO.
Informações Relacionadas