假设我有一个角色glusterfs
,它在主机glusterfs-servers
上配置GlusterFS群集。
此外,我有一个角色storage-clients
,它希望在主机storage-clients
上从此GlusterFS群集装载卷。
因此,为确保成功设置GlusterFS群集,我将以下内容添加到role/storage-clients/meta/main.yml
:
---
dependencies:
- { role: glusterfs, hosts: glusterfs-servers }
但这会导致ansible在glusterfs
中的主机上运行storage-clients
角色,这显然会失败。
我在我的剧本中担任glusterfs
角色之前的storage-clients
角色,但我想确保我的角色尽可能地防错。
这怎么可能?
答案 0 :(得分:0)
角色的依赖关系应用于同一主机,作为主要角色。
如果您需要设置一些安全网,请在storage-clients
角色中添加一些检查任务。例如:
- name: Ensure glusterfs servers are ready
script: check_glusterfs.sh
delegate_to: '{{ item }}'
with_items: '{{ groups["glusterfs-servers"] | default([]) }}'
run_once: yes