This section contains modules responsible for various aspects of the functionality in Elasticsearch. Each module has settings which may be:
These settings must be set at the node level, either in the
elasticsearch.ymlfile, or as an environment variable or on the command line when starting a node. They must be set on every relevant node in the cluster.
- These settings can be dynamically updated on a live cluster with the cluster-update-settings API.
The modules in this section are:
- Cluster-level routing and shard allocation
- Settings to control where, when, and how shards are allocated to nodes.
- How nodes discover each other to form a cluster.
- How many nodes need to join the cluster before recovery can start.
- Settings to control the HTTP REST interface.
- Global index-related settings.
- Controls default network settings.
- Node client
- A Java node client joins the cluster, but doesn’t hold data or act as a master node.
- A built-in scripting language for Elasticsearch that’s designed to be as secure as possible.
- Using plugins to extend Elasticsearch.
- Custom scripting available in Lucene Expressions, ad Groovy. You can also write scripts in the built-in scripting language, Painless.
- Backup your data with snapshot/restore.
- Thread pools
- Information about the dedicated thread pools used in Elasticsearch.
- Configure the transport networking layer, used internally by Elasticsearch to communicate between nodes.
- Tribe nodes
- A tribe node joins one or more clusters and acts as a federated client across them.
- Cross cluster Search
- Cross cluster search enables executing search requests across more than one cluster without joining them and acts as a federated client across them.