Architecture
Elasticsearch operates as a distributed system with the following key components:
-
Cluster: A collection of one or more nodes that together hold your entire data
-
Node: A single server that is part of your cluster, stores data, and participates in indexing and search capabilities
-
Index: A collection of documents with similar characteristics
-
Shard: A subset of an index that can be distributed across multiple nodes
-
Replica: A copy of a shard that provides redundancy and increases search capacity
System Requirements
Hardware Requirements
-
Memory: Minimum 8GB RAM, recommended 32GB+ for production
-
CPU: Multi-core processors recommended (4+ cores)
-
Storage: SSD storage highly recommended for production workloads
-
Network: Gigabit network connectivity for multi-node clusters
Software Requirements
-
Operating System: Linux (Ubuntu 20.04+, CentOS 8+, RHEL 8+), macOS, Windows
-
Java: OpenJDK 21 or Oracle JDK 21 (bundled with Elasticsearch)
-
Available Ports: 9200 (HTTP), 9300 (transport)