SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
株式会社 エーピーコミュニケーションズ
横地 晃
Ansible と NEEDLEWORK による
ネットワーク⾃動化
2019/06/14 Interop Tokyo 2019
セイコーソリューションズ(株)様ブース
[Ansible編]
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
⾃⼰紹介
名前 横地 晃
会社 株式会社エーピーコミュニケーションズ
(出展ブース 6T08 : Security World)
業務 ネットワーク⾃動化関連の技術開発
コミュニティ Ansible ユーザー会、JANOG
@akira6592 https://tekunabe.hatenablog.jp https://www.slideshare.net/akira6592/
ブログ(てくなべ) 過去発表資料
Ansible の概要
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
⾃動化ツール Ansible の特徴
シンプル
• プログラミング不要
• 構成定義ファイル(Playbook)を利⽤
パワフル
• 多数のサーバー、クラウド、ネットワーク向けの
モジュールを2800以上標準装備
• カスタムモジュールも⾃作可能
エージェントレス • 操作対象機器側に専⽤ソフトはインストール不要
• 構成管理ツールとも呼ばれ、Chef や puppet などと⽐較されることが多い
• 本資料は Ansible 2.8.0 を前提
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
Ansible でネットワーク機器にできること
l 接続⽅式
• SSH、NETCONF、HTTP/HTTPS(API)などで接続
l できることの例
• 参照(show)コマンド実⾏による情報取得
• 設定コマンド実⾏による設定追加・変更・削除
SSH、NETCONF、HTTP(S)
情報取得、設定など
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
Ansible を利⽤するメリット(ターミナルソフトのマクロとの⽐較)
1. Ansible の他の機能と連携しやすい
• コマンド出⼒結果を copy モジュールに渡して、ファイルに保存
• テンプレート機能を利⽤して、コンフィグを⽣成して投⼊
• 監視サーバーに登録されているホスト情報を接続に利⽤
2. ログインやモード変更の処理を簡略化できる
• 認証情報を定義しておくだけで⾃動でログイン、ログアウト
• 設定系モジュールは暗黙的にコンフィグレーションモードへ移⾏
3. コマンド投⼊エラーを標準で検出できる
• エラー検出処理はAnsible モジュール内に組み込み済み
• どのようなプロンプトが返ってきたら正常か、という指定が不要
例えば
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
50以上のネットワークプラットフォームに対応
• A10
• Aci
• Aireos
• Aos
• Aruba
• Asa
• Avi
• Bigswitch
• Checkpoint
• Cloudengine
• Cloudvision
• Cnos
• Cumulus
• Dellos10
• Dellos6
• Dellos9
• Edgeos
• Edgeswitch
• Enos
• Eos
• Exos
• F5
• Fortimanager
• Fortios
• Frr
• Ftd
• Illumos
• Ingate
• Ios
• Iosxr
• Ironware
• Itential
• Junos
• Meraki
• Netact
• Netconf
• Netscaler
• Netvisor
• Nos
• Nso
• Nuage
• Nxos
• Onyx
• Opx
• Ordnance
• Ovs
• Panos
• Radware
• Restconf
• Routeros
• Skydive
• Slxos
• Sros
• Voss
• Vyos
ネットワークモジュール⼀覧 https://docs.ansible.com/ansible/latest/modules/list_of_network_modules.html
サンプル1:
コンフィグバックアップ
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
サンプル1: コンフィグバックアップ(準備)
- hosts: fw
gather_facts: no
tasks:
- name: show command test
junos_command:
commands:
- show configuration
register: result
- name: save config to file
copy:
content: "{{ result.stdout[0] }}"
dest: "show_config_{{ inventory_hostname }}.txt"
実⾏したい show コマンド
(変更すれば他のshowコマンドでも対応可)
保存先ファイル名
※このほか、対象ホストの接続情報や、認証情報を定義するファイルを⽤意する
対象ホストグループ
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
$ ansible-playbook -i inventory show01.yml
PLAY [fw] ****************************************************************************************
TASK [show command test] *************************************************************************
ok: [172.16.0.1]
TASK [save config to file] ***********************************************************************
changed: [172.16.0.1]
PLAY RECAP ***************************************************************************************
172.16.0.1 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
サンプル1: コンフィグバックアップ(実⾏)
ansible-playbook コマンドを実⾏
コンフィグがファイルとして
新たに保存された旨のログ
l Ansible 側
サンプル2:
設定変更
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
サンプル2: 設定変更(準備)
- hosts: fw
gather_facts: no
tasks:
- name: config test
junos_config:
lines:
- set system ntp server 10.0.0.123
実⾏したい設定コマンド
(変更すれば他の設定コマンドでも対応可)
※このほか、対象ホストの接続情報や、認証情報を定義するファイルを⽤意する
対象ホストグループ
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
$ ansible-playbook -i inventory set01.yml
PLAY [fw] ***************************************************************************************
TASK [config test] ******************************************************************************
changed: [172.16.0.1]
PLAY RECAP **************************************************************************************
172.16.0.1 : ok=1 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
サンプル2: 設定変更(実⾏)
ansible-playbook コマンドを実⾏
設定変更された旨のログ
root@vsrx1> show configuration system ntp | display set
set system ntp server 10.0.0.123
設定変更された
l ネットワーク機器側
l Ansible 側
ところで、
こんな時はどうする︖
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
こんな時には
l IP到達性のない機器に Ansible を使うには︖
• Ansible にも対応したコンソールサーバー「SmartCS」で
• 詳細はセイコーソリューションズ様ブース(ココ)
l テストを⾃動化するには︖
• ネットワークテスト⾃動化にも対応した「NEEDLEWORK」
• 詳細はこのあとのセッション後半で
まとめ
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
まとめ
l はじめやすい⾃動化ツール
• シンプル、パワフル、エージェントレス
l 50以上のネットワークプラットフォームに対応
• 参照や設定などができる
l マクロにはないメリットも
• Ansible の他機能との連携
• ログイン/ログアウトの簡略化
• 組み込みのエラー検出、など
Ansible と NEEDLEWORK による
ネットワーク自動化
© AP Communications Co., Ltd.
参考情報
l 公式ドキュメント
• トップ https://docs.ansible.com/
• Getting Started https://docs.ansible.com/ansible/latest/user_guide/intro_getting_started.html
l ブラウザだけで独習できる⽇本語コース
• Ansible 101 by irixjp | Katacoda https://www.katacoda.com/irixjp/scenarios/ansible-101
l 書籍
• Ansible実践ガイド 第2版
• Ansible徹底⼊⾨

