[[modules]]
= Modules

[partintro]
--
This section contains modules responsible for various aspects of the functionality in Elasticsearch.  Each module has settings which may be:

_static_::

These settings must be set at the node level, either in the
`elasticsearch.yml` file, 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.

_dynamic_::

These settings can be dynamically updated on a live cluster with the
<<cluster-update-settings,cluster-update-settings>> API.

The modules in this section are:

<<modules-discovery,Discovery and cluster formation>>::

    How nodes discover each other, elect a master and form a cluster.

<<modules-cluster,Shard allocation and cluster-level routing>>::

    Settings to control where, when, and how shards are allocated to nodes.
--


include::modules/discovery.asciidoc[]

include::modules/cluster.asciidoc[]