在Ansible中连接角色有多种方式,包括使用meta
、rolename
或import_role
。以下是这些方法的代码示例:
meta
连接角色:- hosts: servers
roles:
- { role: common, tags: common }
- { role: webserver, tags: webserver }
- { role: database, tags: database }
- hosts: servers
tasks:
- name: Connect roles using meta
meta: clear_host_errors
tags: common
- name: Connect webserver role using meta
meta: flush_handlers
tags: webserver
- name: Connect database role using meta
meta: refresh_inventory
tags: database
rolename
连接角色:- hosts: servers
tasks:
- name: Include common role
include_role:
name: common
tags: common
- name: Include webserver role
include_role:
name: webserver
tags: webserver
- name: Include database role
include_role:
name: database
tags: database
import_role
连接角色:- hosts: servers
tasks:
- name: Import common role
import_role:
name: common
tags: common
- name: Import webserver role
import_role:
name: webserver
tags: webserver
- name: Import database role
import_role:
name: database
tags: database
以上示例中,common
、webserver
和database
是角色的名称,可以根据实际情况进行更改。使用标签可以根据需要选择特定的任务运行。