赞
踩
Ansible工具的初步使用
# 模块 shell(执行shell命令)、copy、systemd # ansible [pattern] -i hosts # pattern:匹配执行的ansible节点、组名、主机名、all、多个组或主机用逗号合并 # -i hosts: 指定hosts(每个人指定自己的hosts、不改默认,即定义plyabook规则的文件名) /etc/ansible/hosts(默认、一般不做修改) # -m:模块名 # -a:模块参数 # --diff 比较异同 --check 检测 # ansible nodes -i hosts --list-hosts --list-hosts:匹配哪些机器,打印出来 # -f --fork 默认为5 指定最大进程数 # -e "" 传入变量 # [root@ks2p-hadoop04 ~]# man ansible 显示帮助文档 # -v -vv -vvv -vvvv 打印ansible详细执行日志 [root@ks2p-hadoop04 ansible]# ansible nodes -i hosts -m shell -a "ls /data/soft" ks2p-hadoop06 | CHANGED | rc=0 >> apache-kyuubi-1.8.0-bin flink-1.17.1 kyuubi.tgz new.tgz ks2p-hadoop07 | CHANGED | rc=0 >> spark-3.0.2-bin-hadoop3.2.tgz spark-3.0.3-bin-hadoop3.2.tgz spark-3.1.2-bin-hadoop3.2.tgz [root@ks2p-hadoop04 ansible]# ansible nodes -i hosts -m copy -a "src=hosts dest=/data/soft/hosts" ks2p-hadoop06 | CHANGED => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": true, "checksum": "aaaffde09aa44b0e01eaa0559cd841f80a7eaa2b", "dest": "/data/soft/hosts", "gid": 0, "group": "root", "md5sum": "38d63d2eca30455056de0116a850f327", "mode": "0644", "owner": "root", "size": 179, "src": "/root/.ansible/tmp/ansible-tmp-1713236123.87-49670-171904112008748/source", "state": "file", "uid": 0 } ks2p-hadoop07 | CHANGED => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": true, "checksum": "aaaffde09aa44b0e01eaa0559cd841f80a7eaa2b", "dest": "/data/soft/hosts", "gid": 0, "group": "root", "md5sum": "38d63d2eca30455056de0116a850f327", "mode": "0644", "owner": "root", "size": 179, "src": "/root/.ansible/tmp/ansible-tmp-1713236123.88-49672-160837999053406/source", "state": "file", "uid": 0 } [root@ks2p-hadoop04 ansible]# ansible nodes -i hosts -m shell -a "ls /data/soft" ks2p-hadoop06 | CHANGED | rc=0 >> apache-kyuubi-1.8.0-bin flink-1.17.1 hosts kyuubi.tgz new.tgz ks2p-hadoop07 | CHANGED | rc=0 >> hosts spark-3.0.2-bin-hadoop3.2.tgz spark-3.0.3-bin-hadoop3.2.tgz spark-3.1.2-bin-hadoop3.2.tgz
ansible-playbook -i hosts test.yml
# 剧本集 - hosts: nodes gather_facts: false tasks: - name: 上传hosts文件 copy: src: hosts dest: /data/soft - name: hosts存在将不执行 shell: pwd args: chdir: /tmp creates: /data/soft/hosts # 该文件存在,则不执行 - name: 打印调试信息 debug: msg: "hello" - hosts: tbj gather_facts: false tasks: - name: 打印跳板机hostname shell: hostname
[root@ks2p-hadoop04 ansible]# ansible-playbook -i hosts test.yml PLAY [nodes] *********************************************************************************************************************************************************************** TASK [上传hosts文件] ******************************************************************************************************************************************************************* changed: [ks2p-hadoop06] ok: [ks2p-hadoop07] TASK [hosts存在将不执行] ***************************************************************************************************************************************************************** ok: [ks2p-hadoop06] ok: [ks2p-hadoop07] TASK [打印调试信息] ********************************************************************************************************************************************************************** ok: [ks2p-hadoop06] => { "msg": "hello" } ok: [ks2p-hadoop07] => { "msg": "hello" } PLAY [tbj] ************************************************************************************************************************************************************************* TASK [打印跳板机hostname] *************************************************************************************************************************************************************** changed: [ks2p-hadoop04] PLAY RECAP ************************************************************************************************************************************************************************* ks2p-hadoop04 : ok=1 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 ks2p-hadoop06 : ok=3 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 ks2p-hadoop07 : ok=3 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。