最近在思考如何将团队里的所有的虚拟机都很好的管理并监控起来,但是由于我们的虚拟机的操作系统繁多,包括 Windows, Linux, AIX, HP-UX, Solaris SPARC 和 Solaris x86. 到底选择哪种方式来管理比较好呢?这需要结合具体场景来考虑。
Ansible 和其他工具的对比
这里有一个关于 Chef,Puppet,Ansible 和 Saltstack 的对比文章
https://www.edureka.co/blog/chef-vs-puppet-vs-ansible-vs-saltstack/
选择合适的工具
仅管理 Windows 和 Linux
如果你的虚拟机没有这么多平台,只是 Windows 和 Linux,假如你已经有了 VMware vSphere 来管理了,那么可以通过 VMware vSphere API 来查看这些机器的状态。
这里是 VMware 官方的 API Library 供使用:
管理多个操作系统
如果你和我的情况一下,想监控很多个操作操作系统,那么就只能通过 ssh 来登录到每一台机器上去查看,比如执行 uptime
等命令。可以写 shell 脚本来完成这些登录、检测等操作。
另外就是使用 Ansible 的 Playbook。Playbook 里描述了你要做的操作,这是一个权衡,学习 Ansible 的 Playbook 需要花些时间的。
如果想了解下 Ansible 那么可以试试 Ansible Playbook。以下是我使用 Ansible 做了一些练习。
Playbook结构
+- vars |