Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Cargue tablas y vistas en línea o externas en aplicaciones de Junos PyEZ

Importe tablas predefinidas o tablas personalizadas en línea o externas a su aplicación Junos PyEZ.

Las tablas y vistas de Junos PyEZ ofrecen una manera sencilla y eficiente de configurar dispositivos Junos o extraer información específica de la salida de comandos operativos o de los datos de configuración. Junos PyEZ proporciona un conjunto de tablas y vistas operativas predefinidas que puede utilizar en aplicaciones. También puede crear sus propias tablas y vistas operativas o de configuración personalizadas.

Puede crear tablas y vistas en línea rápidas como una cadena de varias líneas directamente en la aplicación Python. Como alternativa, puede crear una o varias definiciones de tabla y vista en archivos externos e importar las tablas a la aplicación de Python. Las tablas y vistas en línea son más fáciles de usar, pero el uso de archivos externos le permite crear una biblioteca central y reutilizable.

Para utilizar las tablas y vistas predefinidas de Junos PyEZ en su aplicación de Python, debe importar la tabla a su aplicación. Para utilizar tablas y vistas personalizadas, debe crear las definiciones de tabla y vista y, a continuación, cargar o importar las definiciones en la aplicación, dependiendo de si son internas o externas al módulo. En las secciones siguientes se describe este proceso para tablas y vistas que son tanto internas como externas al módulo.

Importar tablas y vistas predefinidas de Junos PyEZ

El módulo y jnpr.junos.command el módulo PyEZ jnpr.junos.op de Junos proporcionan definiciones predefinidas de tabla y vista para algunos RPC y comandos operativos comunes. Para usar las tablas y vistas predefinidas de Junos PyEZ en su aplicación de Python, debe incluir las instrucciones de importación adecuadas en su aplicación. Además de importar la clase PyEZ Device de Junos, también debe importar las tablas necesarias.

En el ejemplo siguiente se importa una tabla operativa predefinida, EthPortTable, del jnpr.junos.op.ethport módulo:

Después de importar las definiciones de tabla y vista, puede usarlas como se describe en Usar tablas y vistas. En el ejemplo siguiente se recuperan los datos de la RPC definida en la tabla y, a continuación, se imprime el nombre de interfaz y el estado operativo.

Para obtener más información acerca de las tablas y vistas predefinidas de Junos PyEZ, consulte Tablas operativas predefinidas de Junos PyEZ (salida estructurada).

Cargar tablas y vistas en línea

Para crear, cargar y usar tablas y vistas en línea personalizadas en su aplicación Junos PyEZ:

  1. Importe las siguientes clases y bibliotecas en su módulo:
  2. Defina una o varias tablas y vistas en YAML como una cadena de varias líneas.
  3. Cargue las definiciones de tabla y vista incluyendo la instrucción siguiente, donde string-name es el identificador de la cadena de varias líneas que contiene la definición de tabla/vista:
  4. Conéctese al dispositivo y use la tabla para recuperar información, configurar el dispositivo o ambos, según el tipo de tabla, por ejemplo:

Una vez cargadas las definiciones de tabla y vista, no hay diferencia en la forma en que se utilizan las tablas en línea o externas en el módulo. Para obtener más información, consulte Uso de tablas y vistas.

Importar tablas y vistas externas

Las definiciones de tabla y vista externas se colocan en archivos externos a su aplicación Junos PyEZ. Para crear tablas y vistas personalizadas externas e importarlas a su aplicación Junos PyEZ:

  1. Defina una o varias tablas y vistas en YAML y guárdelas en un archivo que tenga una .yml extensión.
  2. Cree un archivo que tenga el mismo nombre base que el archivo de tabla pero que utilice una extensión .py e incluya las cuatro líneas de código siguientes en el archivo.

    La loadyaml() función carga el archivo YAML y registra las clases Table y View en el espacio de nombres del módulo.

  3. Si los archivos .yml y .py se encuentran en un subdirectorio, incluya un archivo __init__.py en ese subdirectorio, de modo que Python compruebe este directorio cuando procese las instrucciones de importación de tabla en la aplicación.
  4. En la aplicación Junos PyEZ, importe la clase y las Device tablas requeridas.
  5. Conéctese al dispositivo y use la tabla para recuperar información, configurar el dispositivo o ambos, según el tipo de tabla, por ejemplo:

Una vez cargadas las definiciones de tabla y vista, no hay diferencia en la forma en que se utilizan las tablas en línea o externas en el módulo. Para obtener más información, consulte Uso de tablas y vistas.

Usar tablas y vistas

Después de cargar o importar las definiciones de tabla y vista, puede utilizar las tablas predefinidas, en línea personalizadas o externas personalizadas de la misma manera.

Para usar una tabla:

  1. Cree la Device instancia y abra una conexión con el dispositivo de destino:
  2. Cree la instancia de Table y asóciela a la Device instancia.
  3. Use la tabla para recuperar información, configurar el dispositivo o ambos, según el tipo de tabla.
  4. Repita y manipule el objeto resultante para extraer la información requerida.

En el ejemplo siguiente se importa una tabla externa personalizada, UserTable. La aplicación se conecta al dispositivo y llama al método de get() Table para recuperar user objetos del [edit system login] nivel de jerarquía. Luego, la aplicación imprime cada nombre de usuario y su clase de inicio de sesión correspondiente.

Para obtener más información sobre el uso de las tablas PyEZ de Junos, consulte los siguientes temas: