ansible是自动化IT工具,优点可以远程或批量执行特定命令(包括远程安装软件等),关键会显示执行过程及是否成功

安装:

apt-get install python-pip

pip install ansible

使用:

建议先配下免密码ssh

mkdir /etc/ansible

vi /etc/ansible/hosts

[bb] (bb代表分组,即可对服务器进行分组) 10.0.0.2 (也可写服务器名) 10.0.0.3

[cc] 10.0.0.4

:wq

ansible bb -a 'who' (不加-m即是command模块)

ansible -m command bb -a 'who'

ansible -m shell bb -a 'who'

command模块不支持:变量、逻辑运算符、条件判断符号、重定向命令或管道

shell模块没这个限制,其它command模块和shell模块作用一样

copy模块:

作用:复制本机文件,传输到远程主机,并修改属主、属组和权限

ansible -m copy bb -a 'src=/aa/aa.txt dest=/bb/ owner=aa group=aa mode=0644'

cron模块:

增加计划任务(03:01执行df -h命令)

ansible -m cron bb -a 'name="df" minute=01 hour=03 job="df -h"' >> /log.txt

ansible -m cron bb -a 'crontab -l'

ansible -m cron bb -a 'cat /log.txt'

移除计划任务

ansible -m cron bb -a 'name="df" state=absent'

ansible -m cron bb -a 'crontab -l'

service模块:

started、stoped、restarted、reloaded

ansible -m service bb -a 'name=nginx state=started'

script模块:

ansible -m script bb -a '/root/aa.sh'