Ansible for Junos OS Server の要件
ジュニパーネットワークスは、Ansibleを使用したJunosデバイスの管理をサポートしており、デバイスの運用タスクや設定タスクを実行するために使用できるAnsibleモジュールを提供しています。ジュニパーネットワークスのモジュールは、Ansible Galaxy のWebサイトでホストされている次のAnsibleコレクションおよびロールを通じて配布されます。
-
juniper.device
コレクション
Ansibleは、Ansible 2.10以降のAnsibleコンテンツコレクション(またはコレクション)をサポートしています。コレクションの導入 juniper.device
により、ロール内のモジュールはコレクション内の Juniper.junos
新しい名前で複製されたため、パラメーターを除いて provider
、元のモジュールと同じ機能とパラメーターが保持されます。ロールは Juniper.junos
コレクションと juniper.device
共存でき、今後のリリースで機能しますが、新機能は今後コレクションに追加 juniper.device
されるだけです。
Ansibleは、Unixライクなオペレーティングシステムを搭載した制御ノードにインストールします。Ansibleとジュニパーネットワークスのコレクションまたはロールは、制御ノードに直接インストールすることも、Dockerコンテナを使用することもできます。ジュニパーネットワークスの juniper/pyez-ansible Dockerイメージは、Ansible、ジュニパーネットワークスのモジュール、およびすべての依存関係を1つのポータブルコンテナにバンドルした軽量の自己完結型システムです。Docker コンテナーを使用すると、Ansible を対話モードですばやく実行したり、Docker をサポートする任意のプラットフォームで実行可能パッケージとして実行したりできます。
Ansible、コレクションまたはJuniper.junos
役割、juniper.device
および前提条件となるソフトウェアを Ansible 制御ノードに手動でインストールするには、次のセクションを参照してください。
Ansible for Junos OS Dockerイメージを使用するには、次のセクションを参照してください。
前提条件となるソフトウェア
ジュニパーネットワークス juniper.device
のコレクションまたは Juniper.junos
役割をインストールし、Ansible を使用して Junos デバイスの管理を開始する前に、Ansible 制御ノードに次のソフトウェアがインストールされていることを確認してください。
-
Python 3.7 以降 (推奨バージョンは Python 3.8)
-
Ansible 2.5 以降 (Ansible コレクションを使用するには、Ansible 2.10 以降が必要です)
-
Junos PyEZ (
junos-eznc
) Release 2.6.0 以降。Junos PyEZのインストール手順と現在の情報については、次を参照してください。
-
Python モジュール。
jxmlease
-
xmltodict
Python モジュール (コレクションにjuniper.device
必要)。 -
Python(JSNAPy)リリース1.3.6以降のJunos Snapshot Administrator(および
juniper_junos_jsnapy
モジュールを使用するにはjsnapy
必要)。JSNAPyのインストール手順と現在の情報については、以下を参照してください。
juniper.device コレクションと Juniper.junos ロールをインストールします
Ansible 2.9 以前を実行している Ansible 制御ノードは、Juniper.junos
ロールのインストールのみをサポートします。Ansible 2.10 以降を実行している Ansible 制御ノードでは、コレクションまたはJuniper.junos
ロールをインストールして使用できますjuniper.device
。ただし、コレクションを使用するようにプレイブックを移行することをお勧めします。
Ansible for Junos OS Dockerの画像を使用する
Docker は、アプリケーションとその依存関係を分離されたコンテナーにパッケージ化して実行するために使用されるソフトウェア コンテナー プラットフォームです。ジュニパーネットワークスでは、ジュニパーネットワークスモジュールの新しいリリースごとに自動的にビルドされるDockerイメージを提供しています。Dockerイメージには、Python 3、Ansible、Junos PyEZ、ロールとjuniper.device
コレクション(リリースによって異なります)、PythonのJunos Snapshot Administrator、Juniper.junos
および必要な依存関係が含まれています。コンテナーを対話モードで実行することも、コンテナーを実行可能ファイルとして使用してプレイブックを実行することもできます。
Ansible制御ノードでAnsible for Junos OS Dockerイメージを使用するには、次の手順に従います。