Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Ejemplo: Utilice 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úblicas/privadas SSH configuradas 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 es útil cuando los cambios de configuración provocan resultados indeseables y desea revertir a una configuración de trabajo conocida. Revertir la configuración es similar al proceso de realizar cambios de configuración en el dispositivo, pero en lugar de cargar datos de configuración, realiza una restauración, lo que reemplaza toda la configuración del candidato con una configuración previamente confirmada.

La aplicación Python importa la Device clase, que controla la conexión con el dispositivo Junos; la Config clase, que se usa 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 que se encuentran 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 Config métodos de utilidad bloquean, revierten, confirman y desbloquean la configuración del candidato.

El rollback() método tiene un único parámetro, rb_idque es el ID de restauració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 reciente) a través de una menos que la cantidad 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 1 de reversión, 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 mediante una llamada al commit() método.

Después de revertir y confirmar la configuración, la aplicación llama al close() método para terminar la sesión y la conexión 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 ocurrir.

Configuración

Cree la aplicación Junos PyEZ

Procedimiento paso a paso

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

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

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

  3. Cree una main() definición de función y una llamada a 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 NETCONF con el dispositivo.

  6. Cree una instancia de la Config utilidad.

  7. Bloquee la configuración.

  8. Revierta y confirme la configuración, y maneje cualquier error.

  9. Desbloquee la configuración y, luego, finalice la sesión 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.

Ejecute el código Junos PyEZ

Ejecute la aplicación

Para ejecutar el código Junos PyEZ:

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

Verificación

Verifique la configuración

Propósito

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

Acción

Inicie sesión en el dispositivo Junos y vea las diferencias de configuración o 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 revierte correctamente y se confirma en el dispositivo.