我想知道是否有使用Ansible进行网络自动化的多供应商,多地点和多类型库存的好例子。
即我们有一个异构网络,其中包括Juniper防火墙,Cisco交换机以及Linux防火墙和VPN服务器。
自动化背后的想法-为所有与网络相关的信息提供唯一的真实来源,例如防火墙策略,snmp设置,基于ssh的访问控制,QoS类,Syslog目标等
不幸的是,官方Ansible guide并未为此类多维广告资源提供建议。
我尝试遵循https://www.digitalocean.com/community/tutorials/how-to-manage-multistage-environments-with-ansible#ansible-recommended-strategy-using-groups-and-multiple-inventories教程,但是发现它相当复杂,并且另一个问题是,他们建议使用不是completely supported in a Git repos的符号链接。
我当前的库存结构如下:
$ tree vendor/
vendor/
├── 000_all_vendor_vars
├── ios
│ ├── group_vars
│ │ ├── all
│ │ │ ├── 000_all_vendor_vars -> ../../../000_all_vendor_vars
│ │ │ └── vendor_specific
│ │ └── switch
│ └── hosts
├── junos
│ ├── group_vars
│ │ ├── all
│ │ │ ├── 000_all_vendor_vars -> ../../../000_all_vendor_vars
│ │ │ └── vendor_specific
│ │ ├── firewall
│ │ └── router
│ └── hosts
└── linux
├── group_vars
│ ├── all
│ │ ├── 000_all_vendor_vars -> ../../../000_all_vendor_vars
│ │ └── vendor_specific
│ └── firewall
└── hosts
甚至不包括位置层。
因此,任何建议/示例都将受到赞赏。