Ansibleでネットワーク機器を自動化する入門|Cisco・Juniper設定の自動化とNetDevOpsの第一歩

現場実践|ネットワーク自動化
Ansibleでネットワーク機器を自動化する入門|Cisco・Juniper設定の自動化とNetDevOpsの第一歩
「ルーター・スイッチの設定を手動でやるのが辛い」「NetDevOpsって何?」——Ansible for Networkingを使ったCisco IOS・Juniper JunosのCLI設定自動化の基礎と実践的なplaybook例を解説します。
💡 ネットワークエンジニアにとってAnsibleは「200台のスイッチのVLAN設定を30分で完了させる」最強ツール。NetDevOpsの第一歩としてAnsible for Networkingは最も習得コストが低い選択肢です。
1. Ansible for Networkingの仕組み
通常のAnsibleはSSH経由でLinuxサーバーに接続してコマンドを実行しますが、Ansible for Networkingはnetwork_cliやネッサス等のコネクションタイプを使ってネットワーク機器のCLIに接続します。Cisco IOSにはios_command・ios_config等のモジュール、Juniper JunosにはJuniper.junos系のモジュールが用意されています。
2. Cisco IOSのplaybookサンプル
---
- name: Cisco IOSの設定変更
hosts: cisco_switches
gather_facts: no
connection: network_cli
vars:
ansible_network_os: ios
ansible_user: admin
ansible_password: "{{ vault_password }}"
tasks:
- name: VLAN10を作成
cisco.ios.ios_vlans:
config:
- vlan_id: 10
name: APP_VLAN
state: merged
- name: 設定をshowing
cisco.ios.ios_command:
commands:
- show vlan brief
register: result
- name: 結果を表示
debug:
var: result.stdout_lines3. inventoryでネットワーク機器を管理
[cisco_switches]
192.168.1.1 ansible_host=192.168.1.1
192.168.1.2 ansible_host=192.168.1.2
[cisco_switches:vars]
ansible_network_os=ios
ansible_user=admin
ansible_become=yes
ansible_become_method=enable4. NetDevOpsの実践的な活用パターン
- バックアップの自動化:全スイッチの設定を毎日Gitにコミットするplaybookをcronで自動実行。「いつ誰が何を変更したか」の履歴管理が実現する
- VLAN設定の一括展開:100台のスイッチに新しいVLANを追加する作業を1回のplaybook実行で完了させる
- コンプライアンスチェック:「NTPサーバーが正しく設定されているか」「パスワードが基準を満たしているか」を定期的に自動チェックする
📌 この記事のポイント
- Ansible for NetworkingはCisco IOS・Juniper Junosのモジュールを使ってCLI操作を自動化できる
- inventoryにネットワーク機器のIPを登録してplaybookを実行するだけで一括設定変更が実現する
- バックアップ自動化・VLAN一括展開・コンプライアンスチェックがAnsibleネットワーク自動化の3大ユースケース
キャリアの疑問、一緒に解決しませんか?
Route Bloomでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。
ABOUT ME




