什麼是腦裂?
如果發生網絡中斷或者服務器宕機,那麼集羣會有可能被劃分爲兩個部分,各自有自己的master來管理,那麼這就是腦裂。
es集羣有可能會出現腦裂問題,原因主要有兩個:
- 如果集羣中節點不在同一個網段有可能是網絡延遲造成的
- 如果集羣中的節點在同一個網段,有可能是主節點負載太大造成的
解決方案主要有兩種:
- 把主從節點的職責分離,設置三個儲備主節點,node.master=true,node.data=false,從節點只存儲數據,node.master=false,node.data=true
- 增加延遲時間:將儲備主節點數最小設爲n/2+1個