适用于 Junos OS 的 Ansible 服务器要求
瞻博网络支持使用 Ansible 管理 Junos 设备,并提供了可用于在设备上执行作和配置任务的 Ansible 模块。从 Ansible 2.10 开始,Ansible 支持 Ansible 内容集或集合。瞻博网络模块通过以下 Ansible 集合进行分发,该集合托管在 Ansible Galaxy 网站上:
您可以在具有类 Unix作系统的控制节点上安装 Ansible。您可以安装 Ansible 和瞻博网络软件集:
-
直接在配置管理服务器上
-
在 Python 虚拟环境中
-
作为 Docker 容器
瞻博网络 juniper/pyez-ansible Docker 映像是一个轻量级的独立系统,它将 Ansible、瞻博网络模块和所有依赖项捆绑到一个便携式容器中。Docker 容器使您能够在交互模式下快速运行 Ansible,或者在任何支持 Docker 的平台上作为可执行包运行。
要在系统安装的 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 (JSNAPy) 1.3.7 或更高版本中的 Junos Snapshot 管理员(需要使用该
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 Snapshot Administrator 以及任何必需的依赖项。可以在交互模式下运行容器,也可以将容器用作可执行文件来运行 playbook。
要在 Ansible 控制节点上使用 Ansible for Junos OS Docker 映像: