配置環境 (在代理環境中)¶
New in version 1.1.
你完全有可能遇到一些更新包需要通過proxy才能正常獲取,或者甚至一部分包需要通過proxy升級而另外一部分包則不需要通過proxy.或者可能你的某個指令碼需要呼叫某個環境變數才能正常執行.
Ansible 使用 ‘environment’ 關鍵字對於環境部署的配置非常簡單容易,下面是一個使用案例:
- hosts: all
remote_user: root
tasks:
- apt: name=cobbler state=installed
environment:
http_proxy: http://proxy.example.com:8080
environment 也可以被儲存在變數中,像如下方式訪問:
- hosts: all
remote_user: root
# here we make a variable named "proxy_env" that is a dictionary
vars:
proxy_env:
http_proxy: http://proxy.example.com:8080
tasks:
- apt: name=cobbler state=installed
environment: proxy_env
雖然上面只展示了 proxy 設定,但其實可以同時其實支援多個設定. 大部分合合乎邏輯的地方來定義一個環境變數都可以成為 group_vars 檔案,示例如下:
---
# file: group_vars/boston
ntp_server: ntp.bos.example.com
backup: bak.bos.example.com
proxy_env:
http_proxy: http://proxy.bos.example.com:8080
https_proxy: http://proxy.bos.example.com:8080
See also
- Playbooks
- An introduction to playbooks
- User Mailing List
- Have a question? Stop by the google group!
- irc.freenode.net
- #ansible IRC chat channel