如何用Ansible实现网络自动化(4)
因为 Ansible 是无代理的,这里并没有一个默认的推送或者拉取去防止配置漂移。自动化任务被定义在 Ansible <ruby剧本playbook中,当使用 Ansible 时,它让用户去运行剧本。如果剧本在一个给定的时间间隔内运行,并且你没有用 Ansible Tower,你肯定知道任务的执行频率;如果你只是在终端提示符下使用一个原生的 Ansible 命令行,那么该剧本就运行一次,并且仅运行一次。 缺省运行一次的剧本对网络工程师是很具有吸引力的,让人欣慰的是,在设备上手动进行的改变不会自动被覆盖。另外,当需要的时候,一个剧本所运行的设备范围很容易被改变,即使是对一个单个设备进行自动化的单次变更,Ansible 仍然可以用,设备的 范围 由一个被称为 Ansible 清单的文件决定;这个清单可以是一台设备或者是一千台设备。 下面展示的一个清单文件示例,它定义了两组共六台设备:
为了自动化所有的主机,你的剧本中的剧集定义的一个片段看起来应该是这样的:
并且,要只自动化一个叶子节点交换机,它看起来应该像这样:
这是一个核心交换机:
因为能够很容易地对一台设备或者 N 台设备进行自动化,所以在需要对这些设备进行一次性变更时,Ansible 成为了最佳的选择。在网络范围内的变更它也做的很好:可以是关闭给定类型的所有接口、配置接口描述、或者是在一个跨企业园区布线的网络中添加 VLAN。 【编辑推荐】
点赞 0 (编辑:ASP站长网) |