背景 链接到标题 说起来我真正负责过大批量服务器线上管理的时间,还是在16年负责运维的时候,那时候还都是通过 Shell 脚本来完成一些自动化的工作,当时觉得还不错,至少我觉得可定制化上还是很好的。
目前负责公司产品中一部分功能目前是通过 Shell 来完成的,但是 Shell 脚本在使用中存在一些弊端,最近在用 Ansible 来重写这部分功能,在重写过程中感受负责,又爱又恨,也有一些疑惑,特此记录。
Ansible 链接到标题 相信大家都或多或少听过 Ansible,Puppet,SaltStack 等等自动管理工具,它们的功能都很强大,但使用起来又不简单,Ansible 可以说是这里面上手最快的一个。
这里我不讲述 Ansible 具体的使用规则,大家看文档就好,我讲下我常用的几个场景:
批量查看、操作、拷贝 链接到标题 无论是作为一名开发,还是测试、运维,应该都碰到过需要管理多台服务器的情况,比如我们想要查看一个集群中所有节点的负责情况,那么我们可以执行:
$ ansible yiran-cluster -m raw -a 'uptime' 192.168.67.39 | SUCCESS | rc=0 >> 20:23:24 up 3 days, 7:32, 4 users, load average: 14.97, 13.81, 12.55 Shared connection to 192.168.67.39 closed. 192.168.67.40 | SUCCESS | rc=0 >> 20:23:24 up 3 days, 7:32, 1 user, load average: 11.