2017-07-31 82 views
0

我已经在环境/分期创建两个文件夹group_vars可变因素/ group_vars即Ansible在不拾取从

  1. 所有/ main.yml

  2. 服务/ main.yml

当我执行我的剧本如下

ansible-playbook -i environments/staging myplaybook.yml

group_vars/all/main.yml下定义的变量正在被myplaybook拾取,但它并没有提供服务变量。

任何指针?

+0

你介意发布你的库存吗? –

+0

请澄清一下'services/main.yml'的用法,你是否有一个“services”组,这个文件需要使用vars或者你希望任何一组主机访问它?如果以后,这是不可能的,你应该使用'group_vars/all'来放置全局可访问的变量。 – Andrew

+0

@Andrew services/main.yml类似于db/main.yml,webserver/main.yml ...我只是想从group_vars/all/main.yml中分离出一些配置... – Shashi

回答

1

正如您在评论中所说的,您的库存中没有定义组services

group_vars文件夹中的每个子文件夹对应于组名,一个用于特殊组all

所以对库存文件:

[group1] 
host1 

[group2] 
host2 

group_vars可能看起来像:

./group_vars/all/common.yml 
./group_vars/group1/gr1_specific.yml 
./group_vars/group2/gr2_specific.yml 

所以host1将有来自瓦尔和common.ymlgr1_specific.ymlhost2 - common.ymlgr2_specific.yml