# elasticsearch-cluster-runner
**Repository Path**: mirrors_codelibs/elasticsearch-cluster-runner
## Basic Information
- **Project Name**: elasticsearch-cluster-runner
- **Description**: Elasticsearch Cluster Launcher on One JVM Instance
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-08-08
- **Last Updated**: 2026-07-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
Elasticsearch Cluster Runner
[](https://github.com/codelibs/elasticsearch-cluster-runner/actions/workflows/maven.yml)
============================
This project runs Elasticsearch cluster on one JVM instance for your development/testing easily.
You can use Elasticsearch Cluster Runner as Embedded Elasticsearch in your application.
## Version
- [Versions in Maven Repository (7.11-)](https://maven.codelibs.org/org/codelibs/elasticsearch-cluster-runner/)
- [Versions in Maven Repository (-7.10)](https://repo1.maven.org/maven2/org/codelibs/elasticsearch-cluster-runner/)
## Run on Your Application
Put elasticsearch-cluster-runner if using Maven:
org.codelibs
elasticsearch-cluster-runner
x.x.x.0
and add Maven repository to pom.xml:
central
https://repo1.maven.org/maven2
true
true
codelibs.org
CodeLibs Repository
https://maven.codelibs.org/
### Start Cluster Runner
import static org.codelibs.elasticsearch.runner.ElasticsearchClusterRunner.newConfigs;
...
// create runner instance
ElasticsearchClusterRunner runner = new ElasticsearchClusterRunner();
// create ES nodes
runner.onBuild(new ElasticsearchClusterRunner.Builder() {
@Override
public void build(final int number, final Builder settingsBuilder) {
// put elasticsearch settings
// settingsBuilder.put("index.number_of_replicas", 0);
}
}).build(newConfigs());
build(Configs) method configures/starts Clsuter Runner.
### Stop Cluster Runner
// close runner
runner.close();
### Clean up
// delete all files(config and index)
runner.clean();
## Run on JUnit
Put elasticsearch-cluster-runner as test scope:
org.codelibs
elasticsearch-cluster-runner
x.x.x.0
test
and see [ElasticsearchClusterRunnerTest](https://github.com/codelibs/elasticsearch-cluster-runner/blob/master/src/test/java/org/codelibs/elasticsearch/runner/ElasticsearchClusterRunnerTest.java "ElasticsearchClusterRunnerTest").
## Run as Standalone
### Install Maven
Download and install Maven 3 from https://maven.apache.org/.
### Clone This Project
git clone https://github.com/codelibs/elasticsearch-cluster-runner.git
### Build This Project
mvn compile
## Run/Stop Elasticsearch Cluster
### Run Cluster
Run:
mvn exec:java
The default cluster has 3 nodes and the root directory for Elasticsearch is es\_home.
Nodes use 9201-9203 port for HTTP and 9301-9303 port for Transport.
If you want to change the number of node, Run:
mvn exec:java -Dexec.args="-basePath es_home -numOfNode 4"
### Stop Cluster
Type Ctrl-c or kill the process.