Node local vs cluster wide configuration


(Mauri) #1

I would like some clarification on ElasticSearch configuration

I understand that ElasticSearch nodes read configuration information from
their local elasticsearch.yaml file and then use that configuration
information to initialise themselves and join a cluster. It is therefore
possible for nodes to be configured differently and still belong to the
same cluster.

Once a cluster is established are there any global settings, ie. non-index
specific settings, that are persisted in the cluster and used by all
cluster nodes in preference to conflicting values from the node
elasticsearch.yaml files?

I understand that when an index is created it inherits index level settings
from the cluster node on which it is created, either the default values or
those defined in the elasticsearch.yaml file on that node.

After an index is created are its settings then persisted in the cluster
and completely independent of the index level settings on any cluster nodes
that hosts its shards/replicas?

In particular some specific examples

  1. If an index is created on a node with gateway set to local will it
    also use a local gateway on a node configured for FS gateway or is the node
    gateway configuration used?
  2. If an index is created on a node with index.compound_format=true
    (lucene compound file format) will its shards and replicas also use
    compound format on nodes with the default index.compound_format=false?

Is it possible to configure all ElasticSearch cluster nodes to load a
common config file from a shared file system directory or a URL location
via http?

Regards
Mauri


(system) #2