single |
Junos PyEZ is a Python library to remotely manage/automate Junos devices.
The user is NOT required: (a) to be a "Software Programmer", (b) have
sophisticated knowledge of Junos, or (b) have a complex understanding of
the Junos XML API.
This library was built for two types of users:
For "Non-Programmers" - Python as a Power Shell
This means that "non-programmers", for example the Network Engineer, can
use the native Python shell on their management server (laptop, tablet,
phone, etc.) as their point-of-control for remotely managing Junos devices.
The Python shell is an interactive environment that provides the necessary
means to perform common automation tasks, such as conditional testing,
for-loops, macros, and templates. These building blocks are similar enough
to other "shell" environments, like Bash, to enable the non-programmer to
use the Python shell as a power-tool, rather than a programming language.
From the Python shell a user can manage Junos devices using native hash
tables, arrays, etc. rather than device-specific Junos XML or resorting to
'screen scraping' the actual Junos CLI.
For "Programmers" - Open and Extensible
There is a growing interest and need to automate the network infrastructure
into larger IT systems. To do so, traditional software programmers, DevOps,
"hackers", etc. need an abstraction library of code to further those
activities. Junos PyEZ is designed for extensibility so that the programmer
can quickly and easily add new widgets to the library in support of their
specific project requirements. There is no need to "wait on the vendor" to
provide new functionality. Junos PyEZ is not specifically tied to any
version of Junos or any Junos product family.
|