How To Install Elasticsearch on CentOS 8

Install Elasticsearch on CentOS 8

In this tutorial, we will show you how to install Elasticsearch on your CentOS 8. For those of you who didn’t know, Elasticsearch is a flexible and powerful open-source, distributed real-time search and analytics engine. It supports RESTful operations and allows you to store, search, and analyze big volumes of data in real-time. Elasticsearch is one of the most popular search engines powering applications that have complex search requirements such as big e-commerce stores and analytic applications.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo’ to the commands to get root privileges. I will show you through the step by step installation Elasticsearch on a CentOS 8 server.

Install Elasticsearch on CentOS 8

Step 1. First, let’s start by ensuring your system is up-to-date.

sudo dnf update

Step 2. Installing Java.

Run these commands to install the Java on CentOS:

sudo dnf install java-11-openjdk-devel

Verify the Java installation by running the following command which will print the Java version:

java -version

Step 3. Installing Elasticsearch on CentOS.

First, add its repository to your system:

cat <<EOF | sudo tee /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/oss-7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

And your repository is ready for use. You can now install Elasticsearch with one of the following commands:

sudo dnf update
sudo dnf install elasticsearch

Elasticsearch service will not start automatically after the installation process is complete. To start the service and enable the service run:

sudo systemctl enable --now elasticsearch.service
sudo systemctl start --now elasticsearch.service

Step 4. Configure Elasticsearch.

We have an active installation for Elasticsearch now. To use Elasticsearch effectively, we can some important changes to the configuration. Run the following command to open the ES config file:

sudo nano /etc/elasticsearch/elasticsearch.yml

Change the following values:

network.host: 0.0.0.0
cluster.name: ES_Cluster_046
node.name: "Cluster_01_Node_0046"

Restart the Elasticsearch service for the changes to take effect:

sudo systemctl restart --now elasticsearch.service

Step 5. Test Elasticsearch.

The Elasticsearch service is ready to use. You can test it using curl command-line utility. Run the simple GET command using curl to verify the setup. You will see the Elasticsearch cluster details with the version on your screen:

curl -X GET "localhost:9200/"

You should see something similar to this:

{
  "name" : "kwEpBMW",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "B-5B34ramonaeIYwSgD3kimpoiww",
  "version" : {
    "number" : "6.6.1",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "1fd8f69",
    "build_date" : "2020-07-05T17:18:46.160861Z",
    "build_snapshot" : false,
    "lucene_version" : "7.9.0",
    "minimum_wire_compatibility_version" : "5.7.0",
    "minimum_index_compatibility_version" : "5.8.0"
  },
  "tagline" : "You Know, for Search"
}

Congratulations! You have successfully installed Elasticsearch. Thanks for using this tutorial for installing Elasticsearch on your CentOS 8 system. For additional help or useful information, we recommend you to check the official Elasticsearch website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!