{"id":23774,"date":"2025-05-04T05:48:15","date_gmt":"2025-05-04T05:48:15","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=23774"},"modified":"2026-02-21T07:28:16","modified_gmt":"2026-02-21T07:28:16","slug":"install-and-configure-elasticsearch-step-by-step-guide","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/install-and-configure-elasticsearch-step-by-step-guide\/","title":{"rendered":"Install and Configure Elasticsearch: Step by Step Guide"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Install and Configure Elasticsearch in Linux<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Download and Extract Elasticsearch<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\">\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">https:<span class=\"hljs-comment\">\/\/www.elastic.co\/downloads\/elasticsearch<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-css-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">Run and Verify Elasticsearch 7.x<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\">\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">$ sudo yum install wget -y\n$ wget https:<span class=\"hljs-comment\">\/\/artifacts.elastic.co\/downloads\/elasticsearch\/elasticsearch-7.15.0-linux-x86_64.tar.gz<\/span>\n$ tar -zxvf elasticsearch<span class=\"hljs-number\">-7.15<\/span><span class=\"hljs-number\">.0<\/span>-linux-x86_64.tar.gz\n$ cd elasticsearch<span class=\"hljs-number\">-7.15<\/span><span class=\"hljs-number\">.0<\/span>\n$ .\/bin\/elasticsearch -d -p pid\n$ ps -eaf | grep elas<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-css-opacity\">\n\n\n\n<h3 class=\"wp-block-heading\">Run and Verify Elasticsearch 8.x<\/h3>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">Terminal<span class=\"hljs-comment\">#1<\/span>\n$ wget https:<span class=\"hljs-comment\">\/\/artifacts.elastic.co\/downloads\/elasticsearch\/elasticsearch-8.9.1-linux-x86_64.tar.gz<\/span>\n$ tar -zxvf elasticsearch<span class=\"hljs-number\">-8.9<\/span><span class=\"hljs-number\">.1<\/span>-linux-x86_64.tar.gz\n$ cd elasticsearch<span class=\"hljs-number\">-8.9<\/span><span class=\"hljs-number\">.1<\/span>\n$ ls config\/\n$ cd bin\n$ .\/elasticsearch\n\nTerminal<span class=\"hljs-comment\">#2<\/span>\n$ curl --cacert \/home\/ubuntu\/elasticsearch<span class=\"hljs-number\">-8.9<\/span><span class=\"hljs-number\">.1<\/span>\/config\/certs\/http_ca.crt -u elastic https:<span class=\"hljs-comment\">\/\/localhost:9200<\/span>\nEnter host password <span class=\"hljs-keyword\">for<\/span> user <span class=\"hljs-string\">'elastic'<\/span>:\n{\n  <span class=\"hljs-string\">\"name\"<\/span> : <span class=\"hljs-string\">\"ip-172-31-58-60\"<\/span>,\n  <span class=\"hljs-string\">\"cluster_name\"<\/span> : <span class=\"hljs-string\">\"elasticsearch\"<\/span>,\n  <span class=\"hljs-string\">\"cluster_uuid\"<\/span> : <span class=\"hljs-string\">\"dvbfb_NLS6qy1iuhc4yvKA\"<\/span>,\n  <span class=\"hljs-string\">\"version\"<\/span> : {\n    <span class=\"hljs-string\">\"number\"<\/span> : <span class=\"hljs-string\">\"8.9.1\"<\/span>,\n    <span class=\"hljs-string\">\"build_flavor\"<\/span> : <span class=\"hljs-string\">\"default\"<\/span>,\n    <span class=\"hljs-string\">\"build_type\"<\/span> : <span class=\"hljs-string\">\"tar\"<\/span>,\n    <span class=\"hljs-string\">\"build_hash\"<\/span> : <span class=\"hljs-string\">\"a813d015ef1826148d9d389bd1c0d781c6e349f0\"<\/span>,\n    <span class=\"hljs-string\">\"build_date\"<\/span> : <span class=\"hljs-string\">\"2023-08-10T05:02:32.517455352Z\"<\/span>,\n    <span class=\"hljs-string\">\"build_snapshot\"<\/span> : <span class=\"hljs-keyword\">false<\/span>,\n    <span class=\"hljs-string\">\"lucene_version\"<\/span> : <span class=\"hljs-string\">\"9.7.0\"<\/span>,\n    <span class=\"hljs-string\">\"minimum_wire_compatibility_version\"<\/span> : <span class=\"hljs-string\">\"7.17.0\"<\/span>,\n    <span class=\"hljs-string\">\"minimum_index_compatibility_version\"<\/span> : <span class=\"hljs-string\">\"7.0.0\"<\/span>\n  },\n  <span class=\"hljs-string\">\"tagline\"<\/span> : <span class=\"hljs-string\">\"You Know, for Search\"<\/span>\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">Run and Verify Elasticsearch 9.x<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">$ wget https:<span class=\"hljs-comment\">\/\/artifacts.elastic.co\/downloads\/elasticsearch\/elasticsearch-9.0.0-linux-x86_64.tar.gz<\/span>\n$ tar -zxvf elasticsearch<span class=\"hljs-number\">-9.0<\/span><span class=\"hljs-number\">.0<\/span>-linux-x86_64.tar.gz\n$ cd ubuntu\/elasticsearch<span class=\"hljs-number\">-9.0<\/span><span class=\"hljs-number\">.0<\/span>\n$ bin\/elasticsearch<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>ubuntu@ip-172-31-38-122:~$ curl &#8211;cacert \/home\/ubuntu\/elasticsearch-9.0.0\/config\/certs\/http_ca.crt -u elastic https:\/\/localhost:9200<br>Enter host password for user &#8216;elastic&#8217;:<br>{<br>&#8220;name&#8221; : &#8220;ip-172-31-38-122&#8221;,<br>&#8220;cluster_name&#8221; : &#8220;elasticsearch&#8221;,<br>&#8220;cluster_uuid&#8221; : &#8220;wN4YsWQpQYSMNhIq-dRrMQ&#8221;,<br>&#8220;version&#8221; : {<br>&#8220;number&#8221; : &#8220;9.0.0&#8221;,<br>&#8220;build_flavor&#8221; : &#8220;default&#8221;,<br>&#8220;build_type&#8221; : &#8220;tar&#8221;,<br>&#8220;build_hash&#8221; : &#8220;112859b85d50de2a7e63f73c8fc70b99eea24291&#8221;,<br>&#8220;build_date&#8221; : &#8220;2026-04-08T15:13:46.049795831Z&#8221;,<br>&#8220;build_snapshot&#8221; : false,<br>&#8220;lucene_version&#8221; : &#8220;10.1.0&#8221;,<br>&#8220;minimum_wire_compatibility_version&#8221; : &#8220;8.18.0&#8221;,<br>&#8220;minimum_index_compatibility_version&#8221; : &#8220;8.0.0&#8221;<br>},<br>&#8220;tagline&#8221; : &#8220;You Know, for Search&#8221;<br>}<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"462\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2023\/08\/image-810-1024x462.png\" alt=\"\" class=\"wp-image-49232\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2023\/08\/image-810-1024x462.png 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2023\/08\/image-810-300x135.png 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2023\/08\/image-810-768x346.png 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2023\/08\/image-810-1536x693.png 1536w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2023\/08\/image-810.png 1632w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Images for Elasticsearch Install Validation<\/h2>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-1 is-cropped wp-block-gallery-5 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-1.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"544\" data-id=\"23777\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-1-1024x544.jpg\" alt=\"\" class=\"wp-image-23777\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-1-1024x544.jpg 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-1-300x159.jpg 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-1-768x408.jpg 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-1.jpg 1089w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-2.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"819\" height=\"239\" data-id=\"23778\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-2.jpg\" alt=\"\" class=\"wp-image-23778\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-2.jpg 819w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-2-300x88.jpg 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-2-768x224.jpg 768w\" sizes=\"auto, (max-width: 819px) 100vw, 819px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-3.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"706\" height=\"316\" data-id=\"23779\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-3.jpg\" alt=\"\" class=\"wp-image-23779\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-3.jpg 706w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-3-300x134.jpg 300w\" sizes=\"auto, (max-width: 706px) 100vw, 706px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-4.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"295\" data-id=\"23780\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-4-1024x295.jpg\" alt=\"\" class=\"wp-image-23780\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-4-1024x295.jpg 1024w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-4-300x86.jpg 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-4-768x221.jpg 768w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-4.jpg 1354w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-5.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"940\" height=\"437\" data-id=\"23781\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-5.jpg\" alt=\"\" class=\"wp-image-23781\" srcset=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-5.jpg 940w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-5-300x139.jpg 300w, https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2021\/09\/elasticsearch-install-configure-5-768x357.jpg 768w\" sizes=\"auto, (max-width: 940px) 100vw, 940px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Install Elasticsearch with Docker<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\">\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">Pulling the image\nObtaining Elasticsearch <span class=\"hljs-keyword\">for<\/span> Docker is <span class=\"hljs-keyword\">as<\/span> simple <span class=\"hljs-keyword\">as<\/span> issuing a docker pull command against the Elastic Docker registry.\n$ docker pull docker.elastic.co\/elasticsearch\/elasticsearch:<span class=\"hljs-number\">7.15<\/span><span class=\"hljs-number\">.0<\/span>\n\nStarting a single node cluster <span class=\"hljs-keyword\">with<\/span> Docker\nTo start a single-node Elasticsearch cluster <span class=\"hljs-keyword\">for<\/span> development or testing, specify single-node discovery to bypass the bootstrap checks:\n$ docker run -p <span class=\"hljs-number\">9200<\/span>:<span class=\"hljs-number\">9200<\/span> -p <span class=\"hljs-number\">9300<\/span>:<span class=\"hljs-number\">9300<\/span> -e <span class=\"hljs-string\">\"discovery.type=single-node\"<\/span> docker.elastic.co\/elasticsearch\/elasticsearch:<span class=\"hljs-number\">7.15<\/span><span class=\"hljs-number\">.0<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-css-opacity\">\n\n\n\n<h2 class=\"wp-block-heading\">Elasticsearch Configuration file<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/github.com\/devopsschool-demo-labs-projects\/elasticsearch\/tree\/master\/elasticsearch-config-file\" target=\"_blank\" rel=\"noreferrer noopener\">Location <\/a><\/li>\n<\/ul>\n\n\n\n<script src=\"https:\/\/gist.github.com\/devops-school\/e82459e4c9a5ce0e3b4bd794008f241f.js\"><\/script>\n","protected":false},"excerpt":{"rendered":"<p>Install and Configure Elasticsearch in Linux Download and Extract Elasticsearch Run and Verify Elasticsearch 7.x Run and Verify Elasticsearch 8.x Run and Verify Elasticsearch 9.x ubuntu@ip-172-31-38-122:~$ curl &#8211;cacert \/home\/ubuntu\/elasticsearch-9.0.0\/config\/certs\/http_ca.crt -u&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[5936],"tags":[],"class_list":["post-23774","post","type-post","status-publish","format-standard","hentry","category-elastic"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/23774","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=23774"}],"version-history":[{"count":13,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/23774\/revisions"}],"predecessor-version":[{"id":58967,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/23774\/revisions\/58967"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=23774"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=23774"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=23774"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}