From 5212c6eb4c84b04b36f5850740809d26d6658c16 Mon Sep 17 00:00:00 2001 From: Jakob Reiter Date: Fri, 28 Oct 2016 18:42:44 +0200 Subject: [PATCH 1/2] Use network.host and http.port if available. Was causing issues if not bound to localhost and using none default port, as es_api_host/port default to localhost/9200 --- handlers/elasticsearch-templates.yml | 7 ++++--- handlers/shield/elasticsearch-shield-native.yml | 17 +++++++---------- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/handlers/elasticsearch-templates.yml b/handlers/elasticsearch-templates.yml index 3441d83..a67a62b 100644 --- a/handlers/elasticsearch-templates.yml +++ b/handlers/elasticsearch-templates.yml @@ -4,7 +4,8 @@ service: name={{instance_init_script | basename}} state=started enabled=yes - name: Wait for elasticsearch to startup - wait_for: port={{es_api_port}} delay=10 + wait_for: host={% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %} port={% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %} delay=10 + - name: Get template files find: paths="/etc/elasticsearch/templates" patterns="*.json" @@ -12,7 +13,7 @@ - name: Install templates without auth uri: - url: "http://{{es_api_host}}:{{es_api_port}}/_template/{{item.path | filename}}" + url: "http://{% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %}:{% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %}/_template/{{item.path | filename}}" method: PUT status_code: 200 body_format: json @@ -22,7 +23,7 @@ - name: Install templates with auth uri: - url: "http://{{es_api_host}}:{{es_api_port}}/_template/{{item.path | filename}}" + url: "http://{% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %}:{% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %}/_template/{{item.path | filename}}" method: PUT status_code: 200 user: "{{es_api_basic_auth_username}}" diff --git a/handlers/shield/elasticsearch-shield-native.yml b/handlers/shield/elasticsearch-shield-native.yml index 52083a5..4836131 100644 --- a/handlers/shield/elasticsearch-shield-native.yml +++ b/handlers/shield/elasticsearch-shield-native.yml @@ -4,7 +4,7 @@ service: name={{instance_init_script | basename}} state=started enabled=yes - name: Wait for elasticsearch to startup - wait_for: port={{es_api_port}} delay=10 + wait_for: host={% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %} port={% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %} delay=10 - set_fact: manage_native_users=false @@ -21,7 +21,7 @@ #List current users - name: List Native Users uri: - url: http://{{es_api_host}}:{{es_api_port}}/_shield/user + url: http://{% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %}:{% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %}/_shield/user method: GET user: "{{es_api_basic_auth_username}}" password: "{{es_api_basic_auth_password}}" @@ -42,7 +42,7 @@ #Delete all non required users - name: Delete Native Users uri: - url: http://{{es_api_host}}:{{es_api_port}}/_shield/user/{{item}} + url: http://{% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %}:{% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %}/_shield/user/{{item}} method: DELETE status_code: 200 user: "{{es_api_basic_auth_username}}" @@ -55,7 +55,7 @@ #Overwrite all other users - name: Update Native Users uri: - url: http://{{es_api_host}}:{{es_api_port}}/_shield/user/{{item.key}} + url: http://{% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %}:{% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %}/_shield/user/{{item.key}} method: POST body_format: json body: "{{item.value | to_json}}" @@ -70,7 +70,7 @@ - name: List Native Roles uri: - url: http://{{es_api_host}}:{{es_api_port}}/_shield/role + url: http://{% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %}:{% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %}/_shield/role method: GET body_format: json user: "{{es_api_basic_auth_username}}" @@ -94,7 +94,7 @@ #Delete all non required roles - name: Delete Native Roles uri: - url: http://{{es_api_host}}:{{es_api_port}}/_shield/role/{{item}} + url: http://{% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %}:{% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %}/_shield/role/{{item}} method: DELETE status_code: 200 user: "{{es_api_basic_auth_username}}" @@ -107,7 +107,7 @@ #Update other roles - name: Update Native Roles uri: - url: http://{{es_api_host}}:{{es_api_port}}/_shield/role/{{item.key}} + url: http://{% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %}:{% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %}/_shield/role/{{item.key}} method: POST body_format: json body: "{{item.value | to_json}}" @@ -117,6 +117,3 @@ force_basic_auth: yes when: manage_native_roles and es_roles.native.keys() > 0 with_dict: "{{es_roles.native}}" - - - From d92f468d65eb0239593ce00afe4797cd8e58c088 Mon Sep 17 00:00:00 2001 From: Jakob Reiter Date: Fri, 28 Oct 2016 18:46:50 +0200 Subject: [PATCH 2/2] Removed additional newline --- handlers/elasticsearch-templates.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/handlers/elasticsearch-templates.yml b/handlers/elasticsearch-templates.yml index a67a62b..b09cbc2 100644 --- a/handlers/elasticsearch-templates.yml +++ b/handlers/elasticsearch-templates.yml @@ -6,7 +6,6 @@ - name: Wait for elasticsearch to startup wait_for: host={% if es_config['network.host'] is defined %}{{es_config['network.host']}}{% else %}{{es_api_host}}{% endif %} port={% if es_config['http.port'] is defined %}{{es_config['http.port']}}{% else %}{{es_api_port}}{% endif %} delay=10 - - name: Get template files find: paths="/etc/elasticsearch/templates" patterns="*.json" register: templates