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.
Let’s start with some easy wins that require read-only access to network devices and no data model apart from inventory of devices.
We’ll gather device facts through SNMP and generate software version reports, continue with gathering IP addresses and generating list of subnets configured in our network, collect ARP and MAC tables to build a comprehensive list of hosts visible in your network, and conclude with a simple validation script that will report devices with outdated software version.
You will be able to get the job done with information-gathering modules available in standard Ansible 2.2 distribution, the daredevils will use NAPALM or other third-party Ansible libraries.
You’ll be able to choose among these hands-on assignments:
- Create a device health report (CPU utilization, memory utilization…);
- Collect hardware inventory
- Collect ARP tables and create a list of hosts in each subnet
- Collect CDP/LLDP, OSPF or BGP neighbors and build a network topology diagram (requires Graphviz or Gephi)
- Collect device IP addresses and create DNS zone files
The guest speaker in Autumn 2017 session will talk about an event-driven open-source solution (no, it's not Salt or StackStorm). Can't tell you more at the moment.
Previous guest speakers
Scott Lowe started his transition from an infrastructure engineer focused on storage and virtualization into full-stack engineer familiar with open-source software in 2012. He started by exploring the intricacies of Git and GitHub and continued the journey by researching the capabilities of Open vSwitch, LibVirt, etcd,Terraform, Vagrant/VirtualBox, Docker and Ansible.
In his talk he’ll focus on lessons learned while using Git/GitHub, and we’ll also spend a significant amount of time talking about the journey toward becoming an open-source-aware full-stack engineer.
To solve the hands-on exercises you'll have to collect data from networking devices and generate reports. You'll get the information needed to get the job done in these sections of the Ansible for Networking Engineers webinar:
- YAML and JSON (45 minutes) so you'll understand the format of Ansible playbooks
- Creating templates with Jinja2 (at least the easy parts - ~ 1 hour)
- Using Ansible (1 hour 15 minutes)
- Ansible networking modules (1 hour 30 minutes)
You should also watch the Creating Summary and Compliance Reports presentation from the January 2017 session.
Additional recommended materials
If you plan to generate reports in HTML format and are not familiar with HTML markup, it won't hurt to go through one of the online HTML tutorials.
You might also find these Software Gone Wild episodes interesting (each one is ~1 hour long):
- Schprokits with Jeremy Schulman, particularly the blast radius discussions;
- Toolsmith at Netflix with Elisa Jasinska
Recording of the January 2017 session
Git and GitHub
Creating Reports with Ansible