概要
このドキュメントでは、Cisco Smart Software Manager(CSSM)を使用してNetwork Service Orchestrator(NSO)のライセンス問題をトラブルシューティングする方法について説明します。
前提条件
要件
このドキュメントに特有の要件はありません。
使用するコンポーネント
このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
問題
CSSMのNSOで発生するエラーは次のとおりです。
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)
最初に次のコマンド/出力を確認する必要があります。
- スマートエージェントが実行されていることを確認します。
[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
- トークンの登録に使用する方法を確認します(直接/プロキシ/サテライト)。確認したら、NSOサーバからサーバへの接続があるかどうかを確認します。
wget https://www.cisco.com
wget <IP of proxy or satellite server>
curl -vvv <IP of proxy or satellite server>
例
プロキシ:DDCEService
サテライト:DeviceRequestHandler
- 次の手順では、スマートライセンス関連のパラメータが設定されている場所を確認します。これを行うには 2 つの方法があります。1つは、ncs.confファイルの下にsmart-licenseセクションを作成することです。
<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>
もう1つは、cliから設定を行うことです。
admin@ncs# show running-config smart-license smart-agent
注:どのシステムでも、2つの設定のうち1つだけを実行できます。ncs.confの下の設定は、常にCLIから行った設定よりも優先されます。
- その後、次のコマンドを使用してライセンス関連情報を確認します。
root@ncs# show license ?
可能な完了:
UDI |
デバイスのUDIを表示します。 |
all |
すべてのスマートライセンス情報を表示します。 |
ステータス |
全体的なスマートライセンスのステータスを表示します。 |
概要 |
スマートライセンスの状態の概要を表示します。 |
tech-support |
Smart Licensingのテクニカルサポート情報を表示します。 |
trace |
スマートライセンスのトレースステータスを表示します。 |
使用 |
Smart Licensingライセンスの使用状況を表示します。 |
前のコマンドは、現在のすべてのライセンスに関する情報を提供します。また、その情報が InCompliane
、 OutofCompliance
、 Erroneous
、 Eval
,等。
- 最後に、次の設定でスマートライセンスログを有効にできます。
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
問題1のトラブルシューティング
エラーが発生した "License agent is not ready",
configを実行するsmart-licenseとncs.confファイルを確認します。ncs.confファイルにsmart-licenseセクションが存在する場合は、それをコメントにして、NSO CLIから次の構文を設定します。
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
<URL>は、前述のプロキシサーバまたはサテライトサーバです。サテライトサーバの場合は、ポートが「443」であり、HTTPが使用されていることを確認することが重要です。(GUIには8443が使用されます)。また、HTTPが機能する場合は、URLを適宜変更する必要があります。
これらの変更を行うと、スマートエージェントが再起動します。
root@ncs(config)# smart-license smart-agent restart
result Started
前の変更の後でも、ライセンスエージェントを起動できない可能性があります。変更を妨げる可能性があるもう1つの設定は、「HA」に関連しています。 この場合、ncs.confファイルでHAが有効か無効かを簡単に確認できます。
注:HAセットアップでは、スマートライセンスはプライマリノードでのみ有効にする(設定する)必要があります。
これらの変更により、スマートライセンスエージェントは次の操作を実行する準備が整います。確認するトークンの登録を試みます。
問題2のトラブルシューティング
スマートライセンスエージェントが正常に動作している場合でも、「通信の送信エラー」が発生することがあります。override-urlを確認し、ポートが機能することを確認します。前述したように、接続も検証する必要があります。
NSOに何も問題がない場合、このエラーはSmart Software Managerオンプレミスサテライト(SSMS)とCSSM間の接続が原因である可能性があります。CSSMと完全に同期されていないFQDNと一致するようにcNameを変更できます。これは必須の手順です。この手順を実行しない場合、CSSMから生成されるトークンの生成中に問題が発生します。これにより、次のエラーが発生する可能性があります。
Failure Reason: {"token":"The token ‘<Actual Token from CSSM>’ is not valid."]}
NSOをhttpsに登録する方法については、「デバイスをHTTPSに登録してSmart-licensing Serverをサテライトする方法」を参照してください。
問題3のトラブルシューティング
3番目の問題は、使用されているJavaのバージョンに問題がある場合に発生します。スマートエージェントは基本的にJAVAプロセス(NCS Smart Licensing Java VM)であるため、適切なJavaバージョンを使用する必要があります。
次のエラーが表示されます。
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)
Java 11は、失われたJavaモジュールに関するヒントを削除しました。この問題が発生した場合は、バージョンを確認し、JAVAが最近アップグレードされたかどうかも確認します。
NSO用にCisco Smartライセンスを設定する方法の詳細については、「NSOを使用したCisco Smartライセンスの設定」を参照してください。
関連情報