Centos 7 安裝系列(10):ES 8.6.2

<h3>ElasticSearch 部署</h3><ol><li>一、系統(tǒng)環(huán)境</li><li>二、解壓安裝</li><ul><li>2.1 解壓壓縮包</li><li>2.2 修改配置文件</li><li>2.3 添加操作用戶</li><li>2.4 啟動(dòng)</li><li>2.5 開(kāi)放端口</li><li>2.6 開(kāi)機(jī)自啟動(dòng)配置</li><li>2.7 設(shè)置用戶名密碼認(rèn)證</li></ul><li>三、總結(jié)</li></ol><p>
</p><h1>一、系統(tǒng)環(huán)境</h1><p>操作系統(tǒng):Centos 7
已配置環(huán)境:空</p><h1>二、解壓安裝</h1><h2>2.1 解壓壓縮包</h2><p>上傳壓縮包到/opt 目錄下</p><p>cd /opt
</p><p>解壓并創(chuàng)建數(shù)據(jù)目錄</p><p>tar -zxvf elasticsearch-8.6.2-linux-x86_64.tar.gz
mv elasticsearch-8.6.2 elasticsearch
mkdir /opt/elasticsearch/data
</p><h2>2.2 修改配置文件</h2><p>cd /opt/elasticsearch/config/
cp elasticsearch.yml elasticsearch.yml.cp
vi elasticsearch.yml
</p><p>在文件末尾添加以下配置:</p><p>cluster.name: test-elasticsearch
node.name: es-node0
path.data: /opt/elasticsearch/data
path.logs: /opt/elasticsearch/logs
network.host: 0.0.0.0
cluster.initial_master_nodes: ["es-node0"]
</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-490b3f924d181be6.jpeg" img-data="{"format":"jpeg","size":20484,"height":250,"width":830}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><h2>2.3 添加操作用戶</h2><p>es不允許使用root用戶操作,需要單獨(dú)添加用戶,并給es 文件夾賦權(quán)</p><p>useradd es
chown -R es:es /opt/elasticsearch/
</p><h2>2.4 啟動(dòng)</h2><p>后臺(tái)啟動(dòng) ES</p><p>su es
cd /opt/elasticsearch/bin/
./elasticsearch -d
</p><p>此時(shí)沒(méi)法正常啟動(dòng)ES ,報(bào)錯(cuò)了。
</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-f27eade765cb454c.jpeg" img-data="{"format":"jpeg","size":40502,"height":205,"width":829}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p/><p>對(duì)于【max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]】
修改配置</p><p>exit
vi /etc/security/limits.conf
</p><p>在文件末尾添加以下內(nèi)容:</p><p>* soft nofile 65536

  • hard nofile 131072
  • soft nproc 2048
  • hard nproc 4096
    </p><p>對(duì)于【max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]】</p><p>vi /etc/sysctl.conf
    </p><p>添加以下內(nèi)容:</p><p> vm.max_map_count=262145
    </p><p>刷新配置后重啟ES</p><p>sysctl -p
    su es
    cd /opt/elasticsearch/bin/
    ./elasticsearch -d
    </p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-e0ecb47a26e3c531.jpeg" img-data="{"format":"jpeg","size":54870,"height":258,"width":829}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
    </div><h2>2.5 開(kāi)放端口</h2><p>因?yàn)榉阑饓﹂_(kāi)啟的緣故,需要開(kāi)放ES 的端口</p><p>exit
    firewall-cmd --zone=public --add-port=9200/tcp --permanent
    firewall-cmd --reload
    </p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-7877155d01d2e718.jpeg" img-data="{"format":"jpeg","size":15596,"height":140,"width":831}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
    </div><p>但是,此時(shí)訪問(wèn)es 還是會(huì)失敗。</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-6c6879d1f8f91ea0.jpeg" img-data="{"format":"jpeg","size":57308,"height":219,"width":830}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
    </div><p>再次查看配置文件,會(huì)發(fā)現(xiàn)配置文件中末尾多了些安全相關(guān)的配置</p><p>vi elasticsearch.yml
    </p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-02b3f577724b80e6.jpeg" img-data="{"format":"jpeg","size":55474,"height":651,"width":830}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
    </div><p>修改以下內(nèi)容:</p><p>xpack.security.enabled: false
    </p><p>關(guān)閉es ,重新啟動(dòng)</p><p>ps -ef|grep elastic
    kill 2896
    </p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-0386f9168ce46a41.jpeg" img-data="{"format":"jpeg","size":36953,"height":162,"width":831}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
    </div><p>su es
    cd /opt/elasticsearch/bin/
    ./elasticsearch -d
    </p><p>此時(shí)訪問(wèn)ES ,正常。</p><blockquote><p>訪問(wèn)地址: http://192.168.88.159:9200/
    健康檢查:
    http://192.168.88.159:9200/_cluster/health?pretty=true
    集群詳細(xì)信息:
    http://192.168.88.159:9200/_cluster/state?pretty</p></blockquote><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-e40c0767dbfd60bb.jpeg" img-data="{"format":"jpeg","size":45751,"height":582,"width":830}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
    </div><h2>2.6 開(kāi)機(jī)自啟動(dòng)配置</h2><p>查看當(dāng)前的開(kāi)機(jī)啟動(dòng)服務(wù)</p><p>chkconfig --list
    </p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-9502f77c2ff8238d.jpeg" img-data="{"format":"jpeg","size":34924,"height":267,"width":831}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
    </div><p>在/etc/init.d目錄下創(chuàng)建啟動(dòng)文件</p><p>exit;
    vi /etc/init.d/elasticsearch
    </p><p>添加內(nèi)容如下</p><p>#!/bin/bash

