Skip to main content

Programming SR Linux: NetOps Development Kit, CLI Plugins, and Event Handler

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

Course overview

This hands-on, instructor-led course defines the programmability and customization capabilities of the Nokia SR Linux. This course covers its various functions such as the Netops Development Kit (NDK) that allows third-party applications to be added to the SR Linux using generic Remote Procedure Call (gRPC) services. This course also covers the Command Line Interface (CLI) plugin framework that allows users to create their own show and tools CLI commands, and the event handler framework that enables programmable actions to react on system events using MicroPython scripts. 

Course objectives

After completing the course, participants should be able to:

  • Describe the high-level architecture of SR Linux 
  • 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 
  • Design and onboard their own python-written application into the SR Linux platform
  • Implement their own customized CLI commands, using the SR Linux CLI plugin-framework
  • Understand the use of event handler framework and implement their own programmable event handling actions using MicroPython script 

Course modules

Module 1 – Model-Driven Management

  • Explain the purpose of the model-driven management
  • Describe the purpose and structure of YANG model
  • Describe a configuration and state data model with YANG
  • Use the pyang multi-purpose YANG tool to verify the YANG model
  • Explain how the SR Linux is derived from its YANG data model

Module 2 – Python Refresher

  • Examine the use of pyang to validate and visualize YANG data models
  • Review some elements of Python in the context of SR Linux network programmability

Module 3 – gRPC and NDK

  • Describe the NDK interactions with other SR Linux components
  • Explain the purpose and benefits of gRPC and protocol buffers
  • Describe the gRPC client/server architecture
  • Describe how to onboard SR Linux third-party applications
  • Describe the capabilities provided by the gRPC services in the SR Linux NDK
  • Describe how to create an SR Linux third-party application

Module 4 – CLI plugins

  • Describe how custom CLI commands are integrated with SR Linux CLI commands
  • Describe and define custom CLI syntax
  • Describe and define a CLI schema 
  • Explain how to retrieve the configuration and state data from the SR Linux datastore
  • Use SR Linux formatter and decorator functions to display data
  • Examine the native CLI plugin in SR Linux
  • Describe how to create a python-based CLI show command

Module 5 – Event Handler Framework

  • Describe the main use cases of the event handler framework 
  • Describe the components required to configure an event handler
  • Examine the Nokia provided scripts to illustrate the event handler use cases
  • Describe how to create a programmable MicroPython script
  • Describe how to configure an event handler instance 

Schedule & registration