The Ansible Cisco example

Cisco's support in Ansible is categorized by the operating systems IOS, IOS-XR, and NX-OS. We have already seen a number of NX-OS examples, so in this section let's try to manage IOS-based devices.

Our host file will consist of two hosts, R1 and R2:

[ios_devices]R1 ansible_host=192.168.24.250R2 ansible_host=192.168.24.251[ios_devices:vars]username=ciscopassword=cisco

Our playbook, cisco_5.yml, will use the ios_command module to execute arbitrary show commands:

    ---    - name: IOS Show Commands      hosts: "ios_devices"      gather_facts: false      connection: local      vars:        cli:          host: "{{ ansible_host }}"          username: "{{ username }}"          password: "{{ password }}"          transport: cli      tasks:        - name: ios show commands          ios_command:            commands: - show ...

Get Mastering Python Networking - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.