2016-05-30 67 views
-1

我已经在Ansible控制机器(本地)上运行etcd。我可以得到并如下所示的值,但Ansible不会得到价值观,任何想法?Ansible etcd查找插件问题

enter image description here

我也可以使用curl

enter image description here

获得的价值,我得到这个简单的剧本

#!/usr/bin/env ansible-playbook 
--- 
- name: simple ansible playbook ping 
    hosts: all 
    gather_facts: false 
    tasks:  
    - name: look up value in etcd 
    debug: msg="{{ lookup('etcd', 'weather') }}" 

并运行这个剧本就不会从ETCD

取值
TASK: [look up value in etcd]  ************************************************* 
ok: [app1.test.com] => { 
    "msg": "" 
} 
ok: [app2.test.com] => { 
    "msg": "" 
} 

回答

1

当前(31.05.2016)Ansible etcd查找插件仅支持调用v1 API,并且与发布v2 API端点的较新的etcd实例不兼容。
这里是issue

您可以使用我的快速补丁etcd2.py查找插件。
将它放到你的playbook附近的lookup_plugins子目录中(或放入Ansible全局lookup_plugins路径中)。在您的手册中使用lookup('etcd2', 'weather')

+0

谢谢。正是这个解决方案。 – Sahas