OpenSearch is a tool used for search and monitoring purposes, like log analysis, real-time monitoring, and observability. It is an open-source community-driven project developed by the OpenSearch software foundation, which was founded by AWS along with many other companies.
Here in this tutorial, I will tell you how to install and configure OpenSearch on Ubuntu 24. You can also use Zabbix for the same, and here is a complete guide to install and configure Zabbix on Ubuntu. Before installing, let’s first take a look at the features offered by OpenSearch.
In this tutorial, you will learn
- Features of OpenSearch
- How to Install OpenSearch on Ubuntu 24?
- Prerequisites
- Step 1 – Updating System and Repository
- Step 2 – Install Dependencies and Add OpenSearch Repository
- Step 3 – Install OpenSearch
- Step 4 – Configure OpenSearch
- Step 5 – Configure OpenSearch admin password
- Step 6 – Enable, Start, and Test the OpenSearch Service
- Step 7 – Installing OpenSearch Dashboard
- Step 8 – Configuring Firewall
- Step 9 – Access from browser
- Conclusion
Features of OpenSearch
- Performance Improvements – OpenSearch enhances the query execution and indexing. This results in better performance for queries.
- Highly Secure – OpenSearch offers built-in security features like encryption, authorization, and authentication.
- Better Observability – It offers better monitoring features along with many alerting features. So, you don’t have to wait for any failures.
- OpenSearch Dashboard – OpenSearch comes with a dashboard for the visualization of data using various parameters.
How to Install OpenSearch on Ubuntu 24?
Now, let’s begin installing OpenSearch 3.x on Ubuntu 24.
Prerequisites
- An Ubuntu 24 server with at least 8GB of RAM. For the production server, you must have 16GB RAM. Make sure that the initial server configuration has already been done.
- A user with sudo privileges.
Step 1 – Updating System and Repository
The first step is to update the system and repository. Execute the command given below
# sudo apt update
# sudo apt upgrade -yStep 2 – Install Dependencies and Add OpenSearch Repository
The second step is to install the required dependencies and then add the OpenSearch repository.
# sudo apt install lsb-release ca-certificates curl gnupg2 -yNow, let’s add the OpenSearch repository
# sudo mkdir -p /usr/share/keyrings
# curl -fsSL https://artifacts.opensearch.org/publickeys/opensearch.pgp | sudo gpg --dearmor -o /usr/share/keyrings/opensearch-release-keyring.gpg
# echo "deb [signed-by=/usr/share/keyrings/opensearch-release-keyring.gpg] https://artifacts.opensearch.org/releases/bundle/opensearch/3.x/apt stable main" | sudo tee /etc/apt/sources.list.d/opensearch-3.x.listNow update the packages
# sudo apt updateNow you can check the list of OpenSearch packages available to install using
# sudo apt list -a opensearchOutput
opensearch/stable 3.2.0 amd64
opensearch/stable 3.1.0 amd64
opensearch/stable 3.0.0 amd64Step 3 – Install OpenSearch
The third Step is to install OpenSearch.
# sudo apt install opensearch -yStep 4 – Configure OpenSearch
The fourth step is to make the required configurations to the OpenSearch yml file.
# sudo nano /etc/opensearch/opensearch.ymlMake the changes to the mentioned parameters
cluster.name: opensearch-app
node.name: opensearch-node
network.host: 0.0.0.0
http.port: 9100
discovery.type: single-nodeStep 5 – Configure OpenSearch admin password
In the fifth step, let’s configure the admin password for OpenSearch.
# sudo /usr/share/opensearch/plugins/opensearch-security/tools/hash.sh -pYou will get output something like
$2y$12$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxCopy it and keep it aside
Note: The tool may output a hash starting with “$2y$“, but OpenSearch uses “$2a$“. They are compatible, so you can safely use the generated hash in the configuration file. so just replace “y” with “a” in the copied hash.
Now open .yml file
# sudo nano /etc/opensearch/opensearch-security/internal_users.ymlFind the “admin” section and update as shown below
admin:
hash: "$2a$12$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
reserved: true
backend_roles:
"admin"
description: "Admin user"Step 6 – Enable, Start, and Test the OpenSearch Service
Now, let’s enable and start the OpenSearch Service
# sudo systemctl enable opensearch
# sudo systemctl start opensearchNow, let’s check if the OpenSearch service is working
# sudo systemctl status opensearchYou should see something like this
● opensearch.service - OpenSearch
Loaded: loaded (/usr/lib/systemd/system/opensearch.service; enabled; preset: enabled)
Active: active (running)
Docs: https://opensearch.org/
Main PID: 3425 (java)
Tasks: 55 (limit: 4548)
Memory: 1.3G (peak: 1.3G)
CPU: 1min 5.442s
CGroup: /system.slice/opensearch.serviceNow, let’s test the OpenSearch service
# curl -X GET https://localhost:9100 -u 'admin:' --insecureYou must see a JSON response as shown below
{
"name" : "opensearch-node",
"cluster_name" : "opensearch-app",
"cluster_uuid" : "pXKj1z87S3SnuJ7fjVs-TQ",
"version" : {
"distribution" : "opensearch",
"number" : "3.2.0",
"build_type" : "deb",
"build_hash" : "6adc0bf476e1624190564d7fbe4aba00ccf49ad8",
"build_date" : "2025-08-12T03:54:00.119899934Z",
"build_snapshot" : false,
"lucene_version" : "10.2.2",
"minimum_wire_compatibility_version" : "2.19.0",
"minimum_index_compatibility_version" : "2.0.0"
},
"tagline" : "The OpenSearch Project: https://opensearch.org/"
}Step 7 – Installing OpenSearch Dashboard
As OpenSearch offers dashboard features, you can install the OpenSearch Dashboard
# echo "deb [signed-by=/usr/share/keyrings/opensearch-release-keyring.gpg] https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/3.x/apt stable main" | sudo tee /etc/apt/sources.list.d/opensearch-dashboards-3.x.list
# sudo apt updateNow, let’s install OpenSearch Dashboard
# sudo apt install opensearch-dashboards -yNow, let’s configure the dashboard
# sudo nano /etc/opensearch-dashboards/opensearch_dashboards.ymlUpdate the following parameters as given below
server.host: "0.0.0.0"
opensearch.hosts: ["http://localhost:9100"]Now, let’s enable and start the services
# sudo systemctl enable opensearch-dashboards
# sudo systemctl start opensearch-dashboardsStep 8 – Configuring Firewall
The final step is to configure the UFW firewall
# sudo ufw allow 9100/tcp
# sudo ufw allow 5601/tcp
# sudo ufw enableStep 9 – Access from browser
Now just access the OpenSearch dashboard by entering “http://your-server-ip:5601” on any browser and login with the login ID as “admin” and the password that you have configured in step 6, in the “your-admin-password” field.
Conclusion
With this, we have successfully configured OpenSearch 3.x on Ubuntu 24.
Leave a Reply