1.Roles目录结构
webservers.yml
fooservers.yml
roles/
common/
tasks/
handlers/
files/
templates/
vars/
defaults/
meta/
webservers/
tasks/
defaults/
meta/
tasks - 包含角色要执行的主要任务列表
handlers - 包含角色使用的处理程序
defaults - 角色默认的变量
vars - 角色其他的变量
files - 角色部署时用到的文件
templates - 角色部署时用到的模板
meta - 角色定义的一些元数据
2.Roles基本使用
- hosts: webservers
roles:
- common
- nginx
- php
- hosts: webservers
roles:
- common
- role: nginx
vars:
dir: '/opt/a'
app_port: 5000
- role: php
vars:
dir: '/opt/b'
app_port: 5001
- hosts: webservers
roles:
- role: common
tags: ["common"]
- role: nginx
tags: ["nginx"]
- role: php
tags: ["php"]
3.案例:部署Web服务器

软件开发平台最佳实践:docs.ansible.com/ansible/latest/userguide/playbooksbest_practices.html
示例参考:github.com/ansible/ansible-examples