Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
本页内容
 

排除 Ansible 模块的 Junos PyEZ (junos-eznc) 安装错误

问题

描述

在执行模块期间 juniper.device ,Ansible 控制节点会生成未安装的错误 junos-eznc 。例如:

原因

该系列中的瞻博网络 Ansible 模块 juniper.device 使用 Junos PyEZ Python 库在 Junos 设备上执行操作。如果库未安装或 Ansible 找不到库,Ansible 将生成此错误。例如,如果您将 Ansible 安装在虚拟环境中或 Python 安装在非标准系统位置,而 Ansible 正在其他位置(如默认系统位置)搜索该库,则 Ansible 可能无法找到该库。

溶液

在 Ansible 控制节点上安装 Junos PyEZ,并更新所有必要的环境变量。有关详细信息,请参阅 https://github.com/Juniper/py-junos-eznc#installation

如果您在虚拟环境或非标准系统位置使用 Python 安装来运行 Ansible,则必须:

  • 在所需的 Python 安装下安装 Junos PyEZ(在虚拟环境或非标准系统位置,视情况而定)。

  • 指定 Python 解释器的路径,例如,在 Ansible 配置文件中设置 interpreter_python 变量,或在 Ansible 清单文件中为相应设备定义 ansible_python_interpreter 变量。

    有关更多信息,请参阅 Ansible 官方文档中 的解释器发现

要验证 Junos PyEZ 是否已成功安装在控制节点上,请使用用于 Ansible 操作的相同 Python 安装启动 Python 交互式 shell。然后导入 jnpr.junos 包。

如果成功导入 jnpr.junos 软件包且未显示错误消息,则 Junos PyEZ 已安装在 Ansible 控制节点上。如果在执行 Ansible 模块时仍然看到相同的错误消息,请确保已为 Ansible 环境中的 Python 解释器指定了正确的位置。

注意:

您可以使用选项 -vvv 执行 Ansible 操作指南并查看日志消息,以验证 Ansible 使用的 Python 安装。