chkconfig: 2345 63 37

description: elasticsearch

processname: elasticsearch-8.6.2

export ES_HOME=/opt/elasticsearch
case 1 in start) su es&lt;&lt;! cdES_HOME
./bin/elasticsearch -d -p pid
exit
!
echo "elasticsearch is started"
;;
stop)
##也可以根據(jù)ps命令獲取elasticsearch進(jìn)程的pid
##es_pid=ps aux|grep elasticsearch | grep -v 'grep elasticsearch' | awk '{print $2}'
##kill -9 $es_pid

            pid=`cat $ES_HOME/pid`
            kill -9 $pid
            echo "elasticsearch is stopped"
            ;;
    restart)
            pid=`cat $ES_HOME/pid`
            kill -9 $pid
            echo "elasticsearch is stopped"
            sleep 1
            su es&lt;&lt;!
            cd $ES_HOME
            ./bin/elasticsearch -d -p pid
            exit

!
echo "elasticsearch is started"
;;
)
echo "start|stop|restart"
;;
esac
exit 0
</p><p>注意??:
1、腳本中自動(dòng)完成了用戶的切換,在es 用戶下啟動(dòng) ES
2、采用 ./bin/elasticsearch -d -p pid 命令啟動(dòng),會(huì)在目錄下生成 pid 文件,服務(wù)stop 時(shí)可以直接讀取pid 文件獲取pid 。
說(shuō)明:
每個(gè)被 chkconfig 管理的服務(wù)需要在對(duì)應(yīng)的 init.d 下的腳本加上兩行或者更多行的注釋。
第一行告訴 chkconfig 缺省啟動(dòng)的運(yùn)行級(jí)以及啟動(dòng)和停止的優(yōu)先級(jí)。如果某服務(wù)缺省不在任何運(yùn)行級(jí)啟動(dòng),那么使用 - 代替運(yùn)行級(jí)。
第二行對(duì)服務(wù)進(jìn)行描述,可以用 \ 跨行注釋。
#chkconfig: 2345 63 37 指的是指定 kibana 服務(wù)在 2、3、4、5的 level 等級(jí)下腳本執(zhí)行順序是63,1、6的 level 等級(jí)下腳本執(zhí)行順序是37。</p><p>增加腳本的可執(zhí)行權(quán)限</p><p>chmod +x /etc/init.d/elasticsearch
</p><p>把 ES 服務(wù)添加到 chkconfig 列表</p><p>chkconfig --add elasticsearch
</p><p>設(shè)置 ES 服務(wù)自啟動(dòng)</p><p>chkconfig elasticsearch on
</p><p>查看 ES 服務(wù)自啟動(dòng)狀態(tài)</p><p>chkconfig --list elasticsearch
</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-2468cf29d9251be7.jpeg" img-data="{"format":"jpeg","size":23288,"height":200,"width":830}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>如果2~5都是on,就表明會(huì)自動(dòng)啟動(dòng)了</p><blockquote><p>服務(wù)啟動(dòng)
service elasticsearch start
服務(wù)停止
service elasticsearch stop
服務(wù)重啟
service elasticsearch restart</p></blockquote><h2>2.7 設(shè)置用戶名密碼認(rèn)證</h2><p>注意:因?yàn)?ES 已經(jīng)啟動(dòng),且不是使用上面腳本的命令啟動(dòng),故而想要使用上面三條命令,需得先關(guān)閉原本的 ES 程序。
ps -ef|grep elastic
kill 3142
</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-dac76bed4278105a.jpeg" img-data="{"format":"jpeg","size":36466,"height":169,"width":830}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p/><p>啟動(dòng) ES</p><p>service elasticsearch start
</p><p>修改配置</p><p>vi /opt/elasticsearch/config/elasticsearch.yml
</p><p>修改以下內(nèi)容</p><blockquote><p>xpack.security.enabled: true
http.cors.enabled: true
http.cors.allow-origin: “

http.cors.allow-headers: Authorization</p></blockquote><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-338e1375ef4fa97e.jpeg" img-data="{"format":"jpeg","size":50766,"height":500,"width":830}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>重置 ES 中用戶elastic 的密碼:</p><p>service elasticsearch restart
cd /opt/elasticsearch/bin/
./elasticsearch-reset-password -u elastic
y
</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-5e00c78aa10e9053.jpeg" img-data="{"format":"jpeg","size":21519,"height":174,"width":831}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>此時(shí)訪問(wèn) http://192.168.88.159:9200/ 會(huì)沒(méi)有響應(yīng),需要將 http 改為 https ,或者修改配置禁用ssl :</p><p>vi elasticsearch.yml
</p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/12348461-7ed6cb21f00cf1e9.jpeg" img-data="{"format":"jpeg","size":13189,"height":139,"width":595}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><h1>三、總結(jié)</h1><p>本文內(nèi)容:
在空白的 Centos 7 系統(tǒng)中,安裝部署 ElasticSearch 8.6 ,同時(shí)設(shè)置開(kāi)機(jī)自啟和密碼安全策略。</p><p>我是陳冰安,在知識(shí)宇宙中摸爬滾打,分享個(gè)人所得,也期待志同道合。</p>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容