Data Models
Home » Courses » Building Network Automation Solutions » Data Models
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:53:10 Data Models and Data Model Transformation |
||
This section introduces data models and helps you answer these questions:
|
||
1:20:31 Formatting, Describing, and Storing Data |
||
After you built your data model, you have to create data structures (device, link, network, service, or customer data) in a format readable by humans and machines, describe the data model for documentation and validation purposes, and store the data somewhere. This section dives deep into presentation formats (XML, JSON, YAML), data description languages (including YANG), and data stores, from text files and Excel to NoSQL databases. |
||
37:05 Single Source of Truth |
||
After mastering the data model-, model transformation-, and data store concepts, you're ready for one of the most important network automation topics: single source of truth. |
||
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. |
||
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. |
||
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. |
||
1:28:48 Intent-Based Networking |
||
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. |
||
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. |
||
1:23:27 Free items 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. |
||
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. |
||
Optional Materials |
||
1:18:10 Manipulating Network Information with Python |
||
Hans Verkerk guided us you through some easy-to-understand scripts written in Python. These scripts abstract Cisco IOS configurations into Python data structures, enabling you to query the data gathered from network devices using standard Python utilities in a simple but effective way. |
||
Additional resources |
||
Want to know even more about data models in network automation? You might enjoy these webinars and presentations. |