Junos Platform Automation and DevOps (JAUT)

Junos Platform Automation and DevOps (JAUT) 

This five-day course provides students with knowledge of how to automate Junos using DevOps automation tools, protocols, and technologies. Students receive hands-on experience with tools and languages relevant to automating the Junos OS platform in a DevOps environment. The course includes an introduction to Jinja2 templates, an in-depth discussion of Junos PyEZ library, and detailed explanation of how Ansible, Salt, and JSNAPy automation tools are used with the Junos operating system. The course introduces students to Junos commit, operation (op), event, and SNMP on-box scripts. Two languages for developing these scripts are discussed: SLAX and Python. The course also explains Juniper Extension Toolkit and related APIs, YANG, and OpenConfig. Finally, the course discusses use of the Junos Telemetry Interface, the Contrail HealthBot tool, and the Junos ZTP feature. Through demonstrations and hands-on labs, students will gain experience in automating the Junos OS and device operations. This course uses Junos OS Release 18.3R1, Junos PyEZ 2.2, and Ansible 2.7.



Additional Details

This course uses Junos OS Release 17.1R1, PyEZ 2.0, Python 2.7, and Ansible 2.3.

3 Ways to Buy!
Enroll Below
Register for this course by clicking on an upcoming date below.
On-Demand
Better Value
Skip the wait and purchase instant On-Demand access to this course.
All Access Pass
Best Value
Purchase an All Access Pass and get instant access to all on-demand and instructor-led courses at one low price!

 

Click To Expand Full Course Outline

Course Level

Junos Platform Automation and DevOps (JAUT) is an intermediate-level course.

Intended Audience

This course benefits individuals responsible for configuring and monitoring devices running the Junos OS.

Prerequisites

Students should have intermediate-level networking knowledge and an understanding of the Open Systems Interconnection (OSI) model and the TCP/IP protocol suite. Students should also attend the Introduction to the Junos Platform Automation and DevOps (IJAUT) course prior to attending this class.

Objectives

After successfully completing this course, you should be able to:

  • Describe the benefits of network automation.
  • Explain basic principles of DevOps and NRE.
  • Describe different approaches and tools used for Junos automation.
  • Discuss how templates are used for Junos automation.
  • Understand Jinja2 syntax.
  • Describe various methods Junos PyEZ can use to connect to a Junos device.
  • Execute Junos RPCs using Junos PyEZ.
  • Explain the functionality of various Junos PyEZ utilities.
  • Use Jinja2 templates with Junos PyEZ.
  • Use Junos PyEZ Tables and Views.
  • Securely connect to Junos devices using Ansible.
  • Use advanced Ansible playbook functionality.
  • Work with Ansible variables.
  • Manage Junos device configurations using Jinja2 templates and Ansible.
  • Explain the use of SLAX language with Junos.
  • Understand basic SLAX syntax.
  • Describe SLAX templates, variables, and flow control statements.
  • Understand the Junos function library.
  • Explain the difference between available SLAX versions.
  • Explain how to create and run Junos op scripts.
  • Use SLAX and Python languages to develop op scripts.
  • Use arguments with op scripts.
  • Issue RPCs from op scripts.
  • Change the configuration with op scripts.
  • Describe how commit scripts can be used to make changes to the configuration.
  • Describe how to use commit scripts to generate custom warnings and errors during a commit.
  • Explain how to use SLAX and Python languages to develop commit scripts.
  • Configure and enable commit scripts.
  • Identify Junos OS events.
  • Create Junos OS event policies.
  • Create Junos OS event scripts.
  • Understand the use of Junos OS SNMP scripts.
  • Create and configure Junos OS SNMP scripts.
  • Explain basic Salt architecture.
  • Understand how Junos devices are managed with Salt.
  • Use Junos execution and state modules for Salt.
  • Understand the SLS file format.
  • Describe how JSNAPy can help automate Junos.
  • Install and configure JSNAPy.
  • Use JSNAPy to create snapshots.
  • Use JSNAPy to perform tests.
  • Describe the YANG language features.
  • Understand the syntax of YANG.
  • Explain how YANG is used in Junos OS.
  • Describe the advantages of OpenConfig.
  • Modify the Junos OS configuration using OpenConfig.
  • Describe using OpenConfig with the Junos Telemetry Interface (JTI).
  • Explain what is JET.
  • Understand the JET Service API.
  • Understand the JET Notification API.
  • List protocols and data formats used with JET.
  • Develop simple JET applications.
  • Understand the Junos Telemetry Interface.
  • Provision Junos Telemetry sensors.
  • Explain the difference between Native and gRPC sensors.
  • Understand Telemetry message formats.
  • Explain the advantages of Contrail HealthBot.
  • Explain the purpose and value of ZTP.
  • Describe the components and operations of ZTP.
  • Deploy a QFX5100 Series switch using ZTP.
  • Setup the JET VM.
  • Create JET Packages.

Course Contents

Day 1

Chapter 1: Course Introduction

Chapter 2: Junos Automation Fundamentals

  • Benefits of Automation
  • DevOps and NRE
  • Junos Automation Stack
  • Junos Automation Tools
  • Introduction to NITA

Chapter 3: Jinja2

  • Jinja2 Overview
  • Working with Jinja2 in Python
  • Jinja2 Syntax

