diff --git a/defaults/main.yml b/defaults/main.yml index 2767c6d1dc00ed595a4d0fee9b0db69ea44262b2..6614d7da098135ca0fba1a0b44798ed87e9bef09 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,2 +1,4 @@ --- # defaults file for ansible-elasticsearch + +elasticsearch_cors_domains: [ 'localhost', '*.{{ ansible_domain }}' ] diff --git a/handlers/main.yml b/handlers/main.yml index 2a963e0bb3fe2c1bd4fa39c56980742a87917870..bc808f32388d1ba1cc245e193962fc991385244b 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -1,2 +1,7 @@ --- # handlers file for ansible-elasticsearch + +- name: Restart Elasticsearch + service: + name: elasticsearch + state: restarted diff --git a/tasks/main.yml b/tasks/main.yml index 489a4187fbb7706d268f3081c8b89abe2b3b05bf..f86d561d75d6677b0e36df1c3aeb0972a02765ce 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,2 +1,48 @@ --- # tasks file for ansible-elasticsearch + +- name: Add apt repo key + apt_key: + url: https://packages.elastic.co/GPG-KEY-elasticsearch + state: present + +- name: Add apt repo + apt_repository: + repo: deb http://packages.elastic.co/elasticsearch/2.x/debian stable main + state: present + update_cache: yes + +- name: apt install + with_items: + - openjdk-7-jre-headless + - elasticsearch + apt: + name: '{{ item }}' + state: present + update_cache: yes + cache_valid_time: 3600 + +- name: Set Java options + lineinfile: + dest: /etc/default/elasticsearch + line: "ES_JAVA_OPTS='-Djava.net.preferIPv4Stack=true'" + regexp: '^ES_JAVA_OPTS=' + state: present + notify: + - Restart Elasticsearch + +- name: Copy configutation template + template: + src: elasticsearch.yml.j2 + dest: /etc/elasticsearch/elasticsearch.yml + owner: root + group: root + mode: '0644' + notify: + - Restart Elasticsearch + +- name: Enable, start Elasticsearch service + service: + name: elasticsearch + state: started + enabled: yes diff --git a/templates/elasticsearch.yml.j2 b/templates/elasticsearch.yml.j2 new file mode 100644 index 0000000000000000000000000000000000000000..1b7f762dc6c92bcb41949ed1e370da4cc62a586f --- /dev/null +++ b/templates/elasticsearch.yml.j2 @@ -0,0 +1 @@ +{{ elasticsearch_config|to_nice_yaml }} diff --git a/vars/main.yml b/vars/main.yml index aa4fb42f6036380f5f4f9bccf51edf8aabbda552..c975e64d6eadbe055e1d692b674fd9b593255260 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -1,2 +1,7 @@ --- # vars file for ansible-elasticsearch + +elasticsearch_config: + http.cors.enabled: true + 'http.cors.allow-origin': '{{ elasticsearch_cors_domains }}' + indices.fielddata.cache.size: '50%'