Data Models

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.

Data models are the crux of any successful network automation solution, and getting them just right is a mixture of science and art.

The guidelines discussed in this section include:

  • Abstract everything - focus on data that describe your requirements, not data that the device need to be configured
  • Avoid data duplication - never store the same bit of information in two places
  • Separation of infrastructure and service data - define a common data model describing network infrastructure, and separate data models for individual services

We’ll also talk about data stores (from text files to relational databases), discuss their pros and cons, and figure out how to use Ansible with external data stores.

Hands-on Exercises

Hands-on assignments for this section include:

  • Build a simple data model for VLAN service;
  • Create a data model for VXLAN-based data center fabric;
  • Model a simple Service Provider service (Internet access or L3VPN);

All assignments require you to build a data model and a sample configuration template to verify the data model adequately describes your service.

Detailed description of hands-on exercises …

Guest speakers

David Barroso (the author of SDN Internet Router, co-author of NAPALM, and author of YANG and OpenConfig support in NAPALM) will talk about OpenConfig support in NAPALM and demonstrate how you can use YANG data models to modify device configurations and get structured operational data in a multi-vendor environment.

More about David

Previous guest speakers

In spring 2017 course Marcel Wiget introduced OpenConfig and explained how you can use it for configuration and telemetry. He concluded the presentation with with practical examples demonstrating the capabilities of Ansible networking modules in combination with OpenConfig/YANG to provision Juniper Networks routers and switches.

More about Marcel

Self-study materials

This section focuses on the infrastructure and services data models. Watch:

If you'd like to have a guided tour of the self-study materials, start the self-paced module.

Additional recommended materials

If you want to understand YANG and NETCONF better, watch the first part of the NETCONF and YANG webinar (~1 hour if you skip the hands-on parts). You might also want to watch the NETCONF Deep Dive section to understand the NETCONF protocol details.

You might also want to listen to Model Driven Networking podcast with Jeff Tantsura.

Recording of the January 2017 session

NETCONF, YANG and OpenConfig

Data Models and Data Stores