2016-03-21 275 views
1

我已經開始使用ansible,我想知道在劇本中使用多個角色或指定多個角色依賴關係的最佳做法。例如:考慮角色名稱common。這個角色的存在是爲了在該網站的所有內容中共享通用配置。然後有web,dbmail等角色。在實踐中這些需要common角色。所以問題是:這樣的事情應該在爲不同角色創建機器或指定爲角色依賴性的劇本中表達出來?是否存在任何一種方法或其他方法的權衡。我傾向於將它們指定爲角色依賴關係。Playbook依賴關係與角色依賴關係

你以前是怎麼做到的?

回答

2

如果某個角色真的取決於其他角色,比如先安裝某些需求,然後才能使用,則角色依賴關係是合適的。因此,如果common確實安裝了需求,則它符合角色依賴關係。如果它完全不相關的東西,它不應該是一個角色依賴。

名稱common表明它可能實際上正在做多件事情,恰好在所有主機上執行。相反,我建議你真的在角色。所有主機都可能安裝了Apache,MySQL和PHP。這並不意味着它必須被塞進一個角色。使它成爲3個角色,小包裝。然後它應該明白哪個角色是另一個角色的依賴關係,或者是否應該添加到劇本級別。