2017-05-05 100 views
0

我們假設我有一個角色glusterfs,它在主機glusterfs-servers上配置GlusterFS集羣。Ansible覆蓋角色依賴關係中的主機

此外,我有一個角色storage-clients,它希望從主機storage-clients上的此GlusterFS羣集裝入一個卷。

因此,爲了確保GlusterFS集羣是成功設立的,我增加了以下內容role/storage-clients/meta/main.yml

--- 
dependencies: 
    - { role: glusterfs, hosts: glusterfs-servers } 

但是,這會導致ansible運行在storage-clients這顯然無法在主機上的glusterfs作用。

我在storage-clients作用於我的劇本之前有glusterfs角色,但我想確保我的角色儘可能具有防故障功能。

這怎麼可能?

回答

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