Contenu connexe

Plus de akira6592

はじめてAnsibleのバグ修正に協力してみた
はじめてAnsibleのバグ修正に協力してみたはじめてAnsibleのバグ修正に協力してみた
はじめてAnsibleのバグ修正に協力してみたakira6592
 
CML-Personal (VIRL2)のインストールと基本機能
CML-Personal (VIRL2)のインストールと基本機能CML-Personal (VIRL2)のインストールと基本機能
CML-Personal (VIRL2)のインストールと基本機能akira6592
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたakira6592
 
自動化ツール Ansible に触れてみよう(技術インターン)
 自動化ツール Ansible に触れてみよう(技術インターン) 自動化ツール Ansible に触れてみよう(技術インターン)
自動化ツール Ansible に触れてみよう(技術インターン)akira6592
 
技術ブログを書こう
技術ブログを書こう技術ブログを書こう
技術ブログを書こうakira6592
 
Ansible2.9 ネットワーク対応のアップデート #ansiblejp
Ansible2.9 ネットワーク対応のアップデート #ansiblejpAnsible2.9 ネットワーク対応のアップデート #ansiblejp
Ansible2.9 ネットワーク対応のアップデート #ansiblejpakira6592
 
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみたakira6592
 
show コマンド結果をパースする方法あれこれ #npstudy
show コマンド結果をパースする方法あれこれ #npstudyshow コマンド結果をパースする方法あれこれ #npstudy
show コマンド結果をパースする方法あれこれ #npstudyakira6592
 
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒントはじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒントakira6592
 
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)akira6592
 
向き合うエンジニア
向き合うエンジニア向き合うエンジニア
向き合うエンジニアakira6592
 
Ansible 2.8 アップデート情報 -機能追加と注意点-
Ansible 2.8 アップデート情報 -機能追加と注意点-Ansible 2.8 アップデート情報 -機能追加と注意点-
Ansible 2.8 アップデート情報 -機能追加と注意点-akira6592
 
ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方akira6592
 
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)akira6592
 
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)akira6592
 
「自動化の行き着く先は?」をうけて
「自動化の行き着く先は?」をうけて「自動化の行き着く先は?」をうけて
「自動化の行き着く先は?」をうけてakira6592
 
Ansibleでネットワーク機器の状態確認を自動化してみよう
Ansibleでネットワーク機器の状態確認を自動化してみようAnsibleでネットワーク機器の状態確認を自動化してみよう
Ansibleでネットワーク機器の状態確認を自動化してみようakira6592
 
Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12
Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12
Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12akira6592
 
エンジニアが広報にしてもらってうれしかったこと #PRLT
エンジニアが広報にしてもらってうれしかったこと #PRLTエンジニアが広報にしてもらってうれしかったこと #PRLT
エンジニアが広報にしてもらってうれしかったこと #PRLTakira6592
 
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)akira6592
 

