使用组中的第一个主机

时间:2017-02-10 23:49:12

标签: ansible

我的ansible主机定义类似于

[elasticclient]
192.168.10.2
192.168.10.3

我想使用组中的第一个主机在变量中使用。我的剧本是

- hosts: kibana
  roles:
    - kibana
  vars:
    kibana_elasticsearch_url: http://{{ groups[['elasticclient'][0]] }}:9200

当我运行此文件时,我的文件包含

http://[u'192.168.10.2']:9200

如何将其更改为

http://192.168.10.2:9200

2 个答案:

答案 0 :(得分:3)

我想通了,这是一个列表,我不得不再次索引它。

kibana_elasticsearch_url: http://{{ groups['elasticproxy'][0] }}:9200

答案 1 :(得分:0)

或者您可以使用ansible提供的默认值: hostvars[groups['elasticsearch'][0]]['ansible_eth0']['ipv4']['address']