所以我正在用Ansible进行一些测试来管理思科设备(在这种情况下特别是3750)。 我可以毫无问题地添加我的VLAN和Loopback。
当环回或VLAN存在时,只是试图让Ansible停止注册任务中的更改。
现在我的游戏看起来像这样:
- name: Set the IP for Loop 0
ios_config:
provider: "{{ connection }}"
lines:
- description AnsibleLoop0
- ip address 8.8.8.8 255.255.255.0
before:
- interface Loopback0
match: exact
无论何时运行此任务,Ansible都会将其注册为更改:
changed: [switch] => {"changed": true, "updates": ["interface Loopback0", "description AnsibleLoop0", "ip address 8.8.8.8 255.255.255.0"], "warnings": []}
我尝试过不同的match
类型(line, exact
)无济于事。
也许我在这里弄错了。
我认为如果我在播放中插入的行与show run
中显示的行完全一样,那么它会不会将其注册为更改?
任何帮助都将不胜感激!
答案 0 :(得分:1)
您可能遇到此问题:
https://github.com/ansible/ansible/pull/24345
您是否每次使用Playbook中的save: "yes”
将配置更改保存到Cisco设备?我遇到了同样的问题,每次播放剧本时都会保存配置。设置为no
只是为了测试,在第一次运行报告changed=True
顺序运行后,将通过Ansible报告changed=False
。