From Building Network Automation Solutions
At a Glance
- High-intensity interactive online course;
- Jump-start your network automation career;
- Hands-on experience working on a solution to your own problem;
- 6 week course spread across ~2 months;
- Live discussion and guest speaker sessions;
- Design and coding assignments and group work;
- Final course completion certificate.
The initial session of the course will focus on the big picture:
- Network automation services you might need
- Reusable components within these services
- Data sources (databases, text files… ) and single source of truth
- Data collection systems
- Monitoring and orchestration
We’ll prepare for our journey by revisiting a few oft-ignored truths:
- Learn to walk before you try to run - start with read-only access
- Don’t try to boil the ocean - solve one small problem at a time
- Create reusable building blocks instead of humongous conglomerates of code
- Get executive sponsorship and professional help
The non-programmers in the audience will also appreciate these topics:
- The need for computational thinking
- You’ll get lost without source code control and versioning
- Refactoring is inevitable - get used to it
- Error handling and unit tests are your friends
In the hands-on part of the course you’ll build your own lab, either using virtual devices or physical gear. If you decide to go with the virtual device approach, you can choose between Arista vEOS, Cisco VIRL, Cisco CSR, Cumulus VX, Juniper vSRX or Juniper vMX.
You’ll also get familiar with Git, create your own Github account and create your own exercises repository.
Patrick Ogenstad, the guest speaker in the introductory session, will talk about his journey to network automation, what got him started as well as key takeaways and lessons learned along the way.
Previous guest speakers
In January 2017 Elisa Jasinska (Bigwave IT) gave an overview on how to approach your automation and orchestration strategy. She described how you could:
- Split your automation challenge into numerous small automation services;
- Decompose each automation service into smaller components, and identify common components that could be reused across many services;
- Design your network automation systems;
- Create a single source of truth for your automation solution;
- Set up data collection and monitoring systems;
- Integrate individual services into an orchestration solution.
Before starting the course you should revisit the basics of network automation and network programmability. I would recommend watching these webinars, videos and presentations:
- Introduction to Network Automation (1 hour 50 minutes)
- Getting Started with Network Automation (50 minutes)
- Design Your Network Automation Systems (1 hour 40 minutes)
To understand why we'll use Git, Ansible and NSOT during the hands-on assignments, watch the Network Automation Tools webinar (2 hours).
If you haven't used Git before, watch the Learn Git presentation (1 hour 40 minutes).
You'll also have to build your own lab, install Ansible, and check that you can reach the devices in your lab from your Ansible host/VM. To get familiar with simple Ansible operations, watch the Introduction to Ansible video from the Ansible for Networking Engineers online course (25 minutes).
Finally, if you'd like to have a guided tour of the self-study materials, start the self-paced module.
Additional recommended materials
You might want to get familiar with Vagrant, VirtualBox and Git. Here are a few links to get you started:
To understand how Git really works (beyond the three basic commands) read at least the first few chapters of the Pro Git book.
It also wouldn't hurt to get familiar with Python. These (free) online classes should help you get started:
Finally, to get in proper mindset, listen to these Software Gone Wild episodes (each one is ~1 hour long)
- Becoming a programmer with Elisa Jasinska
- Network Automation Tools with Jason Edelman
- Network Programmability with David Gee
- Open-Source Network Management tools
- More Open-Source Network Management tools
Recordings of live sessions
Course introduction and logistics
Getting started with network automation
A journey to network automation
- Automating Firewall Rules
- Scaling to 100 Routers
- Undead Routers
- Idempotency and Dry Runs
- Data Is Key
- Heroes, Conclusions and Answers
- Journey to Automation (PDF)
Design your network automation system
Select the right tool for the job
Whiteboarding and discussion questions