Salt を使用して Junos OS 実行デバイスの管理を行う際の Junos 実行モジュール エラーのトラブルシューティング
問題
説明
Junos OSを実行しているデバイスのプロキシミニオンプロセスを開始し、Saltマスターでキーを受け入れると、Junosプロキシ(Salt用)がデバイスに接続しますが、Junos実行モジュールから関数を実行するとエラーが返されます。例えば:
saltuser@salt-master:~$ sudo salt 'router1' test.ping router1: True
saltuser@salt-master:~$ sudo salt 'router1' junos.cli 'show version' router1: 'junos' __virtual__ returned False: The junos or dependent module could not be loaded: junos-eznc or jxmlease or yamlordereddictloader or proxy could not be loaded.
原因
Salt を使用して Junos OS を実行するデバイスを管理するには、Junos プロキシミニオンサーバーに、ジュニパーネットワークの Junos PyEZ ライブラリ()junos-eznc
と jxmlease
Python モジュール、および Python モジュール yamlordereddictloader
がサーバーにインストールされている必要があります。
ソリューション
Junos PyEZと jxmlease
yamlordereddictloader
および Pythonモジュールを、Saltがインストールされているのと同じバージョンのPythonで、Junosプロキシミニオンサーバーにインストールします。例えば:
saltuser@minion:~$ sudo pip3 install junos-eznc jxmlease yamlordereddictloader
依存関係がインストールされたら、プロキシミニオンサーバーでそのデバイスのプロキシミニオンプロセスを再起動し、Saltマスターで新しいSaltキーを受け入れます。