Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Descripción de Junos PyEZ

Use la biblioteca de Python de Junos PyEZ para desarrollar scripts de Python que gestionen dispositivos Junos de forma remota.

Descripción general de Junos PyEZ

Junos PyEZ es un micromarco para Python que le permite administrar y automatizar dispositivos de Junos. Junos PyEZ está diseñado para proporcionar las capacidades que un usuario tendría en la CLI de Junos OS en un entorno desarrollado para tareas de automatización. Junos PyEZ no requiere amplios conocimientos de Junos OS ni de las API XML de Junos.

Junos PyEZ le permite administrar dispositivos Junos usando la familiaridad de Python. Sin embargo, no es necesario ser un programador experimentado para usar Junos PyEZ. Los no programadores pueden ejecutar rápidamente comandos simples en el modo interactivo de Python, y los programadores más experimentados pueden optar por crear programas más complejos, robustos y reutilizables para realizar tareas.

Junos PyEZ le permite conectarse directamente a un dispositivo mediante una conexión de consola en serie, Telnet o una sesión de NETCONF a través de SSH. Además, Junos PyEZ también admite la conexión al dispositivo a través de una conexión Telnet o SSH a un servidor de consola que está conectado al puerto del CONSOLE dispositivo. Puede usar Junos PyEZ para configurar inicialmente un dispositivo nuevo o ceroizado que aún no esté configurado para el acceso remoto, ya sea mediante una conexión de consola serie cuando esté conectado directamente al dispositivo, o bien mediante Telnet o SSH a través de un servidor de consola que esté conectado directamente al dispositivo.

Junos PyEZ proporciona utilidades de dispositivo, software y sistema de archivos que le permiten realizar tareas operativas comunes en dispositivos de Junos. Puede usar Junos PyEZ para:

  • Recuperar datos o información operativa de un dispositivo

  • Ejecute llamadas de procedimiento remoto (RPC) disponibles a través de la API XML de Junos

  • Instalar o actualizar el software de Junos OS

  • Reinicie o apague el dispositivo

  • Realizar tareas administrativas comunes, como copiar archivos y calcular sumas de comprobación.

Junos PyEZ también le permite administrar configuraciones de dispositivos de Junos. Las utilidades de administración de configuración de Junos PyEZ le permiten:

  • Recuperar datos de configuración

  • Comparar configuraciones

  • Cargue y confirme cambios de configuración

  • Revertir la configuración

  • Gestionar la configuración de rescate

Junos PyEZ admite formatos estándar para datos de configuración, como texto ASCII, elementos XML de Junos, comandos de Junos OS set y notación de objetos JavaScript (JSON). También puede usar plantillas y archivos de plantillas de Jinja2 para mayor flexibilidad y personalización. Además, puede usar tablas y vistas para definir recursos estructurados que puede usar para configurar un dispositivo mediante programación.

Las tablas y vistas de Junos PyEZ le permiten configurar dispositivos Junos y extraer información operativa específica o datos de configuración de los dispositivos. Las tablas y vistas se definen mediante archivos YAML simples que contienen asignaciones de pares clave-valor, por lo que no se requiere ninguna codificación compleja para utilizarlas. Puede usar tablas y vistas para recuperar la configuración del dispositivo o el resultado de cualquier comando o RPC de Junos y, luego, extraer un subconjunto personalizado de información. Esto es útil cuando necesita recuperar información de algunos campos específicos que están incrustados en una salida de comando extensa, como para el show route comando or show interfaces . Además, puede utilizar tablas y vistas para definir recursos de configuración estructurados. Junos PyEZ crea dinámicamente una clase de configuración para el recurso, lo que le permite configurar programáticamente el recurso en un dispositivo.

Beneficios de Junos PyEZ

  • Proporciona una capa de abstracción que permite a los programadores de Python, así como a los no programadores, administrar y automatizar fácilmente los dispositivos Junos.

  • Aumenta la eficiencia operativa al permitir que los operadores automaticen tareas comunes, lo que reduce la configuración y administración manuales de dispositivos.

  • Minimiza los errores y los riesgos al permitir cambios de configuración estructurados de los recursos objetivo.

Uso de Junos PyEZ en scripts de automatización

Junos OS y Junos OS evolucionado incluyen el paquete de extensiones de Python y la biblioteca PyEZ de Junos en la imagen de software en los dispositivos compatibles. Estas extensiones le permiten crear scripts de Python integrados que usan Junos PyEZ para ejecutar RPC y realizar tareas operativas y de configuración en el dispositivo. Junos PyEZ es compatible con scripts de confirmación, evento, operación y SNMP; scripts del kit de herramientas de extensión (JET) de Juniper; y guiones de acción y traducción de YANG.

La tabla 1 resume la versión de Junos PyEZ que está disponible en dispositivos compatibles que ejecutan la versión de Junos OS dada. Por ejemplo, a partir de la versión 17.4R1 de Junos OS, una secuencia de comandos de Python integrada puede aprovechar características de la versión 2.1.4 de Junos PyEZ y versiones anteriores.

Tabla 1: Versión de Junos PyEZ en dispositivos de Junos compatibles

Versión de Junos OS

Versión de Junos PyEZ

Del 16.1R3 al 17.3

1.3.1

17.4R1 a 19.3

2.1.4

19.4R1 y versiones posteriores

2.2.0

Para obtener más información sobre cómo crear scripts de automatización de Python en caja, consulte Descripción de scripts de Python Automatizaciσn para dispositivos que ejecutan Junos OS en la Guía del usuario de scripts de Junos OS Automatizaciσn.

Recursos de Junos PyEZ

Juniper Networks ofrece una serie de recursos de Junos PyEZ, que se describen en la Tabla 2.

Tabla 2: Recursos de Junos PyEZ

Recurso

Descripción

URL

Referencia de API

Documentación detallada de los módulos de Junos PyEZ.

https://junos-pyez.readthedocs.io/en/latest/

Día uno: Libro de recetas y repositorio de scripts de Junos PyEZ

Libro de recetas de automatización de red de Junos PyEZ con una guía de configuración, un sandbox de inicio y una muestra completa de scripts de automatización que están disponibles en GitHub.

https://www.juniper.net/documentation/en_US/day-one-books/DO_PyEZ_Cookbook.pdf

https://github.com/Juniper/junosautomation/tree/master/pyez/PyEZ_Cookbook_2017

Documentación

Documentación de Junos PyEZ que contiene información detallada sobre la instalación de Junos PyEZ y el uso de Junos PyEZ para realizar tareas operativas y de configuración en dispositivos Junos.

https://www.juniper.net/documentation/product/us/en/junos-pyez

Repositorio de GitHub

Repositorio público para el proyecto Junos PyEZ. Este repositorio incluye el código fuente más reciente, instrucciones de instalación y resúmenes de notas de versión para todas las versiones.

https://github.com/Juniper/py-junos-eznc/

Foro de Grupos de Google

Foro que aborda preguntas y brinda soporte general para Junos PyEZ.

https://groups.google.com/group/junos-python-ez

Scripts de ejemplo

Scripts de ejemplo de Junos PyEZ para comenzar.

https://github.com/Juniper/junosautomation/tree/master/pyez

Foro de Stack Overflow

Foro que aborda preguntas y brinda soporte general para Junos PyEZ.

https://stackoverflow.com/questions/tagged/pyez