ansible之roles结构模板
client
- 创建xxx角色的tasks任务
[root@m01 roles]# cat > /etc/ansible/roles/xxx/tasks/main.yml <<EOF
- include_tasks: download.yml
- include_tasks: decompress.yml
- include_tasks: config.yml
EOF
- 创建xxx角色的handlers任务
[root@m01 roles]# cat > /etc/ansible/roles/xxx/handlers/main.yml <<EOF
- name: "Reloaded xxx Server"
systemd:
name: xxx
state: reloaded
EOF
- 创建xxx角色的templates资源(视情况而定)
[root@m01 roles]# mv /etc/ansible/templates/ntp.client /etc/ansible/roles/ntp/templates/
- 创建xxx角色的meta依赖
[root@m01 roles]# cat > /etc/ansible/roles/xxx/meta/main.yml <<EOF
dependencies:
- { role: lnmp }
EOF
- 创建xxx角色的角色执行文件xxx.yml
[root@m01 roles]# cat > /etc/ansible/roles/xxx.yml <<EOF
- hosts: only_LAN
remote_user: root
roles:
- xxx
EOF
main playbook
[root@m01 roles]# cat > /etc/ansible/roles/site.yml <<EOF
- import_playbook: lnmp.yml
- import_playbook: yum_client.yml
- import_playbook:rsync_server.yml
- import_playbook: rsync_client.yml
- import_playbook: nfs_server.yml
- import_playbook: nginx.yml
- import_playbook: php.yml
- import_playbook: slb.yml
- import_playbook: keepalived.yml
- import_playbook: database.yml
- import_playbook: wordpress.yml
- import_playbook: nfs_client.yml
- import_playbook: phpmyadmin.yml
- import_playbook: wecenter.yml
- import_playbook: https.yml
EOF
运行测试
[root@m01 roles]# ansible-playbook site.yml
模板
- 创建xxx角色的tasks任务
[root@m01 roles]# cat > /etc/ansible/roles/xxx/tasks/main.yml <<EOF
- include_tasks: download.yml
- include_tasks: decompress.yml
- include_tasks: config.yml
EOF
- 创建xxx角色的handlers任务
[root@m01 roles]# cat > /etc/ansible/roles/xxx/handlers/main.yml <<EOF
- name: "Reloaded xxx Server"
systemd:
name: xxx
state: reloaded
EOF
- 创建xxx角色的templates资源
- 创建xxx角色的meta依赖
[root@m01 roles]# cat > /etc/ansible/roles/xxx/meta/main.yml <<EOF
dependencies:
- { role: lnmp }
EOF
- 创建xxx角色的角色执行文件xxx.yml
[root@m01 roles]# cat > /etc/ansible/roles/xxx.yml <<EOF
- hosts: nginx_server
remote_user: root
roles:
- xxx
EOF
很高兴各位朋友能欣赏作品,本文版权归作者和博客园共有,欢迎转载,请在文章页面明显位置给出原文出处,否则将追究法律责任。 原文链接: https://www.cnblogs.com/strugger-0316