100% OFF- 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
- 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)