Skip to Content
可编程网络自动化
book

可编程网络自动化

by Jason Edelman, Scott S. Lowe, Matt Oswalt
January 2023
Intermediate to advanced
458 pages
14h 16m
Chinese
Posts & Telecom Press
Content preview from 可编程网络自动化
304
9
3.
确保配置存在
在前面的例子中,我们编写并自动生成了
8
个配
置。本例将部署这些配置,确保其存在于
所有设备中。
理解幂等性
在研究这个例子的过程中,注意其中的用词和短语,比如
配置
SNMP
确保
SNMP
配置存在
。传统的
Python
脚本在每次执行脚本时都要发送
SNMP
命令
。对
Ansible
,就像很多
DevOps
配置管理工具一样
,其所采用的配置管理方法是幂等的
idempotent
,这意味着只做必要的改动。在网络模块上下文中,各个模块都加入了智能
逻辑,确保配置命令仅在必要时才发送给设备,使其进入所需状态。
从宏观层面来看,模块为此总是先要收集设备的现有配置。你希望能够留在设备上的命令
会与设备当前状态(运行时配置)进行比对。仅在当前配置中没有所需命令时,才会将该
命令发送至设备。这种做法比较安全,因为模块会运行某个剧本
N
次,但只会向设备发送
一次命令。
这正是
Ansible
config
模块所做的。在默认情况下,该模块可以获得
show run
的结果,
仅当剧本中的命令不在
show run
的输出中时才将其发送至设备。
使用
cong
模块
下面来看看如何使用
eos_config
模块为
Arista EOS
设备部署
SNMP
置文件。
- name: PLAY 2 - ENSURE EOS SNMP CONFIGS ARE DEPLOYED
hosts: eos
connection: local
gather_facts: no
tasks:
- name: DEPLOY CONFIGS ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Python和NLTK实现自然语言处理

Python和NLTK实现自然语言处理

Posts & Telecom Press, Nitin Hardeniya
Go程序设计语言

Go程序设计语言

艾伦A. A.多诺万, 布莱恩W. 柯尼汉
弱监督学习实用指南

弱监督学习实用指南

Wee Hyong Tok, Amit Bahree, Senja Filipi
Python实用技能学习指南

Python实用技能学习指南

Posts & Telecom Press, Robert Smallshire, Austin Bingham

Publisher Resources

ISBN: 9787115606181