我用谷歌搜索了这个问题,但没有找到任何东西。
如果您有 100 多个 Cisco 路由器和交换机,您如何推出新的 IOS 版本?当然不能通过手动登录每个设备。我找到的唯一工具是 Cisco 自动升级管理器,但这仅适用于 ISR。
通过脚本部署 Cisco 交换机和路由器更新是唯一的方法吗?我可以编写脚本,但在执行此操作之前,我想确保唯一的方法是使用我自己的脚本。
编辑:需要说明的是,我并不是在寻找让路由器自动更新的方法,只是寻找一种自动将 IOS 更新推送到路由器的方法。
编辑:作为更新,Puppet Device Managemnet(带 Foreman)运行良好,但我可能会选择 SolarWinds NCM
答案1
答案2
我最近编写了一个 Ansible 模块,允许您使用 SSH+SCP 将文件传输到 Cisco IOS 设备。
其中一个用例显然是传输 IOS 映像。它有一些内置检查,例如如果文件已经存在则不传输该文件,并执行 MD5 比较(原始文件与传输的文件)。但是,MD5 在路由器上占用大量 CPU。
通过模块 + Ansible,您可以非常轻松地将新的 IOS 映像传输到一组网络设备。
该模块可以在这里找到:https://github.com/ktbyers/scp_sidecar。
我还有一篇关于使用该模块的文章,可以在这里找到:https://pynet.twb-tech.com/blog/automation/cisco-ios.html
答案3
有很多工具,但我建议使用 Expect(http://en.wikipedia.org/wiki/Expect)
Expect 的主要优点是它完全模拟命令提示符交互,并且非常容易学习和实现。更不用说它在 GNU/GPL 许可下完全免费。
例子:
expect "*assword: "
send "$Password\r"
expect "#"
send "conf t\r"
答案4
远离任何产品或服务,例如 hpna,尤其是 Cisco 合规管理和配置服务。两者都存在问题。cisco 存在漏洞,无法实现广告宣传的功能。不要被愚弄。聘请 perl、python 或 expect 人员更具成本效益。