欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ansible执行shell脚本的方法

程序员文章站 2022-03-01 13:44:32
1. 编写脚本:pb_shell.shwfq@ubuntu:~/playbook$ cat pb_shell.sh #!bin/shecho "today(`date`) is a nice day,...

1. 编写脚本:pb_shell.sh

wfq@ubuntu:~/playbook$ cat pb_shell.sh 
#!bin/sh
echo "today(`date`) is a nice day, since i do some nice demo about ansible and excute very well." > /home/wfq/playbook/pb.log
wfq@ubuntu:~/playbook$

2. 执行ansible命令,将脚本copy到其他几台服务器上

wfq@ubuntu:~/playbook$ ansible asb -m copy -a "src=/home/wfq/playbook/pb_shell.sh dest=/home/wfq/playbook/"
192.168.174.134 | success >> {
    "changed": true, 
    "dest": "/home/wfq/playbook/pb_shell.sh", 
    "gid": 1000, 
    "group": "wfq", 
    "md5sum": "79744ccf5b60c7d020bb261d11516252", 
    "mode": "0664", 
    "owner": "wfq", 
    "size": 135, 
    "src": "/home/wfq/.ansible/tmp/ansible-tmp-1523198762.69-211691352620479/source", 
    "state": "file", 
    "uid": 1000
}

192.168.174.131 | success >> {
    "changed": true, 
    "dest": "/home/wfq/playbook/pb_shell.sh", 
    "gid": 1000, 
    "group": "wfq", 
    "md5sum": "79744ccf5b60c7d020bb261d11516252", 
    "mode": "0664", 
    "owner": "wfq", 
    "size": 135, 
    "src": "/home/wfq/.ansible/tmp/ansible-tmp-1523198762.69-274155692570175/source", 
    "state": "file", 
    "uid": 1000
}

192.168.174.133 | success >> {
    "changed": true, 
    "dest": "/home/wfq/playbook/pb_shell.sh", 
    "gid": 1000, 
    "group": "wfq", 
    "md5sum": "79744ccf5b60c7d020bb261d11516252", 
    "mode": "0664", 
    "owner": "wfq", 
    "size": 135, 
    "src": "/home/wfq/.ansible/tmp/ansible-tmp-1523198764.85-163098225256987/source", 
    "state": "file", 
    "uid": 1000
}

192.168.174.132 | success >> {
    "changed": true, 
    "dest": "/home/wfq/playbook/pb_shell.sh", 
    "gid": 1000, 
    "group": "wfq", 
    "md5sum": "79744ccf5b60c7d020bb261d11516252", 
    "mode": "0664", 
    "owner": "wfq", 
    "size": 135, 
    "src": "/home/wfq/.ansible/tmp/ansible-tmp-1523198764.89-251052794120091/source", 
    "state": "file", 
    "uid": 1000
}

wfq@ubuntu:~/playbook$ 

3. 执行ansible命令,在每天服务器上执行pb_shell.sh脚本

wfq@ubuntu:~/playbook$ ansible asb -m shell  -a "sh /home/wfq/playbook/pb_shell.sh chdir=/home/wfq/playbook"
192.168.174.134 | success | rc=0 >>
192.168.174.131 | success | rc=0 >>
192.168.174.132 | success | rc=0 >>
192.168.174.133 | success | rc=0 >>

4. 比如,在131服务器,查看执行生成的日志:

wfq@ubuntu:~/playbook$ cat pb.log 
today(2018年 04月 08日 星期日 22:46:19 cst) is a nice day, since i do some nice demo about ansible and excute very well.
wfq@ubuntu:~/playbook$ 
wfq@ubuntu:~/playbook$ ls
pb.log  pb_shell.sh
wfq@ubuntu:~/playbook$ 

到此这篇关于ansible执行shell脚本的方法的文章就介绍到这了,更多相关ansible执行shell脚本内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!