Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Ejemplo: uso de Junos PyEZ para revertir la configuración

La biblioteca Junos PyEZ le permite realizar tareas operativas y de configuración en dispositivos Junos. En este ejemplo, se utiliza la utilidad Junos PyEZ jnpr.junos.utils.config.Config para revertir la configuración en un dispositivo Junos.

Requisitos

En este ejemplo se utilizan los siguientes componentes de hardware y software:

  • Servidor de administración de configuración que ejecuta Python 3.5 o posterior y Junos PyEZ versión 2.0 o posterior

  • Dispositivo Junos con NETCONF habilitado y una cuenta de usuario configurada con los permisos adecuados

  • Par de claves pública y privada SSH configurado para el usuario adecuado en el servidor y el dispositivo Junos

Visión general

En este ejemplo se presenta una aplicación Python que utiliza la utilidad Junos PyEZ Config para revertir la configuración en el dispositivo especificado. Los dispositivos Junos almacenan una copia de la configuración confirmada más reciente y hasta 49 configuraciones anteriores. Puede revertir a cualquiera de las configuraciones almacenadas. Esto resulta útil cuando los cambios en la configuración provocan resultados no deseados y desea volver a una configuración de trabajo conocida. La reversión de la configuración es similar al proceso para realizar cambios de configuración en el dispositivo, pero en lugar de cargar los datos de configuración, se realiza una reversión, que reemplaza toda la configuración candidata por una configuración confirmada anteriormente.

La aplicación Python importa la Device clase, que controla la conexión con el dispositivo Junos; la Config clase, que se utiliza para realizar comandos de modo de configuración en el dispositivo de destino; y las excepciones necesarias del jnpr.junos.exception módulo, que contiene las excepciones encontradas al administrar dispositivos Junos.

Después de crear la Device instancia para el dispositivo de destino, el open() método establece una conexión y una sesión NETCONF con el dispositivo. A continuación, los métodos de Config utilidad bloquean, revierten, confirman y desbloquean la configuración candidata.

El rollback() método tiene un único parámetro, rb_id, que es el ID de reversión que especifica la configuración almacenada que se va a cargar. Los valores válidos son 0 (cero, para la configuración confirmada más recientemente) a través de uno menor que el número de configuraciones anteriores almacenadas (el máximo es 49). Si omite este parámetro en la llamada al método, el valor predeterminado es 0. En este ejemplo se carga la configuración con el ID de reversión 1, que es la configuración confirmada justo antes de la configuración activa. El rollback() método carga la configuración en la configuración candidata, que luego se confirma para activarla llamando al commit() método.

Después de revertir y confirmar la configuración, la aplicación llama close() al método para terminar la sesión y la conexión de NETCONF. La aplicación incluye código para controlar excepciones, como LockError los errores que se producen al bloquear la configuración y CommitError los errores que se producen durante la operación de confirmación. La aplicación también incluye código para controlar cualquier excepción adicional que pueda producirse.

Configuración

Crear la aplicación Junos PyEZ

Procedimiento paso a paso

Para crear una aplicación Python que utilice Junos PyEZ para revertir la configuración en un dispositivo Junos:

  1. Importe los módulos, clases y objetos necesarios.

  2. Incluya las variables necesarias, que en este ejemplo incluyen el nombre de host del dispositivo administrado.

  3. Cree una definición de función y una llamada a main() una función, y coloque las instrucciones restantes dentro de la definición.

  4. Cree una instancia de la Device clase y proporcione el nombre de host y los parámetros necesarios para esa conexión específica.

  5. Abra una conexión y establezca una sesión de NETCONF con el dispositivo.

  6. Cree una instancia de la Config utilidad.

  7. Bloquee la configuración.

  8. Desvierta y confirme la configuración, y controle cualquier error.

  9. Desbloquee la configuración y, a continuación, finalice la sesión de NETCONF y cierre la conexión con el dispositivo.

Resultados

En el servidor de administración de configuración, revise la aplicación completada. Si la aplicación no muestra el código deseado, repita las instrucciones de este ejemplo para corregir la aplicación.

Ejecutar el código PyEZ de Junos

Ejecutar la aplicación

Para ejecutar el código de Junos PyEZ:

  • En el servidor de administración de configuración, ejecute la aplicación.

Verificación

Verificar la configuración

Propósito

Compruebe que la configuración se haya revertido correctamente en el dispositivo Junos.

Acción

Inicie sesión en el dispositivo Junos y vea la configuración o las diferencias de configuración y el archivo de registro. Por ejemplo:

Significado

Las diferencias de configuración y el contenido del archivo de registro indican que la configuración se revirtió correctamente y se confirmó en el dispositivo.