2014-10-20 55 views
1

我剛剛開始與Ansible,所以更具體的我想安裝幾個zookeeper流浪機,爲此我做了一個單獨的角色 - zookeeper。安裝任務很簡單,但最好的配置環境變量是什麼?在我的使用情況下,我已經添加了兩個瓦爾到瓦爾/ main.yml:最好的做法env變量與安全

--- 
env: 
    ZOOKEEPER_INSTALL: "/usr/share/zookeeper" 
    PATH: "$PATH:$ZOOKEEPER_INSTALL/bin" 

然後添加到了角色任務:

- name: Export ZooKeeper env vars 
    shell: export env 

,但我沒有找到這個瓦爾在printenv。然後我試着改變shell模塊environment,但它似乎做了另一種東西。那麼設置env變量的正確方法是什麼,以便他們在server reboot/vagrant halt之後仍能正常工作?

+0

我使用'/ etc/profile.d'作爲Strahinja的建議,它對我很好。谷歌「可靠的動物園管理員」爲github提供了大量不同的劇本和角色。 [這是一個](https://github.com/AnsibleShipyard/ansible-zookeeper)。這些示例應該幫助你選擇哪些可用的模塊/任務類型用於哪裏(以及你很少需要使用shell)。 – kalefranz 2015-04-30 14:01:11

回答

1

如果您想要設置系統環境變量,您必須按照與沒有Ansible的方式相同的方式來執行此操作,例如,通過刪除適當的代碼到/etc/profile.d。您可能可以使用template模塊,幷包含您需要的所有變量。