diff --git a/ansible/roles/elasticsearch/templates/elasticsearch.yml.j2 b/ansible/roles/elasticsearch/templates/elasticsearch.yml.j2 index de3fcda3ad..2f335da89d 100644 --- a/ansible/roles/elasticsearch/templates/elasticsearch.yml.j2 +++ b/ansible/roles/elasticsearch/templates/elasticsearch.yml.j2 @@ -18,3 +18,4 @@ 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" diff --git a/ansible/roles/kibana/defaults/main.yml b/ansible/roles/kibana/defaults/main.yml index 28bf4cc3f2..71bf00d142 100644 --- a/ansible/roles/kibana/defaults/main.yml +++ b/ansible/roles/kibana/defaults/main.yml @@ -29,7 +29,8 @@ kibana_default_index_pattern: "{{ kibana_log_prefix }}-*" kibana_default_index: title: "{{ kibana_default_index_pattern }}" timeFieldName: "@timestamp" - +kibana_default_index_options: + index.mapper.dynamic: true #################### # Docker diff --git a/ansible/roles/kibana/tasks/post_config.yml b/ansible/roles/kibana/tasks/post_config.yml index 1acdbd4deb..108c25662f 100644 --- a/ansible/roles/kibana/tasks/post_config.yml +++ b/ansible/roles/kibana/tasks/post_config.yml @@ -5,6 +5,15 @@ port: "{{ kibana_server_port }}" run_once: true +- name: Register the kibana index in elasticsearch + uri: + url: "{{ internal_protocol }}://{{ kolla_internal_vip_address }}:{{ elasticsearch_port }}/.kibana" + method: PUT + body: "{{ kibana_default_index_options | to_json }}" + body_format: json + status_code: 200, 201 + run_once: true + - name: Wait for kibana to register in elasticsearch uri: url: "{{ internal_protocol }}://{{ kolla_internal_vip_address }}:{{ elasticsearch_port }}/.kibana" @@ -15,6 +24,16 @@ delay: 2 run_once: true +- name: Change kibana config to set index as defaultIndex + uri: + url: "{{ internal_protocol }}://{{ kolla_internal_vip_address }}:{{ elasticsearch_port }}/.kibana/config/*" + method: PUT + body: + defaultIndex: "{{ kibana_default_index_pattern }}" + body_format: json + status_code: 200, 201 + run_once: true + - name: Get kibana default indexes uri: HEADER_Content-Type: application/json @@ -44,36 +63,3 @@ - kibana_default_index is defined - kibana_default_indexes is defined - kibana_default_indexes['.kibana']['mappings']['config']['properties']['defaultIndex'] is not defined - -- name: Find kibana version - command: docker exec -t kibana /opt/kibana/bin/kibana --version - register: kibana_version - run_once: true - changed_when: true - when: - - kibana_default_index is defined - - kibana_default_indexes is defined - - kibana_default_indexes['.kibana']['mappings']['config']['properties']['defaultIndex'] is not defined - -- set_fact: - kibana_version: "{{ kibana_version.stdout }}" - run_once: true - connection: local - when: - - kibana_default_index is defined - - kibana_default_indexes is defined - - kibana_default_indexes['.kibana']['mappings']['config']['properties']['defaultIndex'] is not defined - -- name: Change kibana config to set index as defaultIndex - uri: - url: "http://{{ kolla_internal_vip_address }}:{{ elasticsearch_port }}/.kibana/config/{{ kibana_version }}" - method: PUT - body: - defaultIndex: "{{ kibana_default_index_pattern }}" - body_format: json - status_code: 200 - run_once: true - when: - - kibana_default_index is defined - - kibana_default_indexes is defined - - kibana_default_indexes['.kibana']['mappings']['config']['properties']['defaultIndex'] is not defined