elasticsearch節(jié)點(diǎn)角色

在生產(chǎn)環(huán)境下,如果不修改elasticsearch節(jié)點(diǎn)的角色信息,在高數(shù)據(jù)量,高并發(fā)的場(chǎng)景下集群容易出現(xiàn)腦裂等問(wèn)題。
默認(rèn)情況下,elasticsearch集群中每個(gè)節(jié)點(diǎn)都有成為主節(jié)點(diǎn)的資格,也都存儲(chǔ)數(shù)據(jù),即雙重角色。

由兩個(gè)屬性控制:node.master和node.data,默認(rèn)情況下這兩個(gè)屬性的值都是true:

  • node.master:表示節(jié)點(diǎn)是否具有成為主節(jié)點(diǎn)的資格,值為true并不意味著這個(gè)節(jié)點(diǎn)就是主節(jié)點(diǎn),真正的主節(jié)點(diǎn)是由多個(gè)具有主節(jié)點(diǎn)資格的節(jié)點(diǎn)進(jìn)行選舉產(chǎn)生的。
  • node.data:表示節(jié)點(diǎn)是否存儲(chǔ)數(shù)據(jù)。

這兩個(gè)屬性可以有四種組合:

  • 第一種,這種組合表示這個(gè)節(jié)點(diǎn)即有成為主節(jié)點(diǎn)的資格,又存儲(chǔ)數(shù)據(jù),
    這個(gè)時(shí)候如果某個(gè)節(jié)點(diǎn)被選舉成為了真正的主節(jié)點(diǎn),那么他還要存儲(chǔ)數(shù)據(jù),這樣對(duì)于這個(gè)節(jié)點(diǎn)的壓力就比較大了。elasticsearch默認(rèn)每個(gè)節(jié)點(diǎn)都是這樣的配置,在測(cè)試環(huán)境下這樣做沒(méi)問(wèn)題。實(shí)際工作中建議不要這樣設(shè)置,這樣相當(dāng)于主節(jié)點(diǎn)和數(shù)據(jù)節(jié)點(diǎn)的角色混合到一塊了。
    node.master: true
    node.data: true

  • 第二種:這種組合表示這個(gè)節(jié)點(diǎn)沒(méi)有成為主節(jié)點(diǎn)的資格,也就不參與選舉,只會(huì)存儲(chǔ)數(shù)據(jù)。這個(gè)節(jié)點(diǎn)我們稱為data(數(shù)據(jù))節(jié)點(diǎn)。在集群中需要單獨(dú)設(shè)置幾個(gè)這樣的節(jié)點(diǎn)負(fù)責(zé)存儲(chǔ)數(shù)據(jù)。后期提供存儲(chǔ)和查詢服務(wù)。
    node.master: false
    node.data: true

  • 第三種:這種組合表示這個(gè)節(jié)點(diǎn)不會(huì)存儲(chǔ)數(shù)據(jù),有成為主節(jié)點(diǎn)的資格,可以參與選舉,有可能成為真正的主節(jié)點(diǎn)。這個(gè)節(jié)點(diǎn)我們稱為master節(jié)點(diǎn)
    node.master: true
    node.data: false

  • 第四種:這種組合表示這個(gè)節(jié)點(diǎn)即不會(huì)成為主節(jié)點(diǎn),也不會(huì)存儲(chǔ)數(shù)據(jù),
    這個(gè)節(jié)點(diǎn)的意義是作為一個(gè)client(客戶端)節(jié)點(diǎn),主要是針對(duì)海量請(qǐng)求的時(shí)候可以進(jìn)行負(fù)載均衡。
    node.master: false
    node.data: false
    默認(rèn)情況下,每個(gè)節(jié)點(diǎn)都有成為主節(jié)點(diǎn)的資格,也會(huì)存儲(chǔ)數(shù)據(jù),還會(huì)處理客戶端的請(qǐng)求。
    在一個(gè)生產(chǎn)集群中我們可以對(duì)這些節(jié)點(diǎn)的職責(zé)進(jìn)行劃分。

建議集群中設(shè)置3臺(tái)以上的節(jié)點(diǎn)作為master節(jié)點(diǎn),這些節(jié)點(diǎn)只負(fù)責(zé)成為主節(jié)點(diǎn),維護(hù)整個(gè)集群的狀態(tài)。

再根據(jù)數(shù)據(jù)量設(shè)置一批data節(jié)點(diǎn),這些節(jié)點(diǎn)只負(fù)責(zé)存儲(chǔ)數(shù)據(jù),后期提供建立索引和查詢索引的服務(wù),這樣的話如果用戶請(qǐng)求比較頻繁,這些節(jié)點(diǎn)的壓力也會(huì)比較大。

所以在集群中建議再設(shè)置一批client節(jié)點(diǎn)
這些節(jié)點(diǎn)只負(fù)責(zé)處理用戶請(qǐng)求,實(shí)現(xiàn)請(qǐng)求轉(zhuǎn)發(fā),負(fù)載均衡等功能。
master節(jié)點(diǎn):普通服務(wù)器即可(CPU 內(nèi)存 消耗一般)
data節(jié)點(diǎn):主要消耗磁盤,內(nèi)存
client節(jié)點(diǎn):普通服務(wù)器即可(如果要進(jìn)行分組聚合操作的話,建議這個(gè)節(jié)點(diǎn)內(nèi)存也分配多一點(diǎn))

?著作權(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)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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