Mastering Ansible Automation for Network Engineers
Mastering Ansible Automation for Network Engineers, 100% Hands-On Ansible Training with Beginner to Advanced Level Topics – Using Network Automation SSH, REST API Examples.
Course Description
Learn Ansible Automation skills from scratch to an advanced level for automating your Network.
Gain an in-depth understanding of Ansible Playbook and Task Options
For attending this course you don’t need any prior coding experience.
100% Hands-on demonstration of the concepts using Network Automation Usecases
The IDE is VS Code and Cisco devices will be used for demonstrating most of the device interactions.(vIOS, IOS-XE)
Below are the topics in high level
The course will be starting with how to setup Lab for Ansible Network Automation Practice
Install and Setup Ubuntu OS VM for ansible
Setup VSCode for SSH remote development
Ansible installation in the Python VIrtual Environment
Ansible Core and Community difference
Inventory and Config file setup
YAML File ,Playbook fundamentals and Ansible Lint
SSH Keybased Authentication to Cisco devices from Ansible
Ansible Vault for encrypting files and variables
Demonstration of Ansible Vault ID
group_vars and host_vars
Handle device specific variables and configurations effectively
Explore advanced features of Ansible CLI
cisco ios_facts and ios_commands module
cisco ios_config module explained in detail
PaloAlto Firewall Galaxy Collections Examples
PaloAlto Address Objects, Object Groups and Security Rule automation using Ansible
Cisco config diff, parent command, before, after, match and replace options
ios config backup options
Configuration backup and save option
Cisco ios resource modules
cisco interfaces, l3_interfaces and l2_interfaces resource module
cisco ios_user and static_route module
CLI Parsers
pyATS, ntc_templates and TextFSM Parsers
Ansible Magic Variables
hostvars and play_vars
set_fact vs vars explained
Ansible Variable precedence explained in detail
Ansible filter Plugins
default, ternary, dict2items, items2dict filters
to_json, from_json, to_yaml, from_yaml filters
zip, combine, map,json_query(using JMES Path) filters
ip_address, url and datetime filters
list operations and string manipulation using filters
RegEX Filters
Regex search, find_all and replace filters
Jinja2 templates example
jinja2 for loop and include option
jinja2 in ios_config module
embed code in jinja2 template
lookup Plugins
file lookup, template lookup plugins
vars, env and pipe lookup plugins
Loops and Conditionals : loops, until and when
Play Options
ansible play strategies, forks and serial
debugger for effective troubleshooting
host order, log_path
tags and limit option
check_mode
Task Options
delegate_to
run_once
ignore_erros and failed when
changed_when and no_log
use handlers and listen option
block and rescue for exception handling
assert option
How to install ansible collections: using galaxy command, requirements file and github
How to create roles and add tasks to respective directories
Detailed explanation of ansible include vs import
include_tasks vs import tasks
include_role vs import role
import_playbook module
how to create ansible custom modules
convert facts to csv file using custom module which uses python csv in the backend
how to pass module args to custom module
how to return data using custom module
REST API from Ansible
how to use URI Module for REST API
YANG Suite introduction
REST API from Postman
Convert POSTMAN REST request to Ansible URI task
Initiate REST – GET, PUT,POST PATCH and DELETE Operations from Ansible
How to configure Cisco device using REST API
how to save config using rest API
Parse config using REST API
Extra Learning Topic(AWX)
Install AWX in Minikube for learning
Basics of Ansible execution environment (Podman)