command: docker network create luinet
when: docker_nets.stdout.find('luinet') == -1
+ - name: Copy ZooKeeper config if not present
+ become: yes
+ copy: src=zookeeper dest=/etc/masterkey/lui/ force=no
+
+ - name: Create ZooKeeper dataDirs
+ become: yes
+ file: path=/var/lib/masterkey/lui/zookeeper/zk{{ item }} state=directory
+ with_sequence: start=1 end={{ num_zk_servers }}
+
- name: Launch ZooKeeper containers
become: yes
docker_container:
name: zk{{ item }}
image: jplock/zookeeper
+ volumes:
+ - /etc/masterkey/lui/zookeeper:/opt/zookeeper/conf
+ - /var/lib/masterkey/lui/zookeeper/zk{{ item }}:/tmp/zookeeper
with_sequence: start=1 end={{ num_zk_servers }}
- name: Get ZooKeeper container networks
with_sequence: start=1 end={{ num_zk_servers }}
when: (zk_net.results[item|int-1].stdout|from_json).bridge is defined
+ - name: Create ZooKeeper myid files
+ become: yes
+ copy: content={{ item }} dest=/var/lib/masterkey/lui/zookeeper/zk{{ item }}/myid
+ with_sequence: start=1 end={{ num_zk_servers }}
+ when: num_zk_servers > 1
+
+ # Note - this will not remove servers from config
+ - name: Update zoo.cfg for ensemble
+ become: yes
+ lineinfile: dest=/etc/masterkey/lui/zookeeper/zoo.cfg line="server.{{ item }}=zk{{ item }}:2888:3888"
+ register: zk_conf
+ with_sequence: start=1 end={{ num_zk_servers }}
+ when: num_zk_servers > 1
+
+ - name: Restart ZooKeeper
+ become: yes
+ command: docker restart zk{{ item }}
+ with_sequence: start=1 end={{ num_zk_servers }}
+ when: zk_conf|changed
+
- name: Get contents of /solr path in ZooKeeper
become: yes
command: docker exec -t zk1 bin/zkCli.sh get /solr
- name: Build the lui-solr image
become: yes
- docker_image: name=lui-solr path={{ docker_image_path }}
+ docker_image: name=lui-solr path={{ solr_image_path }}
- - name: Build ZooKeeper links for Solr containers
+ - name: Build -z string for Solr
set_fact:
- # zk_links: []
- zk_solr: []
-
- - set_fact:
- # zk_links: "{{ zk_links + ['zk'+item+':ZK'+item] }}"
- zk_solr: "{{ zk_solr + ['zk'+item+':2181'] }}"
+ zk_solr: "{{ zk_solr|default([]) + ['zk'+item+':2181'] }}"
with_sequence: start=1 end={{ num_zk_servers }}
- name: Launch Solr containers