diff --git a/ansible/roles/es6/templates/elasticsearch.yml.j2 b/ansible/roles/es6/templates/elasticsearch.yml.j2
index 3cdbe5ab7145df35b8e2a4f028d32d04906455ba..b1fa03375519619f4485f31de769b940bec2640b 100644
--- a/ansible/roles/es6/templates/elasticsearch.yml.j2
+++ b/ansible/roles/es6/templates/elasticsearch.yml.j2
@@ -7,6 +7,12 @@
 cluster.name: elasticsearch
 {% endif %}
 
+{% if (groups['composite-search-cluster']|length) == 1 %}
+discovery.zen.minimum_master_nodes: 1
+{% else %}
+discovery.zen.minimum_master_nodes: "{{ ((groups['composite-search-cluster']|length) / 2 +1) | round(0, 'ceil') | int}}"
+{% endif %}
+
 {% if es_config['node.name'] is not defined %}
 node.name: {{inventory_hostname}}-{{es_instance_name}}
 {% endif %}