A production Elasticsearch node rarely relies entirely on defaults. Use elasticsearch.yml to define cluster and node information, data and log paths, network details, and security settings before deployment. section 14.5 section 14.5.1
The file belongs to Elasticsearch’s configuration layout:
- Elasticsearch reads it from the config directory under the installation directory. section 14.5
- Binary installations default to $ES_HOME/config; Debian and RPM installations default to /etc/elasticsearch/config. section 14.5
- Set and export ES_PATH_CONF when configuration files must reside elsewhere. section 14.5
Change the HTTP and internal transport ports
http.port: 9900 transport.port: <internal-node-port> The first setting changes the Elasticsearch client-facing port from the default 9200 to 9900. The second changes the port used for internal node communication. section 14.5.1
Treat elasticsearch.yml as one part of the configuration surface: log levels belong in log4j2.properties, while heap memory belongs in jvm.options. Consult detailed property documentation when tuning less common settings. section 14.5
