如何防止ElasticSearch集群出現腦裂現象

2021-07-04 15:40:30 字數 648 閱讀 7255

什麼是「腦裂」現象?

由於某些節點的失效,部分節點的網路連線會斷開,並形成乙個與原集群一樣名字的集群,這種情況稱為集群腦裂(split-brain)現象。這個問題非常危險,因為兩個新形成的集群會同時索引和修改集群的資料。

如何避免腦裂問題?

避免腦裂現象,用到的乙個引數是:discovery.zen.minimum_master_nodes。這個引數決定了要選舉乙個master需要多少個節點(最少候選節點數)。預設值是1。根據一般經驗這個一般設定成 n/2 + 1,n是集群中節點的數量,例如乙個有3個節點的集群,minimum_master_nodes 應該被設定成 3/2 + 1 = 2(向下取整)。

用到的另外乙個引數是:discovery.zen.ping.timeout,等待ping響應的超時時間,預設值是3秒。如果網路緩慢或擁塞,建議略微調大這個值。這個引數不僅僅適應更高的網路延遲,也適用於在乙個由於超負荷而響應緩慢的節點的情況。

如果您剛開始使用elasticsearch,建議搭建擁有3個節點的集群,這種方式可以把discovery.zen.minimum_master_nodes設定成2,這樣就限制了發生腦裂現象的可能,且保持著高度的可用性:如果你設定了副本,在丟失乙個節點的情況下,集群仍可執行。

修改es配置檔案: config/elasticsearch.yml

CronJob刪除ElasticSearch日誌

目前在k8s平台內,通過pod掛載hostpath將程式形成的日誌檔案傳輸儲存到宿主機指定目錄上,然後fluentd根據指定目錄去蒐集日誌檔案 json格式 然後通過呼叫elasticsearch 以下簡稱es 的api將日誌儲存到es中,那麼問題來了,日誌檔案大了怎麼清理?1.每個工作節點上的日誌...

windows下的elasticSearch安裝

es官網 進入bin目錄,雙擊elasticsearch.bat 訪問http localhost 9200可訪問 新增ik分詞器 解壓ik分詞器包,放到es安裝目錄的plugins中的analysis ik 資料夾中 新建analysis ik 資料夾 再次啟動elasticsearch.bat,...

同步LDAP資料到ElasticSearch

純python編寫 支援全量同步ldap資料,包括person 使用者 computer 計算機 group 組 多程序 協程實現快速同步 簡單配置即可使用 clone專案到本地 git clone 安裝依賴 cd ldap2es pip install r requirements.txt 修改配...