Nornir Automation

Course Starts August 08

Sign-up now and receive a 10% discount!

(Discount ends: July 25)

Starter Package

  • Six core lessons including videos and exercises

Plus Package

  • Six core lessons including videos and exercises
  • Community Forum
  • Bonus Lesson: Ansible-style Inventory, Nornir + Netmiko/NAPALM Direct Tasks

Premium Package

  • Six core lessons including videos and exercises
  • Community Forum
  • Bonus Lesson: Ansible-style Inventory, Nornir + Netmiko/NAPALM Direct Tasks
  • Additional Bonus Lesson

If you are not happy with the course, there is a 30-day money back guarantee. No questions asked.

Student Testimonials

(from earlier course since the Nornir course is brand new)

"This class is fantastic! I have been looking for a class like this for years. I don’t have the time to learn every corner case of a coding language or a framework, or how the compiler works at the assembly level. I just need to know how to apply the technology to my job so I can become productive. The detailed knowledge will follow as we apply it to real life problems. This course has been spot on and maximizes the benefit for my limited time to sit down and learn."

Course Syllabus

CLASS1 - Nornir Fundamentals

  • Overview: What problem is Nornir trying to solve?
  • Nornir System Components: Inventory, Config, Core-Execution, Tasks, Results
  • Nornir's Inventory System
  • Inventory Example
  • Nornir Plugins and Tasks: Types of Plugins, What is a Task
  • First Nornir Task
  • Concurrency and .run()

CLASS2 - Config Options, Handling Results, Simple Networking Tasks

  • Nornir Config Options
  • Introduction to Results Objects
  • Simple Netmiko Task
  • Simple NAPALM Tasks
  • Failed Tasks (Part1)

CLASS3 - Inventory Expanded, Networking Tasks Expanded

  • Inventory System Expanded
  • Inventory Preference
  • Inventory Filtering
  • Basic Nornir Inspection (Pdb)
  • Netmiko + TextFSM
  • NAPALM: Expanded Getters

CLASS4 - Custom Tasks, Configuration Tasks

  • Custom Tasks
  • Results and Handling Custom Tasks
  • Netmiko File Copy
  • Netmiko Configuration Operations
  • NAPALM Configuration Operations

CLASS5 - Inventory Data/ConnectionOptions, Jinja2 and Nornir

  • Inventory System - Generic Data
  • Inventory System - ConnectionOptions
  • Loading Additional Data
  • Jinja2 templating with Nornir
  • Jinja2 and Pushing Configurations

CLASS6 - Failed Tasks, Keys and Secrets, Troubleshooting

  • Failed Tasks and Exceptions (Part2)
  • Managing Keys and Secrets
  • Environment Variables
  • Nornir Logging
  • Troubleshooting and Debugging

Bonus Lesson (Plus Package Only)

  • Ansible Inventory Plugin
  • Inventory Transform Function
  • Using Netmiko and NAPALM Directly in Tasks
  • NAPALM and Netmiko using a Common Inventory
  • Joint NAPALM and Netmiko Tasks

*Subject to change (although any changes should be minor).

FAQ

What is the format of the course?

The course is a six week, email-course. Each week you will receive a lesson that contains a set of videos, some additional content, and some exercises. We will post solutions to the exercises online. Both the Plus and the Premium Package have a community forum where you can ask questions, post code, and interact with us and with the other students.

Is there a lab environment?

Yes, the lab environment will consist of a set of virtual and physical network devices and at least one AWS-Linux server. I will install a set of libraries in the lab environment; this will enable you to get working quickly. The lab environment will have a mixture of vendors and platforms (Cisco IOS-XE, Cisco NX-OS, Juniper, and Arista).

What are the prerequisites for the course?

This is an intermediate Python course (intermediate from a network engineer's perspective). You should be familiar and capable of using standard Python constructs such as functions, loops, and conditionals. You should also be familiar with handling complex Python data structures (i.e. nested lists and dictionaries). Finally, you should be familiar with both YAML and Jinja2.

You also need to be familiar with basic network engineering (routing, switching, Cisco CLI configuration).

Finally, since the lab environment will use Linux. You should be at least somewhat familiar with Linux. You should know the basics of how to move around the file system, execute a script, and edit a file.

Why Nornir?

Nornir is a Python automation framework created by David Barroso. It simplies systematic management of inventory and concurrency. It has built-in integrations for both Netmiko and for NAPALM. Since both the framework itself and your code directly use Python, you have the standard Python tools available to you: pycodestyle, black, pytest, Pdb.

What is the community forum?

The community forum is a forum where students can interact, post code, ask questions, and make recommendations. Students that purchase either the Plus or the Premium Package will have access to the community forum for the duration of the course.

What if I am unsatisfied with the course after I sign-up?

If you are not satisfied with the course, there is a 30-day money back guarantee (from the start of the course). No questions asked.

Kirk Byers Image

About Us:

Kirk Byers.

Kirk Byers is the founder of Twin Bridges Technology–a small business specializing in network automation training. He is the creator of the Netmiko Python library and also one of the core maintainers of the NAPALM project.

He teaches Python, Ansible, and Nornir courses for Network Engineers and writes about network automation at pynet.twb-tech.com. He is a long-time network engineer (CCIE #6243 emeritus), has extensive experience with *nix system administration, and is a Python programmer. He is interested in programming and networking and how to improve network engineering practices through automation.



Carl Montanari

Carl is a dual-CCIE (#37652 R/S and SP) and has been in the networking field since his very first job in the United States Air Force. Over the last few years, he has been diving further and further into automation: starting out with simple Python scripts, but quickly moving on to take advantage of Netmiko, NAPALM, python-Requests and tons more.

Over the past few years, he has been teaching fellow network engineers how to automate and how to integrate automation into CI/CD pipelines. Lately, he has loved exploring Nornir and getting himself more involved in contributing to these great open-source projects.



Ollie and Luna

Ollie and Luna specialize in chasing squirrels, taking naps, chewing chew toys (and occasionally laptop cables), and being good pups. They are both partial to Nornir.

Python for Network Engineers

Python Network Automation

Course Starts August 08

Sign-up now and receive a 10% discount!

Starter Package

  • Six core lessons including videos and exercises

Plus Package

  • Six core lessons including videos and exercises
  • Community Forum
  • Bonus Lesson: Ansible-style Inventory, Nornir + Netmiko/NAPALM Direct Tasks

Premium Package

  • Six core lessons including videos and exercises
  • Community Forum
  • Bonus Lesson: Ansible-style Inventory, Nornir + Netmiko/NAPALM Direct Tasks
  • Additional Bonus Lesson