Chapter 4: Advanced Junos PyEZ

  • Connecting to a Junos Device
  • Working with RPCs
  • Junos PyEZ Utilities
  • Junos PyEZ and Jinja2
  • Tables and Views
  • Lab 1: Using Junos PyEZ with Jinja2 Templates

Day 2

Chapter 5: Ansible Intermediate

  • Ansible for Junos Review
  • Securing Device Connection
  • Playbook Flow Control
  • Lab 2: Ansible Operations with Junos
  • Ansible Variables and Jinja2 Templates
  • Case Study
  • Lab 3: Using Ansible for Junos Configuration Management

Chapter 6: SLAX

  • Junos On-Box Automation Overview
  • Basics of FLAX
  • SLAX Variables
  • Flow Control
  • Junos Function Library
  • SLAX Versions

Chapter 7: Junos Op Scripts

  • Junos Op Scripts Using SLAX
  • Customizing Junos Command Output
  • Configuration Changes with SLAX Op Scripts
  • Junos Op Scripts Using Python
  • Configuration Changes with Python Op Scripts
  • Op Script Configuration and Debugging
  • Lab 4: Junos Op Scripts

Chapter 8: Junos Commit Scripts

  • Junos Commit Scripts Overview
  • Junos Commit Scripts Using SLAX
  • Junos Commit Scripts Using Python
  • Custom Configuration Syntax
  • Commit Script Configuration and Debugging
  • Lab 5: Junos Commit Scripts

Day 3

Chapter 9: Junos Event Policies and Event Scripts

  • Junos OS Events
  • Event Policies
  • Event Scripts
  • Lab 6: Junos Event Policies and Event Scripts

Chapter 10: Junos SNMP Scripts

  • Junos OS SNMP Scripts
  • Case Study
  • Lab 7: Junos SNMP Scripts

Chapter 11: Salt

  • Salt Overview
  • Junos and Salt
  • Junos Execution Module
  • Salt States and Junos State Module
  • Case Studies
  • Lab 8: Automating Junos with Salt

Day 4

Chapter 12: JSNAPy

  • JSNAPy Overview and Installation
  • Configuration Files
  • JSNAPy Commands
  • Test Files
  • Integration with Other Tools
  • Lab 9: Using JSNAPy

Chapter 13: YANG

  • YANG Overview
  • YANG Statements and Syntax
  • Junos YANG Modules
  • Custom YANG Modules for Junos
  • Custom Configuration and Translation Script Example
  • Custom RPC and Action Script Example

Chapter 14: OpenConfig

  • OpenConfig Overview
  • OpenConfig Package
  • Using OpenConfig
  • OpenConfig Telemetry
  • Lab 10: Implementing OpenConfig

Day 5

Chapter 15: Junos Extension Toolkit

  • Overview of JET
  • gRPC and JET IDL Files
  • JET Service API
  • JET Notification API
  • Lab 11: Using JET

Chapter 16: Junos Telemetry

  • Junos Telemetry Overview
  • Native Sensors for JTI
  • OpenConfig and gRPC Sensors for JTI
  • Contrail HealthBot Overview
  • Contrail HealthBot Rules and Playbooks
  • Telemetry Case Study
  • Lab 12: Using Junos Telemetry

Appendix A: Zero Touch Provisioning

  • Understanding ZTP
  • ZTP in Action: A Working Example

Appendix B: Using JET Virtual Machine

  • Setting up the JET VM
  • Creating Signed JET Applications

Schedule
  Below is a list of scheduled dates when this event will take place. Some events require registration for attendance so you will need to click on the date for more information regarding the specific event.

If you don't see the date you prefer, please email us at training@juniper.net to request a date or schedule your custom training session.

Display dates for 

 
Date  Subject Region Location Facilitator Language Status
11/9/2020 9:00 AM CET Junos Platform Automation and DevOps (JAUT) - ILO Europe, Middle East and Africa (EMEA) EMEA Online Juniper Networks English Open
11/9/2020 7:30 AM PST Junos Platform Automation and DevOps (JAUT) - ILO Americas (AMER) AMER Online Juniper Networks English Open
11/23/2020 9:00 AM SGT Junos Platform Automation and DevOps (JAUT) - ILO Asia Pacific (APAC) Instructor Led Online Juniper Networks English Open
11/30/2020 9:00 AM CET Junos Platform Automation and DevOps (JAUT) - ILO Europe, Middle East and Africa (EMEA) EMEA Online Juniper Networks English Open
1/11/2021 7:30 AM PST Junos Platform Automation and DevOps (JAUT) - ILO Americas (AMER) AMER Online Juniper Networks English Open
2/1/2021 9:00 AM CET Junos Platform Automation and DevOps (JAUT) - ILO Europe, Middle East and Africa (EMEA) EMEA Online Juniper Networks English Open
3/2/2021 7:30 AM PST Junos Platform Automation and DevOps (JAUT) - ILO Americas (AMER) AMER Online Juniper Networks English Open
3/8/2021 9:00 AM CET Junos Platform Automation and DevOps (JAUT) - ILO Europe, Middle East and Africa (EMEA) EMEA Online Juniper Networks English Open
3/29/2021 9:00 AM SGT Junos Platform Automation and DevOps (JAUT) - ILO Asia Pacific (APAC) APAC Online Juniper Networks English Open