Network Automation with Python and Ansible

4.6 out of 5 rating

Jump to dates

Duration

4 Days

24 CPD hours

About this course

The primary audience for this course is as follows:
Network Administrators
Administrators interested in Automation
Individuals interested in devops, specifically for networking

Overview

This course teaches students to blend Python skillsets with Ansible through the lens of automating networks. Automation techniques for the most popular vendor (incl. Cisco, Juniper, Arista) will be subjects of study, however, students may request examples from vendors within their own environments. Topics begin with a focus on automating networks with Python; this skill set is then folded into a broadening understanding of automating with Ansible. Students will have programmatic experience automating enterprise class networks by the conclusion of this course (includes writing custom Ansible modules with Python).
Class is a combination of lecture, demonstration, and hands-on labs. Students are invited to share their own relevant Python and Ansible scripts with the instructor to ensure class subjects are as relevant as possible.
All notes and scripts will be made available to students by the end of each day via a cloud-share or email. Lab time will be given reinforce that day’s topics and demonstrations.

Description

No two networks are the same! Learn to automate your network with a Python and Ansible skillset. Course can be taught across all major (and most minor) network vendors. Course demonstrations can be adapted to best-fit the customer's network to ensure all lessons have maximum relevance.

Day 1 Critical Python Catchup & Review
  • Overview of Python and Ansible
  • Python white space rules & best practices
  • Printing and more Printing
  • Date types and Variables
  • Packing and Unpacking Variables
  • f Strings
  • Conditional expressions
  • Relational and Boolean operators
  • Lists, Tuples, Dictionaries
  • Indexing and slicing
  • Built-in functions
  • Iterating with Loops (for and while)
  • Working with files
  • Software Control Management (SCM) (Git, Github, Bitbucket, Cloudshare, etc.)
  • Using Python to access REST interfaces
  • Working with JSON
  • Python, Ansible and Paramiko
  • Using Paramiko to SSH with keys and passwords
  • RESTful API review
  • API keys
  • Paramiko Review
  • Using Paramiko to SFTP with keys and passwords
Day 02 Python and Network Automation
  • Introduction to Netmiko (automating routers and switches)
  • Using Netmiko to send commands to / from network devices
  • Working with YAML
  • Converting JSON to YAML with Python
  • Ansible keywords
  • YAML and JSON for data exchange
  • Ansible and YAML
  • Ansible Playbook components
  • Tying together Python and Ansible Using Python within Ansible
  • Ansible Network Modules
  • What is new in Ansible (most current updates / release notes)
  • Network Agnostic modules
  • Writing network playbooks
  • Reviewing the construction of network playbooks
  • Writing Ansible playbooks that respond to network failures
Day 03 Blending Python and Ansible Skillsets
  • Review how to use Python within Ansible
  • Calling Python scripts with Ansible
  • Jinja2 Templating Engine for Python (and Ansible)
  • Using Templates in Ansible playbooks
  • Jinja2 filters, looping, and other useful tricks for automating with Ansible
  • Playbook tagging for selective runs
  • When to use Python and when to use Ansible
  • Big Picture options for using Python & Ansible within your Network Ansible Roles
Day 04 Customizing Ansible with Python
  • Review Running Scripts with Ansible
  • Prompting for Ansible user input
  • Ansible Galaxy & Getting at Roles
  • Writing a custom Ansible Module with Python
  • Ansible Engine vs Ansible Tower marketing hype, capabilities, costs, etc.
  • Case Study: Automate your Enterprise Network
  • When to use Python and when to use Ansible
  • Writing your own Ansible modules in Python
  • Big Picture options for using Python & Ansible within your Network
  • Overview NETCONF / YANG and what they mean for Python and Ansible
  • Molecule Testing your roles
Additional course details:

Nexus Humans Network Automation with Python and Ansible training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward.

This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts.

Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success.

While we feel this is the best course for the Network Automation with Python and Ansible course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you.

Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.

Training Insurance Included!

When you organise training, we understand that there is a risk that some people may fall ill, become unavailable. To mitigate the risk we include training insurance for each delegate enrolled on our public schedule, they are welcome to sit on the same Public class within 6 months at no charge, if the case arises.

What people say about us


Find out more about this course

Interested in alternative dates? Would like to book a private session of this course for your company? Or for any other queries please simply fill out the form below.