Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Junosモジュールのコネクションタイプの使い分け

2,997 views

Published on

Ansible Night in Tokyo 2018.04
https://ansible-users.connpass.com/event/84907/
でのLT資料です。
Ansible 2.5 で、ネットワークモジュール向けに「network_cli」、「netconf」 という2つのコネクションタイプが追加されました。Junos モジュールではどちらも使用できるため、使い分け方をご紹介します。

Published in: Technology
  • Be the first to comment

Junosモジュールのコネクションタイプの使い分け

  1. 1. 株式会社 エーピーコミュニケーションズ 横地 晃(@akira6592) 2018/04/26 Ansible Night in Tokyo 2018.04 Which one of network_cli and netconf should we use for Junos modules?
  2. 2. はじめに  Ansible 2.5 で、ネットワークモジュール向けに 「network_cli」、「netconf」 という2つの コネクションタイプが追加されました。  Junos モジュールではどちらも使用できるため、 使い分け方をご紹介します。 2 ・本資料は Ansible 2.5.1 を利用した独自の調査に基づくものです。 ・Anisble 標準で含まれる Junos モジュール(junos_ から始まるモジュール名)を対象としています。 netconf network_cli Junos
  3. 3. 自己紹介 3 名前 横地 晃 @akira6592 所属 株式会社エーピーコミュニケーションズ 担当 ネットワークの設計構築 最近の出来事 会議室の名前が Kingyo になった
  4. 4. コネクションタイプの特徴 4 No. コネクション タイプ プロトコル 対応モジュール 1 netconf XML over SSH (830/TCP) ・junos_* (junos_netconf以外) 2 network_cli SSH (22/TCP) ・junos_command (参照系コマンド用) ・junos_netconf 3 local (既存) NETCONF/SSH (モジュールや transport オプションに依存) ※Junosモジュール前提 http://docs.ansible.com/ansible/latest/network/user_guide/platform_junos.html#connections-available
  5. 5. 使い分け方 その1 5  対応モジュールが多く、set/show の 両コマンドに対応している  Ansible 2.4 までのデフォルトも netconf 相当の動作 netconf が基本
  6. 6. 使い分け方 その2 6 network_cli は奥の手 例えば • Junosのバージョンにより利用できない構文がある模様 • AWS ami-e8695a8d (15.1X49-D133) の場合:〇 可能 • vagrant の vsrx box (12.1X47-D15.4) の場合:× エラー「Display format ‘set’ is not supported by remote device.」 • 手動での「show configuration | display set」は正常に実行可能  「show configuration | display set」(*1)が netconf だとエラーになる場合 network_cli で回避 junos_command: commands: - show configuration display: set junos_command: commands: - show configuration | display set or *1:Playbook上は以下のような場合
  7. 7. (補足)display set は set 形式で出力 7  show configuration  show configuration | display set set version 12.1X47-D15.4 set system host-name vsrx1 set system root-authentication encrypted-password "$1$(略)" set system root-authentication ssh-rsa "ssh-rsa (略)" set system login user vagrant uid 2000 set (略) version 12.1X47-D15.4; system { host-name vsrx1; root-authentication { encrypted-password "$1$(略)"; ## SECRET-DATA ssh-rsa "ssh-rsa (略)"; ## SECRET-DATA } login { user vagrant { (略) 流し込みしやすい
  8. 8. まとめ 8 Junosモジュールは基本的には netconf を指定。 困ったときは network_cli を思い出す。 show コマンドなら救われるかもしれない。
  9. 9. 参考資料 9  公式ドキュメント  標準Junosモジュール一覧  http://docs.ansible.com/ansible/latest/modules/list_of_network_modules.html#junos  Junos OS Platform Options > Connections Available  http://docs.ansible.com/ansible/latest/network/user_guide/platform_junos.html#connections-available  その他  Ansible でNW機器を操作したい時に参考になりそうな日本語情報  http://tekunabe.hatenablog.jp/entry/2017/04/06/231243 仮想Junos4台とAnsibleホストをVagrantで構築するVagrantfile  http://tekunabe.hatenablog.jp/entry/2017/08/26/junos-ansible-vagrant  Ansible の Junos 対応モジュールは標準モジュールと Galaxyモジュールの2種類ある  http://tekunabe.hatenablog.jp/entry/2018/02/10/ansible-junos 元ネタはこちら

×