Changing Network Configurations or State
Home » Courses » Building Network Automation Solutions » Changing Network Configurations or State
Changing Network Configurations or State
In the fourth module we'll use infrastructure- and services data models developed in the third module to provision and validate network services.
Understanding Ansible |
||
You should have completed the Ansible for Networking Engineers course by now. If you haven't done that, please do it now, and make sure you're thoroughly familiar with these sections:
|
||
1:25:20 Network Service Provisioning Tutorial |
||
In this tutorial David Barroso explains the basics of network device configurations based on abstracted data models, including data derived from a back-end database. |
||
Abstract Vendor Interfaces | 16:16 | 2017-02-05 |
Abstract Vendor Configuration | 11:47 | 2017-02-05 |
Data-Driven Configuration | 14:04 | 2017-02-05 |
Data-Driven Configuration with Backend | 29:13 | 2017-02-05 |
Data Model Abstractions | 14:00 | 2017-02-05 |
Additional resources |
||
Slide deck | 8.6M | 2017-01-29 |
Source code for David Barroso’s presentation | ||
1:03:59 Configuring Network Devices: Lessons Learned |
||
Using Ansible device configuration modules to change parts of device configuration seems easy enough (as does replacing the whole device configuration with NAPALM)... but as always, you'll encounter numerous showstoppers and caveats when trying to use them. This section describes the principles of managing network device configurations, the caveats of using Ansible device configuration modules, and the details of recovering from failures using configuration rollback mechanisms. |
||
Configuring Network Devices - Lessons Learned | 16:03 | 2017-10-25 |
Small or Large Batches of Configuration Changes? | 8:02 | 2017-10-25 |
Ansible Configuration Modules Behind the Scenes | 26:28 | 2017-10-25 |
QA - Configuration Rollback | 13:26 | 2017-10-25 |
Slide deck | 2.0M | 2017-10-23 |
1:09:28 Case Study: VLAN Service Provisioning |
||
The VLAN Service Provisioning case study starts with simple configuration changes based on service data model, and slowly introduces more complex topics like data model transformation, service decomissioning, and post-deployment validation. |
||
Provision New Services | 19:37 | 2017-02-05 |
Simplify the Data Model | 12:40 | 2017-02-05 |
Decomissioning, Validation and Cleanup | 17:32 | 2017-02-05 |
Further Steps | 19:39 | 2017-02-05 |
Additional resources |
||
Slide deck | 4.7M | 2017-02-05 |
Source code | ||
1:30:47 Using IPAM as a Source of Truth |
||
Every network automation solution needs an authoritative source of truth. This section describes how you can use IPAM tools (using NetBox as a sample tool to illustrate the concepts) to provide the source of truth for IP address assignments, IP subnet allocation, VLAN numbering, and even shared secrets like RADIUS keys. |
||
What Is IPAM? | 24:00 | 2017-10-25 |
IPAM as a Source of Truth | 17:46 | 2017-10-25 |
NetBox Introduction | 15:03 | 2017-10-25 |
Data Import and Export | 14:04 | 2017-10-25 |
Enabling Automation | 19:54 | 2017-10-25 |
NetBox Slide Deck | 1.2M | 2017-10-24 |
More Information |
||
NetBox automation integrations | ||
Nautobot: network automation platform built on top of a NetBox fork | ||
1:39:41 Zero-Touch Provisioning |
||
Zero-Touch Provisioning (ZTP) is an obvious candidate for an network automation, as the impact of incorrectly-provisioned new devices is usually minimal. However, even though every vendor claims to have a ZTP solution, building an end-to-end system integrated with your workflow remains a hard problem. In his presentation Patrick Ogenstad explained the basics of ZTP, described typical ZTP components, presented a solution you can use to build dynamic device configuration files, and answered tons of attendee questions. |
||
ZTP Introduction | 24:05 | 2019-03-27 |
ZTP Components | 12:49 | 2019-03-27 |
Building a Dynamic Solution | 32:29 | 2019-03-27 |
Questions and Answers | 30:18 | 2019-03-27 |
Additional Information |
||
Zero-Touch Provisioning Slide Deck | 7.9M | 2019-03-19 |
Zero-Touch Provisioning DIY Tutorial | ||
PDF version of ZTP DIY Tutorial | 2.5M | 2019-03-19 |
Sample Ansible Playbooks |
||
Before you start working on solving the hands-on exercise for this module you might want to spend some time exploring some of my infrastructure and service provisioning Ansible playbooks. |
||
Deploy a network infrastructure running OSPF as the routing protocol | ||
Deploy inter-AS MPLS/VPN infrastructure and customer services | ||
Deploy VLAN service in a data center fabric | ||
Deploy large-scale DMVPN network | ||
Create DHCP pools on Cisco IOS devices | ||
Hands-on Exercises |
||
We got to the point where you'll build a full-blown solution using the data model you developed. Use it to generate device configurations, deploy them to your lab devices, and validate that the services have been correctly deployed. |
||
Homework: deploy network infrastructure or network services from a data model | ||
Submit your homework | ||
Overview: Submitting Hands-On Exercise Solutions | ||
Example: Managing Network Services Configuration with Ansible | 9.0K | 2018-12-24 |
Additional Resources |
||
Optional Self-Study Materials |
||
If you want to know more about NAPALM, the multi-vendor library heavily used in this part of the course, watch the NAPALM presentation from NANOG64 and listen to several podcasts we did with David Barroso and Elisa Jasinska. |
||
NAPALM in action (from NANOG 64) | ||
Validating deployments with napalm-validate | ||
NAPALM documentation | ||
Related Software Gone Wild episodes |
||
Using NAPALM to Integrate Ansible with Networking Devices | ||
NAPALM Update | ||
Network Automation @ Spotify |