Plus de akira6592 (20)

はじめてAnsibleのバグ修正に協力してみた
はじめてAnsibleのバグ修正に協力してみたはじめてAnsibleのバグ修正に協力してみた
はじめてAnsibleのバグ修正に協力してみた
 
CML-Personal (VIRL2)のインストールと基本機能
CML-Personal (VIRL2)のインストールと基本機能CML-Personal (VIRL2)のインストールと基本機能
CML-Personal (VIRL2)のインストールと基本機能
 
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみたBGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
 
自動化ツール Ansible に触れてみよう(技術インターン)
 自動化ツール Ansible に触れてみよう(技術インターン) 自動化ツール Ansible に触れてみよう(技術インターン)
自動化ツール Ansible に触れてみよう(技術インターン)
 
技術ブログを書こう
技術ブログを書こう技術ブログを書こう
技術ブログを書こう
 
Ansible2.9 ネットワーク対応のアップデート #ansiblejp
Ansible2.9 ネットワーク対応のアップデート #ansiblejpAnsible2.9 ネットワーク対応のアップデート #ansiblejp
Ansible2.9 ネットワーク対応のアップデート #ansiblejp
 
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
 
show コマンド結果をパースする方法あれこれ #npstudy
show コマンド結果をパースする方法あれこれ #npstudyshow コマンド結果をパースする方法あれこれ #npstudy
show コマンド結果をパースする方法あれこれ #npstudy
 
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒントはじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
 
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
 
向き合うエンジニア
向き合うエンジニア向き合うエンジニア
向き合うエンジニア
 
Ansible 2.8 アップデート情報 -機能追加と注意点-
Ansible 2.8 アップデート情報 -機能追加と注意点-Ansible 2.8 アップデート情報 -機能追加と注意点-
Ansible 2.8 アップデート情報 -機能追加と注意点-
 
ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方
 
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
 
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
 
「自動化の行き着く先は?」をうけて
「自動化の行き着く先は?」をうけて「自動化の行き着く先は?」をうけて
「自動化の行き着く先は?」をうけて
 
Ansibleでネットワーク機器の状態確認を自動化してみよう
Ansibleでネットワーク機器の状態確認を自動化してみようAnsibleでネットワーク機器の状態確認を自動化してみよう
Ansibleでネットワーク機器の状態確認を自動化してみよう
 
Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12
Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12
Ansibleではじめるサーバー・ネットワークの自動化 (Ansible2.7情報つき)2018/10/12
 
エンジニアが広報にしてもらってうれしかったこと #PRLT
エンジニアが広報にしてもらってうれしかったこと #PRLTエンジニアが広報にしてもらってうれしかったこと #PRLT
エンジニアが広報にしてもらってうれしかったこと #PRLT
 
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
 

Dernier

Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 

Dernier (11)

Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 

