Junos Platform Automation and DevOps (JAUT) – Outline

Detailed Course Outline

Day 1

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

Day 2

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
SLAX
  • Junos On-Box Automation Overview
  • Basics of SLAX
  • SLAX Variables
  • Flow Control
  • Junos Function Library
  • SLAX Versions
Jinja2
  • Jinja2 Overview
  • Working with Jinja2 in Python
  • Jinja2 Syntax
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
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
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

Junos Event Policies and Event Scripts
  • Junos OS Events
  • Event Policies
  • Event Scripts
LAB 6: Junos Event Policies and Event Scripts
Junos SNMP Scripts
  • Junos OS SNMP Scripts
  • Case Study
LAB 7: Junos SNMP Scripts

Day 4

JSNAPy
  • JSNAPy Overview and Installation
  • Configuration Files
  • JSNAPy Commands
  • Test Files
  • Integration with Other Tools
LAB 9: Using JSNAPy
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

Day 5

Juniper Extension Toolkit
  • Overview of JET
  • gRPC and JET IDL Files
  • JET Service API
  • JET Notification API
LAB 11: Using JET
Junos Telemetry
  • Junos Telemetry Overview
  • Native Sensors for JTI
  • OpenConfig and gRPC Sensors for JTI
  • Contrail HealthBot Overview
  • Contrail HealthBot Rules and Playbooks
  • Case Study
Lab 11: Using Junos Telemetry
Salt
  • Salt Overview
  • Junos and Salt
  • Junos Execution Module
  • Salt States and Junos State Module
  • Case Studies
LAB 8: Automating Junos with Salt
OpenConfig
  • OpenConfig Overview
  • OpenConfig Package
  • Using OpenConfig
  • OpenConfig Telemetry
LAB 10: Implementing OpenConfig
Appendix: Zero Touch Provisioning
  • Understanding Zero Touch Provisioning
  • ZTP in Action: A Working Example
Appendix: Using JET Virtual Machine
  • Setting Up the JET VM
  • Creating Signed JET Applications