This On-Demand, intermediate-level course expands foundational automation skills into large-scale, policy-driven, and life cycle–aware automation for Junos-based networks. Students learn how to design and operate automation workflows that enhance speed, consistency, and reliability while enabling organizations to grow network capacity without increasing operational overhead. Through a combination of guided instruction, demonstrations, and extensive hands-on labs, participants gain the capabilities needed to automate complex, multi-device environments with strong validation, observability, and change-control processes. Ansible and Jinja2 help learners deploy and adjust OSPF, BGP, and MPLS settings on many Junos devices, keeping configurations correct. The course teaches how to automate Junos software upgrades using pre-checks, post-checks, and scripted rollback workflows to reduce outage risks and maintenance time. JSNAPy-based validation is applied to detect configuration drift and automatically revert failed or noncompliant changes, strengthening operational governance and network stability. Students implement event-driven automation using Junos commit, op, event, and SNMP scripts to enforce policies in real time. They execute RPCs and advanced operational scripts to automate verification tasks, permissions management, and platform-level controls. Model-driven automation is introduced using YANG and OpenConfig to support vendor-neutral programmability across Junos and non–Junos devices, enabling standardized, future-ready automation architectures. The course also covers streaming telemetry with gNMI and visualization of network health using TIG stack components for proactive monitoring and capacity planning. Students apply Infrastructure as Code (IaC) principles using Terraform and the Juniper JTAF provider to manage network configurations declaratively and support repeatable, version-controlled operations. By the end of the course, learners can design and implement end-to-end automation workflows that reduce meantime to detect and resolve issues, enforce consistency across distributed network environments, and support scalable network growth through robust automation practices. This course uses Junos OS Release 24.4R1, Ansible 2.18, SLAX version 1.2, and JSNAPy 1.3.8. Watch a Sneak Peek

This course includes audio and closed captioning in English, and AI-generated closed captioning for German, French, Portuguese, Spanish and Japanese.

Note: Please note this course has been updated to the new version on 11 May 2026. Your current progress has carried over to the new version.

Purchase Includes: 365 Days of Access
Certification Track: Automation & DevOps
Difficulty Level: Intermediate
Additional Details
  • Termed access to the online course materials and labs begins at the time of purchase.
  • This course includes audio and closed captioning in English, and AI-generated closed captioning for German, French, Portuguese, Spanish and Japanese.
  • On-Demand courses do not include an eBook.
  • See complete terms & conditions.
  • Regional pricing is available in APAC. Please contact our Education APAC Sales Team.
  • Contact Education Services Sales: AMER Sales | APAC Sales | EMEA Sales
  • Need Support? Please contact us
#ModuleDurationLabRequired
0
How to use the Course and the Labs

To launch the course, click the module titles below. Please be patient as the content downloads to your system. As you complete each module, close the module window and launch the next module from this page. You will need to launch all required modules for the course to be considered complete.

If the course module includes a lab, you'll have access to the virtual lab environment. To enable access, go to the “Access Lab Environment” section and click Enable Lab Access. This will enable your lab account and display your lab-specific username and password. Follow the instructions in each module to use the labs as directed. First-time users should, Watch a Quick Lab Tutorial.

Important: For the best experience with this course we recommend that you use the latest version of Chrome, Edge, FireFox, or Safari. Older versions of Internet Explorer have been shown to have issues, therefore, we do not recommend using this browser.

If you have any technical problems with the course modules or the lab environment view the labs documentation or submit a support ticket.

5m
1
Course Introduction
This module introduces the Juniper Platform Automation and NetDevOps course and its objectives.
3m
2
Junos Automation Fundamentals
This module highlights the benefits of Junos automation and NetDevOps. The module further explains the Junos automation stack, Junos API, and the difference between on-box and off-automation. Finally, the module describes the purpose of on-box automation scripts and various tools, languages, and libraries used to automate Junos devices.
1h 14m
3
Using Docker for NetDevOps
This module explains the basic concepts of Docker and how to create and manage Docker containers. The module also describes how to configure networks for Docker containers.

Lab 01: Using Docker for NetDevOps 
1h 2m
4
Jinja2 Fundamentals
This module describes how to create and use Jinja2 templates for Junos automation.

Lab 02: Creating Jinja2 Templates
45m
5
Automating Junos Using JSNAPy
This module describes how to create snapshots and perform tests using JSNAPy to automate Junos OS.

Lab 03: JSNAPy
1h 3m
6
JAUT Activity 1
This activity reinforces concepts taught in the previous modules.
10m
7
Introduction to Ansible
This module explains the fundamentals of Ansible. The module describes the elements in the Ansible environment and how to retrieve information from Junos devices using Ansible.

