2012-12-28 78 views
10

我們目前有一個6個數據節點和一個非數據節點的集羣。其中,兩個目前是符合條件的。該羣集位於EC2上。彈性搜索最佳主數

主節點的最佳數量是多少,還是有理由進行區分?

回答

11

如果沒有主節點,集羣就無法運行。因此,主節點的數量取決於您對丟失所有主節點的容忍度。

擁有奇數個符合主節點的節點並將discovery.zen.minimum_master_nodes設置爲大於羣集中主節點的一半數量可能會有幫助。這應該可以顯着減少您的羣集進入裂腦狀態的機會。

例如,對於用3主資格節點的羣集,可以設置discovery.zen.minimum_master_nodes爲2

4

Elasticsearch Pre-Flight Checklist所描述的,可以設置discovery.zen.minimum_master_nodes至少(N/2)+1上團簇N > 2節點。

其中N是合格主節點的數量。

你的情況這意味着,discovery.zen.minimum_master_nodes: 4符合條件的主節點 - 即(6/2)+1

+0

你爲什麼說「在你的情況... 2」。他提到了6個節點,所以根據公式不是4? – philfreo

+0

@philfreo是的。我會調整我的答案。感謝您指出。 –

+1

這裏主要合格節點的最小數目爲2.如果最小主節點設置爲4,則羣集將始終不可操作。最好總是有超過2個主要合格節點才能正常工作。 –

1

minimum_master_nodes(仲裁)應根據主節點,而不是數據節點的數量來計算,Uyi的建議是正確的,當且僅當所有的數據節點也是主節點。

你不應該有2個主節點,由於在split-brain情況是潛在的,我的建議是,讓至少3個節點掌握資格,並設置最低主節點,以2

另一件事考慮的是擁有更小但專用的主節點,以確保它們更加穩定並且不會受到處理索引的壓力。