-------------------------------------------------
## 测试一:拷贝文件及执行命令
-------------------------------------------------
echo "systemctl disable firewalld" > /root/test.sh
ansible mysqlservers -m copy -a "src=/root/test.sh dest=/root/"
ansible mysqlservers -m shell -a "chmod 755 /root/test.sh"
-------------------------------------------------
## 测试二:调用 roles 的 playbook 任务执行
-------------------------------------------------
# 创建角色目录 test
mkdir -p /etc/ansible/roles/test/{default,files,handlers,meta,tasks,templates,vars}
# 创建配置文件 mytest.yml,指定主机组 mysqlservers,指定角色目录 test
vim /etc/ansible/roles/test/mytest.yml
- hosts: mysqlservers
remote_user: root
roles:
- test
## 创建任务脚本
vim /etc/ansible/roles/test/tasks/main.yml
- name: copy test.sh to client
copy: src=/root/test.sh dest=/root/test.sh
- name: chmod for test.sh
shell: chmod 755 /root/test.sh
## 检查脚本
ansible-playbook -C /etc/ansible/roles/test/mytest.yml
## 执行脚本
ansible-playbook /etc/ansible/roles/test/mytest.yml