Directory overview:
- Elastisearch
- bin (There are bunch of different helper utilities here)
- elasticsearch (Used to run Elasticsearch)
- elasticsearch-certgen
- elasticsearch-cerutil
- elasticsearch-cli
- elasticsearch-croneval
- elasticsearch-env
- elasticsearch-keystore
- elasticsearch-migrate
- elasticsearch-node
- elasticsearch-plugin
- elasticsearch-saml-metadata
- elasticsearch-setup-passwords
- elasticsearch-shard
- elasticsearch-sql-cli**
- elasticsearch-syskeygen
- elasticsearch-users
- x-pack-env
- x-pack-security-env
- x-pack-watcher-env
- config (This directory stores a number of configuration files)
- elasticsearch.keystore
- elasticsearch.yml (The main configuration file)
- jvm.options
- log4j2.properties (Configuration for logging)
- role_mapping.yml
- roles.yml
- users
- users_roles
- data (Stores data of the node)
- jdk (Contains jdk that uses to run)
- libs (The directory contains a number of dependencies that Elasticsearch needs)
- logs (Output directory for logs files)
- modules (Contains a number of built-in modules for additional functionality)
- plugins (Empty by default, after installation they will contain plugins)
- bin (There are bunch of different helper utilities here)
Difference between modules and plugins are that a module provided as a built-in functionality of Elasticsearch, a plugin provided extensions of third-party company. Plugins can be removed, but modules cannot.
Environment variable $ES_HOME points to the root of the Elasticsearch directory.