From 4d46c428d0540ce581c946308f8995248c0e3bf9 Mon Sep 17 00:00:00 2001
From: Jason Anderson <jasonanderson@uchicago.edu>
Date: Mon, 24 Feb 2020 14:51:14 -0600
Subject: [PATCH] [elasticsearch] Update config for 6.x

This updates the elasticsearch configuration file (and loading
mechanism) for ELK 6.x.

The default location for the configuration for all package
distributions is /etc/elasticsearch[1], so now that is where we
overwrite the elasticsearch.yml.

The path.conf and path.scripts paths are no longer supported and will
raise exceptions if utilized in 6.x.

[1]:
https://www.elastic.co/guide/en/elasticsearch/reference/6.x/settings.html#config-files-location

Implements: blueprint elasticsearch-kibana-version-upgrade
Depends-On: https://review.opendev.org/#/c/647748/
Change-Id: I4f74bfe07d4b7ca18953b11e767cf0bb94dfd67e
---
 ansible/roles/elasticsearch/tasks/upgrade.yml          | 10 +++++++---
 .../elasticsearch/templates/elasticsearch.json.j2      |  2 +-
 .../roles/elasticsearch/templates/elasticsearch.yml.j2 |  2 --
 3 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/ansible/roles/elasticsearch/tasks/upgrade.yml b/ansible/roles/elasticsearch/tasks/upgrade.yml
index 2559d6c8b..9bd077e7d 100644
--- a/ansible/roles/elasticsearch/tasks/upgrade.yml
+++ b/ansible/roles/elasticsearch/tasks/upgrade.yml
@@ -1,6 +1,10 @@
 ---
+- name: Set fact for Elasticsearch URL
+  set_fact:
+    elasticsearch_url: "{{ internal_protocol }}://{{ kolla_internal_vip_address | put_address_in_context('url') }}:{{ elasticsearch_port }}"
+
 # The official procedure for upgrade elasticsearch:
-# https://www.elastic.co/guide/en/elasticsearch/reference/5.6/restart-upgrade.html
+# https://www.elastic.co/guide/en/elasticsearch/reference/6.x/restart-upgrade.html
 - name: Disable shard allocation
   become: true
   vars:
@@ -8,7 +12,7 @@
   kolla_toolbox:
     module_name: uri
     module_args:
-      url: "{{ internal_protocol }}://{{ kolla_internal_fqdn | put_address_in_context('url') }}:{{ elasticsearch_port }}/_cluster/settings"
+      url: "{{ elasticsearch_url }}/_cluster/settings"
       method: PUT
       status_code: 200
       return_content: yes
@@ -22,7 +26,7 @@
   kolla_toolbox:
     module_name: uri
     module_args:
-      url: "{{ internal_protocol }}://{{ kolla_internal_fqdn | put_address_in_context('url') }}:{{ elasticsearch_port }}/_flush/synced"
+      url: "{{ elasticsearch_url }}/_flush/synced"
       method: POST
       status_code: 200
       return_content: yes
diff --git a/ansible/roles/elasticsearch/templates/elasticsearch.json.j2 b/ansible/roles/elasticsearch/templates/elasticsearch.json.j2
index f34d2ea3b..317ae5658 100644
--- a/ansible/roles/elasticsearch/templates/elasticsearch.json.j2
+++ b/ansible/roles/elasticsearch/templates/elasticsearch.json.j2
@@ -3,7 +3,7 @@
     "config_files": [
         {
             "source": "{{ container_config_directory }}/elasticsearch.yml",
-            "dest": "/usr/share/elasticsearch/config/elasticsearch.yml",
+            "dest": "/etc/elasticsearch/elasticsearch.yml",
             "owner": "elasticsearch",
             "perm": "0600"
         }
diff --git a/ansible/roles/elasticsearch/templates/elasticsearch.yml.j2 b/ansible/roles/elasticsearch/templates/elasticsearch.yml.j2
index a2486a2ad..ec4ca41bd 100644
--- a/ansible/roles/elasticsearch/templates/elasticsearch.yml.j2
+++ b/ansible/roles/elasticsearch/templates/elasticsearch.yml.j2
@@ -14,9 +14,7 @@ http.port: {{ elasticsearch_port }}
 gateway.expected_nodes: {{ num_nodes }}
 gateway.recover_after_time: "5m"
 gateway.recover_after_nodes: {{ recover_after_nodes }}
-path.conf: "/etc/elasticsearch"
 path.data: "/var/lib/elasticsearch/data"
 path.logs: "/var/log/kolla/elasticsearch"
-path.scripts: "/etc/elasticsearch/scripts"
 indices.fielddata.cache.size: 40%
 action.auto_create_index: "true"
-- 
GitLab