elasticsearch集群安裝部署

一、安裝部署

1.前期準(zhǔn)備
安裝JDK版本
服務(wù)器執(zhí)行:
yum install -y java-1.8.0-openjdk-devel
echo $JAVA_HOME  #檢測默認(rèn)jdk環(huán)境是不是1.8版本,如果不是自行百度。

增加服務(wù)器參數(shù)
vim /etc/sysctl.conf 
vm.max_map_count=655360
sysctl -p
2.從官網(wǎng)下載包
官網(wǎng)下載頁傳送門:http://www.elastic.co/downloads/elasticsearch
目前官網(wǎng)已經(jīng)更新到6.2.3,但是本次安裝的版本為5.5.2
可以直接點(diǎn)擊[past releases](http://www.elastic.co/downloads/past-releases)找到過去的版本
安裝方式說明:
目前官網(wǎng)提供了好幾種包:zip,tar,rpm。
無論是哪種安裝方式都可以,rpm直接安裝也比較方便,但是我需要定制化安裝,果斷下載zip包
服務(wù)器上執(zhí)行:
cd /opt/  && wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.2.zip
3.修改文件
找到下載的包解壓:
cd /opt/
unzip elasticsearch-5.5.2.zip &&  cd elasticsearch-5.5.2
elasticsearch的目錄結(jié)構(gòu)大致為:
image.png
bin目錄放啟動腳本,安裝插件腳本
config目錄放主配置文件和jvn啟動參數(shù)配置,以及l(fā)og4j文件,如果下載插件,默認(rèn)也會在里面放置配置文件。
lib目錄放置庫文件,modules放置模塊,plugins放插件
我們主要做的就是修改配置文件和腳本
修改主配置文件
vim config/elasticsearch.yml
cluster.name: test_cluster                    # 集群名稱
node.name: els1                                        # 節(jié)點(diǎn)名稱,僅僅是描述名稱,用于在日志中區(qū)分
path.data: /var/lib/elasticsearch                 # 數(shù)據(jù)的默認(rèn)存放路徑
path.logs: /var/log/elasticsearch                # 日志的默認(rèn)存放路徑
network.host: 172.18.68.11                       # 當(dāng)前節(jié)點(diǎn)的IP地址
http.port: 9200                                           # 對外提供服務(wù)的端口,9300為集群服務(wù)的端口
discovery.zen.ping.unicast.hosts: ["172.18.68.11", "172.18.68.12","172.18.68.13"]       # 集群個節(jié)點(diǎn)IP地址,,可用域名
discovery.zen.minimum_master_nodes: 2       # 為了避免腦裂,集群節(jié)點(diǎn)數(shù)最少為 半數(shù)+1
注意!??!
集群配置中最重要的兩項是node.name與network.host,每個節(jié)點(diǎn)都必須不同。
其中node.name是節(jié)點(diǎn)名稱主要是在Elasticsearch自己的日志加以區(qū)分每一個節(jié)點(diǎn)信息。
以上的幾個配置項為必須修改的選項,否則啟動的時候會有各種各樣的問題,建議根據(jù)實際情況,全部修改。```

修改啟動文件
不過其中還是有兩項最重要的-Xmx1g與-Xms1gJVM的最大最小內(nèi)存。          
如果太小會導(dǎo)致Elasticsearch剛剛啟動就立刻停止。太大會拖慢系統(tǒng)本身
官方建議是盡量不要修改其他啟動項,除非你有特殊需求。
vim config/jvm.options
-Xms1g                                                  # JVM最大、最小使用內(nèi)存
-Xmx1g
本人服務(wù)器內(nèi)存為32g,分配了2G。
修改啟動腳本
vim bin/elasticsearch
JAVA_HOME="/export/servers/jdk1.8.0_60"  #這里的JAVA_HOME路徑為你安裝jdk版本的路徑
JAVA_OPTS=""

JAVA_OPTS配置為空,是為了不受系統(tǒng)配置的環(huán)境變量的影響,由于踩過坑所以建議這么做。
OK,至此全部修改完畢。
4.啟動
創(chuàng)建用戶,更改目錄權(quán)限
新版本不允許用root啟動,所以需要創(chuàng)建其他用戶來啟動,如果你一定要root啟動,做以下更改
對于5.X版本,在config/jvm.options配置文件中,添加-Des.insecure.allow.root=true
非root用戶啟動
groupadd elasticsearch
useradd -g elasticsearch elasticsearch
passwd elasticsearch
chown -R elasticsearch. /opt/elasticsearch-5.5.2
#啟動命令
sh /opt/elasticsearch-5.5.2/bin/elasticsearch -d
#停止命令
 ps -ef |grep /opt/elasticsearch-5.5.2 |grep -v 'grep'|awk '{print $2}'|xargs kill -9
本人寫了個一個簡單的腳本放在bin目錄,可以直接進(jìn)行啟動,停止,重啟操作,可自行修改使用。
#!/bin/bash
cd `dirname $0`
BIN_DIR=`pwd`
#啟動腳本目錄
StartES=/opt/elasticsearch-5.5.2/bin/elasticsearch
# 日志輸出

start()
{
        echo "*****************************************"
        echo "*** elasticsearch-132 starting action ***"
        echo "*****************************************"
        sh $StartES -d
}

stop()
{
        echo "*****************************************"
        echo "*** elasticsearch-132 stoping  action ***"
        echo "*****************************************"
        `ps -ef |grep /opt/elasticsearch-5.5.2 |grep -v 'grep'|awk '{print $2}'|xargs kill -9`
}


restart(){
        stop
        sleep 3
        start
}

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  ?|help)
        echo $"Usage: $0 {start|stop|restart|help|?}"
        ;;
  *)
        restart
esac
##腳本名稱隨意命名

二、插件安裝

目前插件安裝分為在線安裝和離線安裝
**離線安裝:**
先去下載對應(yīng)插件版本的zip包,解析到`/opt/elasticsearch-5.5.2/plugins/`下,重啟你的ES
**在線安裝:**
到elasticsearch安裝的bin目錄下面執(zhí)行腳本,此處舉例安裝elasticsearch-analysis-ik插件
./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.1.1/elasticsearch-analysis-ik-6.1.1.zip
然后重啟ES即可。

三、報錯排查

can not run elasticsearch as root
#請看啟動區(qū)域教程,要么修改配置文件允許root運(yùn)行,要么就創(chuàng)建新用戶,更改文件夾權(quán)限
error='Cannot allocate memory'
#jvm配置文件中jvm空間大小需要修改,具體修改看服務(wù)器情況
max file descriptors [65535] for elasticsearch process likely too low, increase to at least [65536]
#請看文章開頭的安裝前準(zhǔn)備,需要優(yōu)化系統(tǒng)參數(shù)

參考文章
http://www.elastic.co/products/elasticsearch
https://www.cnblogs.com/aubin/p/8012840.html
https://blog.csdn.net/u011499747/article/details/78917718
https://blog.csdn.net/deardreaming/article/details/52785595

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

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