Browse Source

configure kibana index mode

Jeff Cantrill 7 years ago
parent
commit
a2f8e6493f

+ 3 - 0
roles/openshift_logging_elasticsearch/defaults/main.yml

@@ -37,6 +37,9 @@ openshift_logging_elasticsearch_storage_group: '65534'
 
 openshift_logging_es_pvc_prefix: "{{ openshift_hosted_logging_elasticsearch_pvc_prefix | default('logging-es') }}"
 
+# config the es plugin to write kibana index based on the index mode
+openshift_logging_elasticsearch_kibana_index_mode: 'unique'
+
 # this is used to determine if this is an operations deployment or a non-ops deployment
 # simply used for naming purposes
 openshift_logging_elasticsearch_ops_deployment: false

+ 7 - 0
roles/openshift_logging_elasticsearch/tasks/main.yaml

@@ -102,6 +102,11 @@
     delete_after: true
 
 # configmap
+- assert:
+    that:
+    - openshift_logging_elasticsearch_kibana_index_mode in __kibana_index_modes
+    msg: "The openshift_logging_elasticsearch_kibana_index_mode '{{ openshift_logging_elasticsearch_kibana_index_mode  }}' only supports one of: {{ __kibana_index_modes | join(', ') }}"
+
 - template:
     src: elasticsearch-logging.yml.j2
     dest: "{{ tempdir }}/elasticsearch-logging.yml"
@@ -115,6 +120,8 @@
     allow_cluster_reader: "{{ openshift_logging_elasticsearch_ops_allow_cluster_reader | lower | default('false') }}"
     es_number_of_shards: "{{ openshift_logging_es_number_of_shards | default(1) }}"
     es_number_of_replicas: "{{ openshift_logging_es_number_of_replicas | default(0) }}"
+    es_kibana_index_mode: "{{ openshift_logging_elasticsearch_kibana_index_mode | default('unique') }}"
+
   when: es_config_contents is undefined
   changed_when: no
 

+ 2 - 0
roles/openshift_logging_elasticsearch/templates/elasticsearch.yml.j2

@@ -53,6 +53,8 @@ openshift.searchguard:
 
 openshift.operations.allow_cluster_reader: {{allow_cluster_reader | default (false)}}
 
+openshift.kibana.index.mode: {{es_kibana_index_mode | default('unique')}}
+
 path:
   data: /elasticsearch/persistent/${CLUSTER_NAME}/data
   logs: /elasticsearch/${CLUSTER_NAME}/logs

+ 2 - 0
roles/openshift_logging_elasticsearch/vars/main.yml

@@ -3,6 +3,8 @@ __latest_es_version: "3_5"
 __allowed_es_versions: ["3_5", "3_6"]
 __allowed_es_types: ["data-master", "data-client", "master", "client"]
 
+__kibana_index_modes: ["unique", "shared_ops"]
+
 # TODO: integrate these
 openshift_master_config_dir: "{{ openshift.common.config_base }}/master"
 es_node_quorum: "{{ openshift_logging_elasticsearch_replica_count | int/2 + 1 }}"