Ansible と NEEDLEWORK によるネットワーク自動化 [Ansible編]

  • 1. 株式会社 エーピーコミュニケーションズ 横地 晃 Ansible と NEEDLEWORK による ネットワーク⾃動化 2019/06/14 Interop Tokyo 2019 セイコーソリューションズ(株)様ブース [Ansible編]
  • 2. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. ⾃⼰紹介 名前 横地 晃 会社 株式会社エーピーコミュニケーションズ (出展ブース 6T08 : Security World) 業務 ネットワーク⾃動化関連の技術開発 コミュニティ Ansible ユーザー会、JANOG @akira6592 https://tekunabe.hatenablog.jp https://www.slideshare.net/akira6592/ ブログ(てくなべ) 過去発表資料
  • 4. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. ⾃動化ツール Ansible の特徴 シンプル • プログラミング不要 • 構成定義ファイル(Playbook)を利⽤ パワフル • 多数のサーバー、クラウド、ネットワーク向けの モジュールを2800以上標準装備 • カスタムモジュールも⾃作可能 エージェントレス • 操作対象機器側に専⽤ソフトはインストール不要 • 構成管理ツールとも呼ばれ、Chef や puppet などと⽐較されることが多い • 本資料は Ansible 2.8.0 を前提
  • 5. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. Ansible でネットワーク機器にできること l 接続⽅式 • SSH、NETCONF、HTTP/HTTPS(API)などで接続 l できることの例 • 参照(show)コマンド実⾏による情報取得 • 設定コマンド実⾏による設定追加・変更・削除 SSH、NETCONF、HTTP(S) 情報取得、設定など
  • 6. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. Ansible を利⽤するメリット(ターミナルソフトのマクロとの⽐較) 1. Ansible の他の機能と連携しやすい • コマンド出⼒結果を copy モジュールに渡して、ファイルに保存 • テンプレート機能を利⽤して、コンフィグを⽣成して投⼊ • 監視サーバーに登録されているホスト情報を接続に利⽤ 2. ログインやモード変更の処理を簡略化できる • 認証情報を定義しておくだけで⾃動でログイン、ログアウト • 設定系モジュールは暗黙的にコンフィグレーションモードへ移⾏ 3. コマンド投⼊エラーを標準で検出できる • エラー検出処理はAnsible モジュール内に組み込み済み • どのようなプロンプトが返ってきたら正常か、という指定が不要 例えば
  • 7. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. 50以上のネットワークプラットフォームに対応 • A10 • Aci • Aireos • Aos • Aruba • Asa • Avi • Bigswitch • Checkpoint • Cloudengine • Cloudvision • Cnos • Cumulus • Dellos10 • Dellos6 • Dellos9 • Edgeos • Edgeswitch • Enos • Eos • Exos • F5 • Fortimanager • Fortios • Frr • Ftd • Illumos • Ingate • Ios • Iosxr • Ironware • Itential • Junos • Meraki • Netact • Netconf • Netscaler • Netvisor • Nos • Nso • Nuage • Nxos • Onyx • Opx • Ordnance • Ovs • Panos • Radware • Restconf • Routeros • Skydive • Slxos • Sros • Voss • Vyos ネットワークモジュール⼀覧 https://docs.ansible.com/ansible/latest/modules/list_of_network_modules.html
  • 9. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. サンプル1: コンフィグバックアップ(準備) - hosts: fw gather_facts: no tasks: - name: show command test junos_command: commands: - show configuration register: result - name: save config to file copy: content: "{{ result.stdout[0] }}" dest: "show_config_{{ inventory_hostname }}.txt" 実⾏したい show コマンド (変更すれば他のshowコマンドでも対応可) 保存先ファイル名 ※このほか、対象ホストの接続情報や、認証情報を定義するファイルを⽤意する 対象ホストグループ
  • 10. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. $ ansible-playbook -i inventory show01.yml PLAY [fw] **************************************************************************************** TASK [show command test] ************************************************************************* ok: [172.16.0.1] TASK [save config to file] *********************************************************************** changed: [172.16.0.1] PLAY RECAP *************************************************************************************** 172.16.0.1 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 サンプル1: コンフィグバックアップ(実⾏) ansible-playbook コマンドを実⾏ コンフィグがファイルとして 新たに保存された旨のログ l Ansible 側
  • 12. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. サンプル2: 設定変更(準備) - hosts: fw gather_facts: no tasks: - name: config test junos_config: lines: - set system ntp server 10.0.0.123 実⾏したい設定コマンド (変更すれば他の設定コマンドでも対応可) ※このほか、対象ホストの接続情報や、認証情報を定義するファイルを⽤意する 対象ホストグループ
  • 13. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. $ ansible-playbook -i inventory set01.yml PLAY [fw] *************************************************************************************** TASK [config test] ****************************************************************************** changed: [172.16.0.1] PLAY RECAP ************************************************************************************** 172.16.0.1 : ok=1 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 サンプル2: 設定変更(実⾏) ansible-playbook コマンドを実⾏ 設定変更された旨のログ root@vsrx1> show configuration system ntp | display set set system ntp server 10.0.0.123 設定変更された l ネットワーク機器側 l Ansible 側
  • 15. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. こんな時には l IP到達性のない機器に Ansible を使うには︖ • Ansible にも対応したコンソールサーバー「SmartCS」で • 詳細はセイコーソリューションズ様ブース(ココ) l テストを⾃動化するには︖ • ネットワークテスト⾃動化にも対応した「NEEDLEWORK」 • 詳細はこのあとのセッション後半で
  • 17. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. まとめ l はじめやすい⾃動化ツール • シンプル、パワフル、エージェントレス l 50以上のネットワークプラットフォームに対応 • 参照や設定などができる l マクロにはないメリットも • Ansible の他機能との連携 • ログイン/ログアウトの簡略化 • 組み込みのエラー検出、など
  • 18. Ansible と NEEDLEWORK による ネットワーク自動化 © AP Communications Co., Ltd. 参考情報 l 公式ドキュメント • トップ https://docs.ansible.com/ • Getting Started https://docs.ansible.com/ansible/latest/user_guide/intro_getting_started.html l ブラウザだけで独習できる⽇本語コース • Ansible 101 by irixjp | Katacoda https://www.katacoda.com/irixjp/scenarios/ansible-101 l 書籍 • Ansible実践ガイド 第2版 • Ansible徹底⼊⾨