Lab 04: Ansible Operations with Junos
1h 14m
8
Automating Junos Using Ansible
This module describes how the Ansible vault is used to securely connect to Junos devices, Ansible extended features, and how to manage device configuration using Ansible.

Lab 05: Using Ansible for Junos Configuration Management
49m
9
Ansible with Jinja2 Templates and JSNAPy
This module describes how to create Ansible playbooks using variables and templates. The module further explains how to configure Ansible and Jinja2 templates to manage Junos device configuration, and how to generate JSNAPy snapshots using Ansible.

Lab 06: Using Ansible with Jinja2 Templates and JSNAPy
49m
10
Junos Op Scripts Using Python
This module explains the use of arguments with Python op scripts. The module also describes how to create and execute Junos RPCs from Python op scripts.

Lab 07: Junos Op Scripts Using Python
52m
11
Junos Commit Scripts Using Python
This module describes how Python commit scripts can perform different actions. Further, the module explains how to develop Python commit scripts that perform configuration changes, and how to configure and enable Python commit scripts.

Lab 08: Junos Commit Scripts Using Python
1h 1m
12
JAUT Activity 2
This activity reinforces concepts taught in the previous modules.
10m
13
Junos Event Policies
This module describes how to identify Junos OS events and create Junos OS event policies.
45m
14
Junos Event Scripts Using Python 
This module describes how to create Junos event scripts.

Lab 09: Junos Event Policies and Event Scripts
49m
15
SLAX Fundamentals
This module explains the relation of SLAX to XML, XPath, and Junos XML API. The module further describes SLAX templates, variables, and flow control statements. Finally, the module explains how to create simple SLAX scripts.
48m
16
SLAX Extension Functions
This module explains how to use the Junos function library and describes the difference between the SLAX versions.
27m
17
Junos Op Scripts Using SLAX
This module describes how to use arguments with SLAX op scripts, and how to create and execute SLAX op scripts. The module further explains how to execute Junos RPCs from SLAX op scripts. Finally, it explains how to configure Junos devices with SLAX op scripts.

Lab 10: Junos Op Scripts Using SLAX
55m
18
JAUT Activity 3
This activity reinforces concepts taught in the previous modules.
10m
19
Junos Commit Scripts and Event Scripts Using SLAX
This module describes the basic SLAX commit script operation. Further, the module explains how to develop SLAX commit scripts that perform transient and persistent changes, and how to configure and enable SLAX commit scripts. Finally, the module explains how to create SLAX event scripts.

Lab 11: Junos Commit Scripts Using SLAX
1h 10m
20
YANG Language
This module introduces the main features and language syntax of YANG. The module also describes how to identify YANG language use cases with Junos OS.

Lab 12: Using pyang with Juniper YANG Models
1h 25m
21
OpenConfig
This module describes the advantages of OpenConfig and how to modify the Junos OS configuration using OpenConfig.

Lab 13: Implementing OpenConfig
31m
22
Custom YANG Modules
This module describes custom configuration statements and translation scripts. The module also explains custom RPCs and action scripts.

Lab 14: Implementing a Custom YANG Module
52m
23
Terraform (Experimental)
This module describes the Infrastructure as Code workflow with Terraform. The module further explains how to create a Junos Terraform provider using Junos Terraform Automation Framework. Finally, the module describes how to automate Junos configuration with custom Junos Terraform provider.

Lab 15: Using Junos Terraform Provider
57m
24
JAUT Activity 4
This activity reinforces concepts taught in the previous modules.
10m
25
Protocol Buffers and gRPC
This module describes the main features and the workflow of protocol buffers. The module further explains gRPC and how to implement a simple service.

Lab 16: Protocol Buffers and gRPC
52m
26
gNMI
This module describes the RPCs and main messages of the gNMI service and how to use the gNMIc client with the Junos target.

Lab 17: Using gNMIc with Junos Targets
1h 3m
27
Junos gNMI (Dial-In) Telemetry
This module describes how to collect telemetry from Junos using gNMI and TIG stack. Further, the module explains how to display telemetry data in Grafana.

Lab 18: Junos gNMI Telemetry with TIG stack
45m
28
JAUT Activity 5
This activity reinforces concepts taught in the previous modules.
10m
29
Junos OS Evolved Automation
This module describes Junos OS Evolved. The module further explains how to install and manage vJunosEvolved, how to run the third-party application in the containers, and how to automate Junos OS Evolved using Junos PyEZ.
30
Junos SNMP Scripts
This module describes Junos OS SNMP scripts, and how to create and configure Junos OS SNMP scripts.

Lab 19: Junos SNMP Scripts (Optional)
31
Juniper Extension Toolkit
This module describes the main JET components and use cases. The module further explains gRPC and JET IDL files and how to develop JET applications using Service API.

Lab 20: Using JET Service API (Optional)
$5,000 USD