了解适用于 Junos OS 的 Ansible
总结 您可以使用 Ansible 部署和管理 Junos 设备。
适用于 Junos OS 的 Ansible 概述
Ansible 是用于基础架构配置管理的 IT 自动化框架。除了计算和云基础架构之外,Ansible 还支持网络基础架构自动化,瞻博网络也支持使用 Ansible 管理 Junos 设备。您可以使用 Ansible 在 Junos 设备上执行操作和配置任务,包括检索信息、管理配置、安装和升级 Junos OS 以及重置、重新启动或关闭托管设备。
Ansible 有几个品种。您可以使用以下应用程序管理 Junos 设备:
-
Ansible Core - Ansible 的免费开源基本版本
-
Red Hat Ansible Tower — 商业应用,是 Ansible Core 的超集,具有可视化仪表板、基于角色的访问控制、作业调度和图形化库存管理等附加功能
-
AWX — Ansible Tower 的开源上游项目
Ansible 采用客户端-服务器架构。您可以在控制节点上安装 Ansible 软件,控制节点是一个在一个或多个受管节点上执行操作的类 Unix 系统。Ansible 使用无代理架构,因此不需要在托管设备上安装任何特定于 Ansible 的软件。虽然 Ansible 通常需要在托管式节点上使用 Python,但管理 Junos 设备则不需要这样做。相反,Ansible for Junos OS 要求所有任务在 Ansible 控制节点上本地运行,并使用基于 NETCONF 的 Junos XML API 与 Junos 设备交互。
Ansible 通常使用推送模型,其中服务器按需向托管式节点发送状态信息。Ansible 模块是离散的代码单元,可在节点上执行请求的功能。受管节点执行作业并将结果返回到服务器。通常,Ansible 模块是幂等的,因此多次执行相同的剧本或操作会产生相同的结果,因为这些模块仅在需要时应用更改。
瞻博网络和 Ansible 提供的模块使您能够管理 Junos 设备。瞻博网络模块通过集合或角色进行分发,具体取决于 Ansible 版本。有关可用集合、角色和模块的更多信息,请参阅 了解适用于 Junos OS 的 Ansible 集合、角色和模块。
Ansible 是用 Python 编写的,但它使用简单的 YAML 语法来表达自动化作业。因此,Ansible 用户可以快速入门,因为他们不需要广泛的 Python 知识即可使用 Ansible。Ansible 还利用 Jinja2 模板语言来实现动态表达式和对变量的访问。
Ansible 和 Ansible 对于 Junos OS 的优势
-
使用简单易学的语法
-
加快部署新网络设备和应用的时间
-
提供高效且可扩展的解决方案来管理大量设备
-
通过自动执行任务以及减少设备的手动配置和管理来提高运营效率
-
通过标准化将风险和错误降至最低
-
改进变更管理流程
-
使用无代理架构
其他资源
本文档假定读者熟悉 Ansible 框架。 表 1 提供了使用 Ansible 管理 Junos 设备的资源。
资源 |
描述 |
网址 |
---|---|---|
适用于 Junos OS 的 Ansible 文档 |
详细说明如何使用 Ansible 管理 Junos 设备的文档。 |
https://www.juniper.net/documentation/product/en_US/ansible-for-junos-os |
适用于 Junos OS 的 Ansible 模块概述 |
概述可用于管理 Junos 设备的不同模块的文档。 |
|
安斯布尔银河 |
Ansible Galaxy 网站和瞻博网络 Ansible Galaxy 内容 |
|
Ansible 网站和文档 |
Ansible 官方网站和文档。 |
|
GitHub 存储库 |
Ansible for Junos OS 项目的公共存储库。此存储库包含所有版本的最新源代码、安装说明和发行说明摘要。 |
|
Google 网上论坛 |
论坛,用于解决问题并为适用于 Junos OS 的 Ansible 提供一般支持。 |
|
瞻博网络产品系列 |
下载瞻博网络 |
https://galaxy.ansible.com/ui/repo/published/juniper/device/ |
瞻博网络 |
下载瞻博网络 |
https://galaxy.ansible.com/ui/standalone/roles/juniper/junos/ |