Building Network Automation Solutions

Home » Webinars » Building Network Automation Solutions » Data Models

Build your own network automation solution during this 6-week high-intensity interactive online course.

Data Models

The third module of the network automation online course describes data models and data stores. We'll start with an introduction, figure out what NETCONF, YANG and OpenConfig are, and finish with a data model abstraction case study.

1:29:43 Data Models and Data Stores

What is YANG? Why is it useful? Where can I store my data? When should I start using a database instead of text files? What about Excel spreadsheets? What’s the difference between relational and NoSQL databases? You’ll get answers to all these questions in this section.

You’ll also learn how to build a data model describing your network and how you can transform a network- or services-focused data model into a device-focused data model (and when that would be useful).

Data Models and Data Stores 2.2M 2017-01-27
Data Models - Introduction 12:53 2017-01-27
Building a Data Model 30:06 2017-01-27
Data Model Transformations 14:12 2017-01-27
Data Description Languages 9:47 2017-01-27
Data Stores 22:45 2017-01-27

1:19:59 NETCONF, YANG and OpenConfig

The guest presentation by Marcel Wiget (Juniper) describes YANG data models, briefly introduces NETCONF, and shows how you can use OpenConfig or your custom data model (described in YANG) to configure Junos devices.

Vendor-Neutral YANG Data Models 1.8M 2017-01-20
Introduction to NETCONF and YANG 26:27 2017-01-27
OpenConfig and Custom YANG Data Models 14:24 2017-01-27
Using YANG Data Models on Junos 39:08 2017-01-27

58:07 Using YANG Data Models on Traditional Network Devices with napalm-yang

While configuring network devices with OpenConfig sounds really interesting, don't expect to be able to do it any time soon - the vendors are (as usual) very reluctant to add yet another layer of indirection on top of their already-bloated software.

David Barroso decided to fix that problem within NAPALM, and wrote a set of libraries (napalm-yang) that perform translation between OpenConfig (or any other) YANG data model and device configurations.

What Are YANG and OpenConfig 15:32 2017-10-13
napalm-yang Basics 10:29 2017-10-13
Advanced napalm-yang Features 10:01 2017-10-13
napalm-yang Integration with Ansible 22:05 2017-10-13
Slide deck: OpenConfig with NAPALM 2.7M 2017-10-09

Understanding Ansible

You won’t be able to follow the rest of this module without a thorough understanding of Ansible. If you haven’t completed the Ansible for Networking Engineers online course, please do it now, and focus on the data modeling part of DMVPN case study.

42:29 Abstract Everything

In this part of the Network Automation Use Cases webinar David Barroso walks you through layers of network automation abstraction: from abstracting vendor-specific APIs with NAPALM to abstracting device configuration differences, and finally abstracting device state into infrastructure data model.

Template Multi-Vendor Deployments 8:52 2017-07-21
Abstract Vendor API 8:42 2017-07-21
Automate Everything 6:35 2017-07-21
Abstract Everything 18:20 2017-07-21

Additional resources

Slide deck 4.1M 2016-11-18
Source code for examples used in this section

1:59:12 Intent-Based Networking and Data Models

Most of the intent-based systems are nothing more than a fancy orchestration system with an abstraction layer. This section describes the many levels of abstraction you can implement in such a system, and the data models you would need to do it.

What Is Intent-Based Networking 9:17 2018-01-17
Device Configuration as Intent 15:55 2018-01-17
Abstracting and Managing Device-Level Intent 23:32 2018-01-17
Network-Wide Intent 26:35 2018-01-17
Automated Remediation 22:00 2018-01-17
Back to Reality 12:15 2018-01-17
Questions and Answers 9:38 2018-01-17

Additional resources

Slide deck 2.9M 2018-01-13
Service models explained (RFC 8309)
YANG model for L3VPN service delivery
YANG model for L2VPN service delivery

34:02 Transforming Data Models with Ansible

Orchestration systems with an abstraction layer usually use network- and services data models to describe the desired system functionality, and device (or node) data models to describe the target state of the system.

In every such system, someone has to perform the mapping between the high-level and low-level data models, and this section describes how you can do that with Ansible.

Transforming Data Models with Ansible 17:28 2017-10-13
Data Models - Discussion Questions 16:34 2017-10-13
Slide Deck: Transforming Data Models with Ansible 2.3M 2017-10-20

1:23:27 Data Center Fabrics Data Model

In another network automation use case Dinesh Dutt talked about automated data center fabric deployments. Focus on how simple his data model is and how he builds a whole fabric from just a few configurable parameters.

Challenges of Data Center Fabric Deployments 20:02 2017-08-10
Separate Data from Code 12:56 2017-08-10
Ansible Tips and Tricks 9:19 2017-08-10
Validation 12:51 2017-08-10
Staging and Production 11:10 2017-08-10
Fabric Deployment Demo 17:09 2017-08-10

Additional resources

Slide deck 1.6M 2017-01-24
Source code for examples used in this section

Hands-on exercises

In the hands-on exercises you’ll build a data model for your network automation solution and store it in one or more YAML files.

Homework: Create a Service Data Model

4:25:00 Additional resources

If you want to know more about NETCONF, watch the NETCONF and YANG webinar with David Gee.

You started this section on %started%