Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
EN ESTA PÁGINA
 

Solución de problemas de errores de instalación de Junos PyEZ (junos-eznc) para módulos de Ansible

Problema

Descripción

Durante la ejecución de un juniper.device módulo, el nodo de control de Ansible genera un error que junos-eznc no está instalado. Por ejemplo:

Causa

Muchos módulos de la juniper.device colección usan la biblioteca de Python de Junos PyEZ para realizar operaciones en dispositivos Junos. Ansible genera este error si la biblioteca no está instalada o si Ansible no puede encontrar la biblioteca. Es posible que Ansible no pueda localizar la biblioteca, por ejemplo, si instala Ansible en un entorno virtual o en una instalación de Python en una ubicación del sistema no estándar y Ansible busca la biblioteca en una ubicación diferente, como la ubicación predeterminada del sistema.

Solución

Instale Junos PyEZ en el nodo de control de Ansible y actualice las variables de entorno necesarias. Consulte https://github.com/Juniper/py-junos-eznc#installation para obtener más información.

Si ejecuta Ansible con una instalación de Python en un entorno virtual o en una ubicación del sistema no estándar, debe:

  • Instale Junos PyEZ en la instalación de Python deseada (en el entorno virtual o en una ubicación del sistema no estándar, según corresponda).

  • Especifique la ruta al intérprete de Python; por ejemplo, establezca la interpreter_python variable en el archivo de configuración de Ansible o defina la ansible_python_interpreter variable para los dispositivos adecuados en el archivo de inventario de Ansible.

    Para obtener más información, consulte Interpreter Discovery en la documentación oficial de Ansible.

Para comprobar que Junos PyEZ se instaló correctamente en el nodo de control, inicie el shell interactivo de Python con la misma instalación de Python que utiliza para las operaciones de Ansible. A continuación, importe el jnpr.junos paquete.

Si importa correctamente el jnpr.junos paquete, Junos PyEZ se instala en el nodo de control de Ansible. Si sigue viendo el mismo mensaje de error al ejecutar el módulo de Ansible, asegúrese de haber especificado la ubicación correcta para el intérprete de Python en su entorno de Ansible.

Nota:

Puede comprobar la instalación de Python que utiliza Ansible ejecutando su manual de estrategias de Ansible con la -vvv opción y revisando los mensajes de registro.