溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

elasticsearch-2.1.1集群搭建的示例分析

發(fā)布時(shí)間:2021-11-16 15:55:27 來(lái)源:億速云 閱讀:173 作者:小新 欄目:MySQL數(shù)據(jù)庫(kù)

這篇文章主要為大家展示了“elasticsearch-2.1.1集群搭建的示例分析”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“elasticsearch-2.1.1集群搭建的示例分析”這篇文章吧。


elasticsearch3.x發(fā)布有一段時(shí)間了,抽空把集群搭起來(lái),做點(diǎn)實(shí)驗(yàn)
-------------------------------------------------------------------------------------正文------------------------------------------------------------------------------------
elasticsearch2.7的搭建非常簡(jiǎn)單,只需要把tar.gz的包下載到linux服務(wù)器上解壓縮,然后在bin目錄下啟動(dòng)es即可,
集群的搭建也非常簡(jiǎn)單,保證cluster_name一致, node_name不一致就好了,
可以在同一個(gè)網(wǎng)段自動(dòng)發(fā)現(xiàn)新節(jié)點(diǎn),也可以在配置文件的discovery.zen.ping.unicast.hosts屬性中指定集群的節(jié)點(diǎn)IP;

----------------------------------------------------------------------------------接下來(lái)開始填坑------------------------------------------------------------------------------
啟動(dòng)失敗---->
坑一:Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root.
填坑:解釋為“防止attacker 獲取root權(quán)限”, 如果是RPM包安裝,會(huì)自動(dòng)創(chuàng)建elastsearch組和elastsearch用戶,設(shè)置好密碼,換一個(gè)用戶啟動(dòng)即可

坑二:Increase RLIMIT_MEMLOCK, soft limit: XXXXX, hard limit: XXXXX
填坑:es為了性能考慮,推薦關(guān)掉swap,并鎖定一部分mem,按照日志中的指引操作即可
elasticsearch-2.1.1集群搭建的示例分析

一般處理好這兩個(gè),注意一下文件和日志的權(quán)限,基本就能正常的啟動(dòng)了;

搭建集群失敗-->
首先要注意的一點(diǎn),在1.7的時(shí)候,es判斷集群是否可用時(shí),會(huì)用index.number_of_replicas去判斷,
但是在2.1.1中,這個(gè)變成了discovery.zen.minimum_master_nodes,當(dāng)集群的node低于設(shè)定值的時(shí)候,集群會(huì)無(wú)法訪問
PS:這個(gè)參數(shù)在介紹中是用來(lái)防止選舉master發(fā)生腦裂的一個(gè)參數(shù),實(shí)際上當(dāng)存活節(jié)點(diǎn)數(shù)低于這個(gè)值,就選舉不出master了;

測(cè)試中采用四個(gè)node來(lái)搭建集群
坑三:手動(dòng)把四個(gè)host寫進(jìn)了discovery.zen.ping.unicast.hosts,但是沒有手動(dòng)指定discovery.zen.minimum_master_nodes的值,每一個(gè)node啟動(dòng)以后都把自己設(shè)置為Master
填坑:network.host默認(rèn)采用的是127.0.0.1,這個(gè)問題可能會(huì)受到hosts的影響,為了意義明確,寫成機(jī)器的IP,問題解決

坑四:手動(dòng)把四個(gè)host寫進(jìn)了discovery.zen.ping.unicast.hosts,并且手動(dòng)指定discovery.zen.minimum_master_nodes的值,啟動(dòng)node以后出現(xiàn)報(bào)錯(cuò),ping其他的node超時(shí) or 不停的等待初始化;
elasticsearch-2.1.1集群搭建的示例分析
elasticsearch-2.1.1集群搭建的示例分析
填坑:推測(cè)es自身應(yīng)該是自動(dòng)計(jì)算這個(gè)discovery.zen.minimum_master_nodes的, 如果手動(dòng)指定以后,往集群中添加機(jī)器時(shí),數(shù)量小于discovery.zen.minimum_master_nodes就會(huì)出現(xiàn)這種現(xiàn)象,
只需要繼續(xù)往里面添加節(jié)點(diǎn),直到超過手動(dòng)指定的值,集群會(huì)自動(dòng)選舉Master,并正常運(yùn)轉(zhuǎn)起來(lái)。

總結(jié):
不要用root啟動(dòng),修改memlock的設(shè)置,手動(dòng)指定network.host的值,discovery.zen.minimum_master_nodes可以手動(dòng)寫,也可以不寫,保證cluster_name一致, node_name不一致,es2.1.1的集群就可以正常啟動(dòng)了
PS:jdk至少是1.7, 作為測(cè)試用的話,ES_HEAP_SIZE可以不寫

以上是“elasticsearch-2.1.1集群搭建的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI