ansible_常用命令

#批量拷贝文件

ansible abcde -u ubuntu -m copy -a 'src=/var/tmp/reconfig.sh dest=/var/tmp/'    

ansible abcde -m copy -a 'src=/var/tmp/zabbix_discovery_http.py dest=/data/scripts/ owner=zabbix group=zabbix mode=0755' -i /var/tmp/hosts
ansible abcde -m copy -a 'src=/var/tmp/zabbix_discovery_http.conf dest=/data/server/zabbix/etc/zabbix_agentd.conf.d/ owner=zabbix group=zabbix mode=0644' -i /var/tmp/hosts

#批量查看主机名 

ansible abcde -m shell -a 'echo $HOSTNAME'  

#批量检查主机是否存活   

ansible abcde -m ping -i /var/tmp/hosts    

#ansible与sed的结合   

ansible abcde -m shell -a "sed -i 's/route add -net 10.23.0.0 netmask 255.255.0.0 gateway 10.29.173.15/ /g' /etc/rc.local" -i /var/tmp/hosts  

 #批量添加计划任务

ansible abcde -m ping -i /var/tmp/hosts       #查看ping
ansible abcde -m copy -a 'src=/var/tmp/division.sh dest=/data/scripts/' -i /var/tmp/hosts #拷贝
ansible abcde -m shell -a 'ls -al /data/scripts/|grep division.sh' -i /var/tmp/hosts #检查拷贝是否成功
ansible abcde -m cron -a 'name="clear app logs" minute='0' hour='3' job="/bin/sh /data/scripts/division.sh &>/dev/null"' -i /var/tmp/hosts #添加任务
ansible abcde -m shell -a 'crontab -l|tail -2' -i /var/tmp/hosts #检查任务是否添加成功

最终效果如下:

#Ansible: clear app logs
0 3 * * * /bin/bash /data/scripts/division.sh

ansible abcde -m shell -a "echo '00 * * * * /bin/bash /data/scripts/pop-webapp_log_division.sh' >> /var/spool/cron/www" -i /var/tmp/hosts    #www用户下添加计划任务

#批量删除计划任务

ansible abcde -m cron -a 'name="clear app logs" state=absent' -i /var/tmp/hosts    #present 启用  absent 停用

 

#批量创建目录

ansible abcde -m file -a 'path=/data/backup/center state=directory owner=www group=www recurse=yes' -i /var/tmp/hosts     

      recurse:递归设置文件的属性,只对目录有效

#批量解压文件

ansible abcde -m unarchive -a 'src=/data/app/pinpoint-agent.20180802.tar.gz dest=/data/app/ copy=no mode=0755' -i /var/tmp/hosts  #该命令压缩包已在目标机上

  unarchive模块:解压缩

  copy:默认为yes,当copy=yes,那么拷贝的文件是从ansible主机复制到远程主机上的,如果设置为copy=no,那么会在远程主机上寻找src源文件

  src:源路径,可以是ansible主机上的路径,也可以是远程主机上的路径,如果是远程主机上的路径,则需要设置copy=no

  dest:远程主机上的目标路径

  mode:设置解压缩后的文件权限

#批量判断主机名与zabbix-agent配置文件的主机名是否一致

ansible abcde -m shell -a 'grep `hostname` /data/server/zabbix/etc/zabbix_agentd.conf' -i /var/tmp/hosts

 

SSH端口变更后,HOSTS文件写法如下:

[root@txysitvldevops03 tmp]# more hosts
[abcde]
10.124.11.104 ansible_ssh_port=33897

 

转载于:https://www.cnblogs.com/dengmeinan/p/8120033.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值