我正在開發一個Ansible部署腳本,以將Solr節點連接到正在運行的zookeeper合奏。到Solr的配置鏈接到動物園管理員的命令如下:從Ansible的主機構建動態命令
solr/scripts/cloud-scripts/zkcli.sh -zkhost 33.33.33.30:2181,33.33.33.31:2181,33.33.33.32:2181 -cmd upconfig -confdir solr/solr/collection1/conf -confname solr_config
我想使命令動態地 - 所以我想從我的清單文件拉動物園管理員的主機。當我知道總是有3個時,我可以做到這一點,但我希望根據列出的人數來調整命令。我已經嘗試了Ansibles with
命令 - 但我無法讓它工作,因爲我不需要在最後一個主機之後的逗號。
這裏是我的清單文件:
[zookeeper]
33.33.33.30
33.33.33.31
33.33.33.32
[solr]
33.33.33.33
33.33.33.34
33.33.33.35
這裏是我沒有環Ansible任務:
- name: SOLR | Upload Configs To Zookeeper
command: "{{ solr.home }}/scripts/cloud-scripts/zkcli.sh -zkhost {{groups.zookeeper[0] }}:{{ zookeeper.port }}, {{ groups.zookeeper[1] }}:{{ zookeeper.port }}, {{ groups.zookeeper[2] }}:{{ zookeeper.port }} -cmd upconfig -confdir {{ solr.home }}/solr/{{ solr.collection_name }}/conf -confname {{ solr.config_name }}"
when: inventory_hostname == groups.solr[0]
而且知道如何使這個充滿活力的以動物管理員的主機清單中的數量?
感謝展示兩種方式;帶着小問題打電話加入加吊墜性感 – 2015-02-08 00:52:53
太棒了,就是我在找的東西。謝謝! – tknickman 2015-02-08 20:20:51