2 # Copyright © 2018 Amdocs, Bell Canada, AT&T
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
17 ##################### Elasticsearch Configuration Example #####################
19 # This file contains an overview of various configuration settings,
20 # targeted at operations staff. Application developers should
21 # consult the guide at <http://elasticsearch.org/guide>.
23 # The installation procedure is covered at
24 # <http://elasticsearch.org/guide/en/elasticsearch/reference/current/setup.html>.
26 # Elasticsearch comes with reasonable defaults for most settings,
27 # so you can try it out without bothering with configuration.
29 # Most of the time, these defaults are just fine for running a production
30 # cluster. If you're fine-tuning your cluster, or wondering about the
31 # effect of certain configuration option, please _do ask_ on the
32 # mailing list or IRC channel [http://elasticsearch.org/community].
34 # Any element in the configuration can be replaced with environment variables
35 # by placing them in ${...} notation. For example:
37 # node.rack: ${RACK_ENV_VAR}
39 # For information on supported formats and syntax for the config file, see
40 # <http://elasticsearch.org/guide/en/elasticsearch/reference/current/setup-configuration.html>
41 ################################### Cluster ###################################
43 # Cluster name identifies your cluster for auto-discovery. If you're running
44 # multiple clusters on the same network, make sure you're using unique names.
46 # cluster.name: elasticsearch
50 #################################### Node #####################################
57 # Use the Cluster Health API [http://localhost:9200/_cluster/health], the
58 # Node Info API [http://localhost:9200/_nodes] or GUI tools
59 # such as <http://www.elasticsearch.org/overview/marvel/>,
60 # <http://github.com/karmi/elasticsearch-paramedic>,
61 # <http://github.com/lukas-vlcek/bigdesk> and
62 # <http://mobz.github.com/elasticsearch-head> to inspect the cluster state.
64 # By default, multiple nodes are allowed to start from the same installation location
65 # to disable it, set the following:
67 node.max_local_storage_nodes: 1
70 #################################### Index ####################################
71 # You can set a number of options (such as shard/replica options, mapping
72 # or analyzer definitions, translog settings, ...) for indices globally,
75 # Note, that it makes more sense to configure index settings specifically for
76 # a certain index, either when creating it or by using the index templates API.
78 # See <http://elasticsearch.org/guide/en/elasticsearch/reference/current/index-modules.html> and
79 # <http://elasticsearch.org/guide/en/elasticsearch/reference/current/indices-create-index.html>
80 # for more information.
82 # Set the number of shards (splits) of an index (5 by default):
84 #index.number_of_shards: 5
86 # Set the number of replicas (additional copies) of an index (1 by default):
88 #index.number_of_replicas: 1
90 # These settings directly affect the performance of index and search operations
91 # in your cluster. Assuming you have enough machines to hold shards and
92 # replicas, the rule of thumb is:
94 # 1. Having more *shards* enhances the _indexing_ performance and allows to
95 # _distribute_ a big index across machines.
96 # 2. Having more *replicas* enhances the _search_ performance and improves the
97 # cluster _availability_.
99 # The "number_of_shards" is a one-time setting for an index.
101 # The "number_of_replicas" can be increased or decreased anytime,
102 # by using the Index Update Settings API.
104 # Elasticsearch takes care about load balancing, relocating, gathering the
105 # results from nodes, etc. Experiment with different settings to fine-tune
108 # Use the Index Status API (<http://localhost:9200/A/_status>) to inspect
112 #################################### Paths ####################################
114 # Path to directory containing configuration (this file and logging.yml):
115 #path.conf: /opt/app/elasticsearch/config
117 # Path to directory where to store index data allocated for this node.
118 # Use swm auto link to redirect the data directory if necessary.
120 path.data: /usr/share/elasticsearch/data
122 # path.data: /path/to/data1,/path/to/data2
124 # path.work: /path/to/work
126 path.logs: /usr/share/elasticsearch/logs
128 #path.plugins: /opt/app/elasticsearch/plugins
131 #################################### Plugin ###################################
133 # If a plugin listed here is not installed for current node, the node will not start.
135 # plugin.mandatory: mapper-attachments,lang-groovy
138 ################################### Memory ####################################
140 # Elasticsearch performs poorly when JVM starts swapping: you should ensure that
143 # Set this property to true to lock the memory: default is true
145 #bootstrap.memory_lock: true
147 # Make sure that the ES_MIN_MEM and ES_MAX_MEM environment variables are set
148 # to the same value, and that the machine has enough memory to allocate
149 # for Elasticsearch, leaving enough memory for the operating system itself.
151 # You should also make sure that the Elasticsearch process is allowed to lock
152 # the memory, eg. by using `ulimit -l unlimited`.
156 # Elasticsearch installs system call filters of various flavors depending on the
157 # operating system (e.g., seccomp on Linux). These system call filters are
158 # installed to prevent the ability to execute system calls related to forking
159 # as a defense mechanism against arbitrary code execution attacks on
160 # Elasticsearch The system call filter check ensures that if system call
161 # filters are enabled, then they were successfully installed. To pass the system
162 # call filter check you must either fix any configuration errors on your system
163 # that prevented system call filters from installing (check your logs), or at
164 # your own risk disable system call filters by setting
165 # bootstrap.system_call_filter to false.
166 # See: https://www.elastic.co/guide/en/elasticsearch/reference/current/system-call-filter-check.html
168 # seccomp is found in Linux kernels: 2.6.37�2.6.39, 3.0�3.19, 4.0�4.9,
171 # The default setting is to disable the filters assuming an older kernel
172 # version where seccomp is not available.
173 # See: https://discuss.elastic.co/t/elasticsearch-warn-unable-to-install-syscall-filter/42819
175 bootstrap.system_call_filter: false
178 ############################## Network And HTTP ###############################
179 # Elasticsearch, by default, binds itself to the 0.0.0.0 address, and listens
180 # on port [9200-9300] for HTTP traffic and on port [9300-9400] for node-to-node
181 # communication. (the range means that if the port is busy, it will automatically
182 # try the next port).
184 # Set the bind address specifically (IPv4 or IPv6):
186 network.bind_host: 0.0.0.0
189 # Set the address other nodes will use to communicate with this node. If not
190 # set, it is automatically derived. It must point to an actual IP address.
192 # network.publish_host: 0.0.0.0
194 # Set both 'bind_host' and 'publish_host':
195 # network.host: 192.168.0.1
198 # Set a custom port for the node to node communication (9300 by default):
200 transport.tcp.port: {{ .Values.service.internalPort2 }}
202 # Enable compression for all communication between nodes (disabled by default):
203 transport.tcp.compress: false
205 # Set a custom port to listen for HTTP traffic:
207 http.port: {{ .Values.service.internalPort }}
209 # Set a custom allowed content length:
210 # http.max_content_length: 100mb
211 http.max_content_length: 100mb
213 # Disable HTTP completely:
214 # http.enabled: false
217 # This is specifically useful for permitting which front end Kibana Url's are permitted to access elastic search.
218 http.cors.enabled: false
219 http.cors.allow-origin: "/.*/"
220 http.cors.allow-headers: X-Requested-With, Content-Type, Content-Length
221 http.cors.allow-credentials: false
223 ################################### Gateway ###################################
225 # The gateway allows for persisting the cluster state between full cluster
226 # restarts. Every change to the state (such as adding an index) will be stored
227 # in the gateway, and when the cluster starts up for the first time,
228 # it will read its state from the gateway.
229 # There are several types of gateway implementations. For more information, see
230 # <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-gateway.html>.
232 # The default gateway type is the "local" gateway (recommended):
237 # Settings below control how and when to start the initial recovery process on
238 # a full cluster restart (to reuse as much local data as possible when using shared
241 # Allow recovery process after N nodes in a cluster are up:
243 # gateway.recover_after_nodes: 1
245 gateway.recover_after_nodes: 1
247 # Set the timeout to initiate the recovery process, once the N nodes
248 # from previous setting are up (accepts time value):
250 #gateway.recover_after_time: 5m
251 gateway.recover_after_time: 5m
253 # Set how many nodes are expected in this cluster. Once these N nodes
254 # are up (and recover_after_nodes is met), begin recovery process immediately
255 # (without waiting for recover_after_time to expire):
257 # gateway.expected_nodes: 2
258 gateway.expected_nodes: 2
261 ############################# Recovery Throttling #############################
263 # These settings allow to control the process of shards allocation between
264 # nodes during initial recovery, replica allocation, rebalancing,
265 # or when adding and removing nodes.
267 # Set the number of concurrent recoveries happening on a node:
269 # 1. During the initial recovery
271 # cluster.routing.allocation.node_initial_primaries_recoveries: 4
273 # 2. During adding/removing nodes, rebalancing, etc
275 # cluster.routing.allocation.node_concurrent_recoveries: 2
277 # Set to throttle throughput when recovering (eg. 100mb, by default 20mb):
278 # indices.recovery.max_bytes_per_sec: 20mb
280 indices.recovery.max_bytes_per_sec: 20mb
283 # Set to limit the number of open concurrent streams when
284 # recovering a shard from a peer:
286 # indices.recovery.concurrent_streams: 5
287 #indices.recovery.concurrent_streams: 5
289 ################################## Discovery ##################################
291 # Discovery infrastructure ensures nodes can be found within a cluster
292 # and master node is elected. Multicast discovery is the default.
294 # Set to ensure a node sees N other master eligible nodes to be considered
295 # operational within the cluster. Its recommended to set it to a higher value
296 # than 1 when running more than 2 nodes in the cluster.
299 discovery.zen.minimum_master_nodes: 1
302 # Set the time to wait for ping responses from other nodes when discovering.
303 # Set this option to a higher value on a slow or congested network
304 # to minimize discovery failures:
306 # discovery.zen.ping_timeout: 3s
308 discovery.zen.ping_timeout: 3s
311 # For more information, see
312 # <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-zen.html>
314 # Unicast discovery allows to explicitly control which nodes will be used
315 # to discover the cluster. It can be used when multicast is not present,
316 # or to restrict the cluster communication-wise.
318 # 1. Disable multicast discovery (enabled by default):
319 # discovery.zen.ping.multicast.enabled: false
320 #discovery.zen.ping.multicast.enabled: false
323 # 2. Configure an initial list of master nodes in the cluster
324 # to perform discovery when new nodes (master or data) are started:
326 # discovery.zen.ping.unicast.hosts: ["host1", "host2:port"]
329 discovery.zen.ping.unicast.hosts: ["0.0.0.0"]
332 # EC2 discovery allows to use AWS EC2 API in order to perform discovery.
334 # You have to install the cloud-aws plugin for enabling the EC2 discovery.
336 # For more information, see
337 # <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-ec2.html>
340 # See <http://elasticsearch.org/tutorials/elasticsearch-on-ec2/>
341 # for a step-by-step tutorial.
343 # GCE discovery allows to use Google Compute Engine API in order to perform discovery.
345 # You have to install the cloud-gce plugin for enabling the GCE discovery.
347 # For more information, see <https://github.com/elasticsearch/elasticsearch-cloud-gce>.
349 # Azure discovery allows to use Azure API in order to perform discovery.
351 # You have to install the cloud-azure plugin for enabling the Azure discovery.
353 # For more information, see <https://github.com/elasticsearch/elasticsearch-cloud-azure>.
355 ################################## Slow Log ##################################
357 # Shard level query and fetch threshold logging.
359 #index.search.slowlog.threshold.query.warn: 10s
360 #index.search.slowlog.threshold.query.info: 5s
361 #index.search.slowlog.threshold.query.debug: 2s
362 #index.search.slowlog.threshold.query.trace: 500ms
364 #index.search.slowlog.threshold.fetch.warn: 1s
365 #index.search.slowlog.threshold.fetch.info: 800ms
366 #index.search.slowlog.threshold.fetch.debug: 500ms
367 #index.search.slowlog.threshold.fetch.trace: 200ms
369 #index.indexing.slowlog.threshold.index.warn: 10s
370 #index.indexing.slowlog.threshold.index.info: 5s
371 #index.indexing.slowlog.threshold.index.debug: 2s
372 #index.indexing.slowlog.threshold.index.trace: 500ms
374 ################################## GC Logging ################################
376 #monitor.jvm.gc.young.warn: 1000ms
377 #monitor.jvm.gc.young.info: 700ms
378 #monitor.jvm.gc.young.debug: 400ms
380 #monitor.jvm.gc.old.warn: 10s
381 #monitor.jvm.gc.old.info: 5s
382 #monitor.jvm.gc.old.debug: 2s
385 # x-pack security conflicts with searchguard
387 xpack.security.enabled: false
388 xpack.ml.enabled: false
389 xpack.monitoring.enabled: false
390 xpack.watcher.enabled: false