In this article, we will have explained the necessary steps to install and configure Elasticsearch on CentOS 7. Before continuing with this tutorial, make sure you are logged in as a user with sudo privileges. All the commands in this tutorial should be run as a non-root user.
Elasticsearch is a flexible and powerful open source, distributed real-time search and analytics engine. With Elasticsearch, you can store, search, and analyze big volumes of data faster and in near real time. Elasticsearch is generally used as the underlying engine/technology that powers applications that have complex search features and requirements.
Install Elasticsearch on CentOS
Step 1. The first command will update the package lists to ensure you get the latest version and dependencies.
sudo yum install epel-release sudo yum update
Step 2. Install Java.
Java is the primary requirement for installing Elasticsearch. You can install Java by executing the following command:
sudo yum install java-1.8.0-openjdk-devel
Verify the Java installation by printing the Java version:
java -version
Step 3. Install Elasticsearch.
First, add the Elasticsearch repository:
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Next, Open your text editor and create the following repo file:
sudo nano /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-6.x] name=Elasticsearch repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md
You can install Elasticsearch using the command below:
sudo yum install elasticsearch
Once the installation is done, you can start elasticsearch service by executing:
sudo systemctl enable elasticsearch.service sudo systemctl start elasticsearch.service
Step 4. Configure Elasticsearch.
You can customize this by editing the Elasticsearch configuration file. Edit configuration file in your favorite text editor and update the following values:
sudo nano /etc/elasticsearch/elasticsearch.yml
Change the following values:
network.host: 0.0.0.0 cluster.name: ES_Cluster_01 node.name: "Cluster_01_Node_001"
Restart the Elasticsearch service for the changes to take effect:
sudo systemctl restart elasticsearch
Step 5. Test Elasticsearch Setup.
You can verify that Elasticsearch is running by sending an HTTP request to port 9200 on localhost with the following curl command:
curl -X GET "localhost:9200/"
You should see something similar to this:
{ "name" : "kwEp0A2Q", "cluster_name" : "elasticsearch", "cluster_uuid" : "B-5B34LmailanaD3ww", "version" : { "number" : "6.6.6", "build_flavor" : "default", "build_type" : "deb", "build_hash" : "1fbmw69", "build_date" : "2019-08-13T17:10:46.160291Z", "build_snapshot" : false, "lucene_version" : "7.6.0", "minimum_wire_compatibility_version" : "5.8.0", "minimum_index_compatibility_version" : "5.1.0" }, "tagline" : "You Know, for Search" }
Congratulation, you have learned how to install and configure Elasticsearch on CentOS 7. If you have any question, please leave a comment below.