网络自动化实践

Ansible 集合支持各种各样的供应商、设备类型和操作,因此您可以使用单个自动化工具来管理整个网络。使用 Ansible,您可以

  • 自动化重复性任务,以加快日常网络更改并腾出您的时间进行更具战略意义的工作
  • 利用操作和开发人员使用的相同简单、强大且无代理的自动化工具进行网络任务
  • 将数据模型(在 playbook 或角色中)与执行层(通过 Ansible 模块)分离,以管理异构网络设备
  • 从社区和供应商生成的示例 playbook 和角色中受益,以帮助加速网络自动化项目
  • 通过 SSH 或 HTTPS 与网络硬件安全通信

谁应该使用本指南?

本指南适用于首次使用 Ansible 的网络工程师。如果您了解网络但从未使用过 Ansible,请从头到尾学习本指南。

本指南也适用于首次自动化网络任务的经验丰富的 Ansible 用户。您可以使用 Ansible 命令、playbook 和模块来配置集线器、交换机、路由器、网桥和其他网络设备。但是网络模块与 Linux/Unix 和 Windows 模块不同,您必须了解一些特定于网络的概念才能成功。如果您了解 Ansible 但从未自动化过网络任务,请从第二部分开始。

本指南介绍了基本的 Ansible 概念,并指导您完成第一个 Ansible 命令、playbook 和清单条目。

入门指南

  • 基本概念
    • 控制节点
    • 托管节点
    • 清单
    • Playbook
    • 模块
    • 插件
    • 集合
  • 网络自动化有何不同
    • 在控制节点上执行
    • 多种通信协议
    • 按网络平台组织的集合
    • 权限提升:enable 模式,become 和 authorize
  • 运行你的第一个命令和 Playbook
    • 先决条件
    • 安装 Ansible
    • 建立到托管节点的 手动连接
    • 运行你的第一个网络 Ansible 命令
    • 创建并运行你的第一个网络 Ansible Playbook
    • 从网络设备收集 facts
  • 构建你的清单
    • 基本清单
    • 向清单添加变量
    • 在清单中分组变量
    • 变量语法
    • 按平台分组清单
    • 验证清单
    • 使用 ansible-vault 保护敏感变量
  • 使用 Ansible 网络角色
    • 了解角色
  • 超越基础
    • 典型的 Ansible 文件树
    • 跟踪清单和 playbook 的更改:使用 git 进行源代码控制
  • 使用网络连接选项
    • 设置超时选项