ansible之roles
ace@ace-i1102:~/.ssh$ sudo find /etc/ |grep ansible | more /etc/ansible /etc/ansible/hosts /etc/ansible/ansible.cfg # 配置文件
/etc/ansible/roles
roles
特点
- 目录结构清晰 - 重复调用相同的任务
ace@ace-i1102:~/yaml$ tree
.
├── port.yml
└── roles
└── port
├── files
├── handlers
│ └── main.yml
├── tasks
│ ├── copyfile.yml
│ ├── install.yml
│ ├── main.yml
│ └── start.yml
├── templates
│ └── nginx.conf.j2
└── vars
└── main.yml
tasks目录里面的查找规则:
先找main.yml,通过import_tasks来导入task,
notify去找handlers里面的main.yml里面的task,
tmplate模块去templates目录里面找需要复制的文件
copyfile.yml
- name: copyfile template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf
notify: restart
start.yml
- name: start
service: name=nginx state=started
install.yml
- name: install{{pkg}}
yum: name={{ pkg }}
main.yml
- import_tasks: install.yml
- import_tasks: copyfile.yml
- import_tasks: start.yml
port.yml
- hosts: port
remote_user: root
roles:
- port
var/main.yml
pkg: redis
handlers/main.yml
- name: restart
service: name=nginx state=restarted

浙公网安备 33010602011771号