32847


playbook の中で一通して利用したい変数があります。これを定義する方法はありますか？  
近い変数は、 set_fact/register による fact 的な情報の登録なのですが、これは

  * (playbook,host) 単位に対して管理されるため、 playbook の中ですべての play で共通して使う変数としては使いづらい

と考えたので、質問しています。


CC BY-SA 3.0
2017-02-09T07:45:40.043
32526
2017-02-21T13:59:30.513
754
question
ansible
playbook に対しての変数を定義できますか？


inventory の全てのノード(host)が all グループに属するので、group_vars/all.yml に書けば目的のことができると思います。

inventory に書くなら

[code]

    [web]
    192.168.56.10
    
    [db]
    192.168.56.20
    
    [all:vars]
    ntp_server=192.168.56.1
    
[/code]

group_vars/all.yml に書くなら

[code]

    ---
    ntp_server : 192.168.56.1
    
[/code]

もしくは、コマンドラインで指定する。--extra-vars も playbook 全体(global)になります。

Variable Scopes  
<http://docs.ansible.com/ansible/playbooks_variables.html#variable-scopes>


CC BY-SA 3.0
2017-02-21T13:59:30.513
32847
2017-02-21T13:59:30.513
4419
32526
answer