适用于 Junos OS 的 Ansible 服务器要求
瞻博网络支持使用 Ansible 管理 Junos 设备,并提供可用于在设备上执行作和配置任务的 Ansible 模块。从 Ansible 2.10 开始,Ansible 支持 Ansible 内容集或集合。瞻博网络模块通过以下 Ansible 集合进行分发,该集合托管在 Ansible Galaxy 网站上:
将 Ansible 安装在具有类 Unix作系统的控制节点上。您可以安装 Ansible 和瞻博网络合集:
-
直接在配置管理服务器上
-
在 Python 虚拟环境中
-
作为 Docker 容器
瞻博网络 juniper/pyez-ansible Docker 映像是一个轻量级、独立的系统,将 Ansible、瞻博网络模块和所有依赖项捆绑到一个可移植容器中。Docker 容器使您能够在任何支持 Docker 的平台上以交互式模式快速运行 Ansible,或作为可执行包运行。
要在系统安装的 Python 下或控制节点上的 Python 虚拟环境中安装 Ansible 和 juniper.device 集合,请参阅以下部分:
要使用 Ansible for Junos OS Docker 映像,请参阅以下部分:
先决条件软件
在安装瞻博网络 juniper.device 集合并开始使用 Ansible 管理 Junos 设备之前,必须在所选环境中的 Ansible 控制节点上安装以下先决条件软件。您可以在系统安装的 Python 下或 Python 虚拟环境中安装软件。
-
Python 3.10 或更高版本
-
Ansible 2.17 或更高版本
-
Junos PyEZ (
junos-eznc) 2.7.3 或更高版本。有关 Junos PyEZ 的安装说明和最新信息,请参阅:
-
jxmleasePython 模块,版本 1.0.1 或更高版本 -
looseversionPython 模块,版本 1.3.0 或更高版本 -
xmltodictPython 模块,版本 0.13.0 或更高版本 -
Python 中的 Junos 快照管理员 (JSNAPy) 1.3.7 或更高版本(使用该
jsnapy模块需要)。有关 JSNAPy 的安装说明和最新信息,请参阅:
安装 juniper.device 集合
在 Ansible 控制节点上,您可以从 Ansible Galaxy 网站安装juniper.device集合。在安装 Ansible 和其他必备软件的同一环境中安装集合。
要安装集合, juniper.device 请执行以下作:
ansible-galaxy collection install命令并指定juniper.device集合。
user@ansible-cn:~$ ansible-galaxy collection install juniper.device Starting galaxy collection install process Process install dependency map Starting collection install process Installing 'juniper.device:1.0.7' to '/home/user/.ansible/collections/ansible_collections/juniper/device' Downloading https://galaxy.ansible.com/download/juniper-device-1.0.7.tar.gz to /home/user/.ansible/tmp/ansible-local-23916uzdfbjsk/tmp4nhxnw3v juniper.device (1.0.7) was installed successfully
使用 Ansible for Junos OS Docker 映像
Docker 是一个软件容器平台,用于在隔离容器中打包和运行应用程序及其依赖项。瞻博网络提供 Docker 映像,这些映像会为每个新版本的瞻博网络模块自动构建。Docker 映像包括 Python 3、Ansible、Junos PyEZ、集合 juniper.device 和 Python 中的 Junos 快照管理员,以及任何必需的依赖项。您可以在交互模式下运行容器,也可以将容器用作可执行文件来运行 playbook。
要在 Ansible 控制节点上使用 Ansible for Junos OS Docker 映像: