How to Install Elasticsearch on Debian 11
Elasticsearch is a distributed, free and open search and analytics engine for all types of data, including textual, numerical, geospatial, structured, and unstructured. Elasticsearch is built on Apache Lucene and was first released in 2010 by Elasticsearch N.V. (now known as Elastic). Known for its simple REST APIs, distributed nature, speed, and scalability, Elasticsearch is the central component of the Elastic Stack, a set of free and open tools for data ingestion, enrichment, storage, analysis, and visualization. Commonly referred to as the ELK Stack (after Elasticsearch, Logstash, and Kibana), the Elastic Stack now includes a rich collection of lightweight shipping agents known as Beats for sending data to Elasticsearch.
To install Elasticsearch on Debian, start by updating your system:
$ sudo apt-get update && sudo apt-get upgrade
Install the official Elastic APT package signing key:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
Install the apt-transport-https
package, which is required to retrieve deb packages served over HTTPS:
sudo apt-get install apt-transport-https
Add the APT repository information to your server’s list of sources:
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
Update the list of available packages:
sudo apt-get update
Install the elasticsearch
package:
sudo apt-get install -y elasticsearch
Set the JVM heap size to approximately half of your server’s available memory. For example, if your server has 1GB of RAM, change the Xms
and Xmx
values in the /etc/elasticsearch/jvm.options
file to 512m
. Leave the other values in this file unchanged:
sudo nano /etc/elasticsearch/jvm.options
-Xms512m
-Xmx512m
Enable and start the elasticsearch
service:
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch
Wait a few moments for the service to start, then confirm that the Elasticsearch API is available:
curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:9200
The Elasticsearch REST API should return a JSON response similar to the following:
{
"name" : "Cp8oag6",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "AT69_T_DTp-1qgIJlatQqA",
"version" : {
"number" : "8.3.2",
"build_type" : "tar",
"build_hash" : "f27399d",
"build_flavor" : "default",
"build_date" : "2016-03-30T09:51:41.449Z",
"build_snapshot" : false,
"lucene_version" : "9.2.0",
"minimum_wire_compatibility_version" : "1.2.3",
"minimum_index_compatibility_version" : "1.2.3"
},
"tagline" : "You Know, for Search"
}
To determine whether or not the service has started successfully, check the status
systemctl status elasticsearch
Closing
And that;s it for this one. Using this article, you have successfully installed Elasticsearch on your Debian 11 system.
Thanks for reading!!