当前位置 博文首页 > ansible执行shell脚本的方法

    ansible执行shell脚本的方法

    作者:wang725 时间:2021-09-13 17:56

    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$ 
    jsjbwy
    下一篇:没有了