Skip to main content

Programming SR Linux: Management APIs and Automation

Course number: OP00138
Course duration: 3 days (including lectures and hands-on lab exercises)
Price: $2,595 US

Course overview

This instructor-led, hands-on course will provide a comprehensive understanding of programming APIs (Application Programming Interface) for network automation. This includes gNMI (Network Management Interface), which allows you to configure and monitor every aspect of SR Linux, including streaming telemetry. The JSON-RPC API offers similar configuration and monitoring capabilities; in addition to implementing Ansible modules, it allows SR Linux to be configured as part of an Ansible automation workflow. gNOI (Network Operations Interface) provides a programmatic interface to network operations such as upgrading software, saving SR Linux files and rebooting a device. Finally, gRIBI (Routing Information Base Interface) allows external programs to populate entries directly into the SR Linux routing tables.

Course objectives

After completing the course, participants should be able to:

  • Describe the high-level architecture of SR Linux and its network automation tool-set
  • Explain the structure of the SR Linux YANG data model
  • Understand gRPC and protocol buffers, and how they provide the foundations of SR Linux's programmatic capabilities
  • Write python programs to configure and monitor SR Linux using its gNMI and/or JSON-RPC APIs, including streaming telemetry, gNOI and gRIBI
  • Learn how to automate SR Linux tasks with Ansible

Course modules

Module 1 – Model-Driven Network Automation

  • Network Automation and the SR Linux programmability tool-set
  • YANG and Model-Driven Management
  • Define a configuration and state data model with YANG
  • The pyang multi-purpose YANG tool
  • Overview of the SR Linux YANG Data Model
  • Hands-on: Explore the SR Linux Data Model, use pyang to validate and visualize models

Module 2 - Python and SR Linux

  • Some elements of Python in the context of SR Linux network programmability
  • Hands-on: Python and SR Linux programming 

Module 3 – gNMI APIs

  • What is an API?
  • Explain gRPC and protocol buffers
  • gRPC Network management Interface (gNMI) configuration and telemetry services
  • Enable gNMI on SR Linux
  • Review examples of gNMI clients - gnmic and python libraries
  • Hands-on: The gnmic command line tool and python-based gNMI programming
  • Streaming telemetry with gNMI
  • Hands-on: Monitor SR Linux with a TIG-stack (Telegraf-Influxdb-Grafana)

Module 4 – Advanced gNMI APIs

  • gNOI - An API for network operations and management tasks 
  • Hands-on: gNOIc command line tool and python-based gNOI programming
  • gRIBI - An API to inject routes into the Routing Information Base 
  • Hands-on: gRIBIc command line tool and python-based gRIBI programming

Module 5 – JSON-RPC APIs and Ansible Automation

  • JSON-RPC introduction
  • Review the SR Linux JSON RPC methods
  • Enable JSON RPC on SR Linux
  • Overview of JSON-RPC tools
  • Hands-on: JSON-RPC command line example and JSON-RPC python programming
  • Automate SR Linux with JSON RPC-based Ansible modules
  • Hands-on: Build Ansible playbooks to automate SR Linux

Schedule & registration


Programming SR Linux: Management APIs and Automation

Price for this course is $2595 (USD) per seat

Duration: 3 days

Course dates Sort descending Delivery Format Virtual Time Zone or Course Location Language Registration
- Virtual instructor-led New Delhi - IST English (US) Register Now
- Virtual instructor-led Chicago - CST English (US) Register Now
- Virtual instructor-led Paris - CET English (US) Register Now
- Virtual instructor-led New Delhi - IST English (US) Register Now