2013-05-21 78 views
1

我期待在MongoDB中使用彈性搜索來支持我們的全文搜索需求。我正在努力尋找關於架構和託管的信息,並希望得到一些幫助。我打算在內部部署ES,而不是在雲端部署。我們目前有MongoDB在三個節點的副本集中運行。ElasticSearch架構和託管

  1. 需要多少臺服務器才能運行ElasticSearch以實現高可用性?
  2. 什麼是推薦的服務器規範。目前,我的想法是2個CPU,4GB RAM,C驅動器:40GB,d驅動器:40GB
  3. 如何ES支持故障轉移

感謝

塔裏克

回答

4
  1. 多少服務器需要運行ElasticSearch以獲得高可用性?

至少2

什麼是推薦的服務器規格。目前我的想法是2 x CPU,4GB內存,C盤:40GB,D盤:40GB

這實際上取決於您索引的數據量,但是這個數量的RAM和(我假設一個體面的雙核CPU),應該足以讓你開始

如何ES支持故障轉移

你設置了這樣多節點集羣,每個節點具有的另一個翻版

因此,在一個簡單的例子中,您的集羣將由兩臺服務器組成,每臺服務器上都有一個節點。 您可以將副本設置爲1,以便節點中的碎片可以將備份副本存儲在另一個節點上,反之亦然。

因此,如果某個節點出現故障,elasticsearch將檢測到故障並將該節點的請求路由到其另一個節點上的副本,直到您解決問題。作爲一個例子,當然你可以通過讓4臺服務器分別具有一個節點和2個副本來使其更加強大。你必須明白的是,elasticsearch將根據你擁有的碎片數量優化副本和主碎片的分佈。

所以在上面的2個節點和1個副本的例子中,假設您增加了2個額外的服務器/節點(建議使用1個節點/服務器),Elasticsearch會將副本從節點移動到自己的節點, d有2個節點,其中有1個主分片,其他2個節點分別有1個副分片。

0

需要多少臺服務器才能運行ElasticSearch以獲得高可用性 ?

我推薦3個具有3個複製因子索引的服務器。在一臺服務器停機的情況下,它會更加穩定,再加上它對於高負載更好,因爲查詢可以通過集羣進行分佈。

什麼是推薦的服務器規範。目前我的想法 是2 x CPU,4GB RAM,C盤:40GB,D盤:40GB

我強烈推薦更多的RAM。我們有72GB每臺機器上的集羣中的ES工程完美流暢(我們仍然沒有在垃圾收集問題下降)

如何ES支持故障轉移

在我們的情況下,在http://indexisto.com我們有一個很多測試和一些生產羣集服務器失敗。從3服務器開始,沒有任何問題在案件服務器宕機。集羣中有更多的服務器 - 對一臺服務器的影響較小。