Python hands-on training for network engineers. How to automate Junos with Python

ksator ksator Last update: Feb 19, 2024

What to find in thos project

A "Python for network enginners" course.
It is useful to network engineers with no python programming knowledge, who wants to use python to manage junos devices.
This is a hands-on training, with step-by-step instructions and many basics examples.
The course covers an introduction to Python programming, it includes also the PyEZ library to interact with JUNOS devices as well as an overview of some other Python modules to manipulate IP addresses, files, regular expressions, templates and rest calls.

Presentations

The presentations are available into this repo
- Python-for-network-engineers.pdf
- Python-training.pdf

Scripts

All the scripts are available into this project.
The examples and code in this document are for learning and educational purposes.
The samples were created with the goals of clarity and ease of understanding.
If you are writing code for a real application, you would write some code differently :-)

Agenda

  • introduction to network automation
  • introduction to python programming
  • IP addresses manipulation
  • files manipulation
  • building documents with jinja2 templates
  • YAML (humans to programs)
  • junos automation with PyEZ python library
  • JSON data format (exchange data between applications)
  • programmatic access with REST APIs

Looking for more Junos automation solutions:

https://github.com/ksator?tab=repositories
https://gitlab.com/users/ksator/projects
https://gist.github.com/ksator/

Contributions, bugs, questions or enhancement requests:

please submit github issues or pull requests.

Subscribe to our newsletter