2014-01-17 76 views
1

我有2個Linux VM(均位於雲提供程序的相同數據中心):Elastic1和Elastic2(其中Elastic 2是Elastic 1的克隆)。兩者都具有相同的版本centos,相同的集羣名稱和相同版本的ES,Elastic2是一個克隆。雲中的彈性搜索羣集

我使用服務包裝在啓動時自動啓動它們,並將ip引入其各自的iptables文件,所以現在我可以在節點之間成功ping通。

我認爲這足以讓ES組成一個集羣,但無濟於事。

Elastic1和Elastic2都有1個索引,分別命名爲e1和e2。每個索引有1個分片,沒有副本。

我可以成功地使用每臺服務器上的頭部和輔助插件。並使用curl -XGET 'http://localhost:9200/_cluster/nodes?pretty=true'驗證羣集名稱是否相同,每臺服務器只有1個節點列出。

有什麼明顯的爲什麼這些節點不談話?我重新啓動了ES服務,並在兩臺服務器上重新啓動都無濟於事。克隆能成爲問題嗎?

回答

2

在你elasticsearch.yml:

discovery.zen.ping.multicast.enabled: false 
discovery.zen.ping.unicast.hosts: ['host1:9300', 'host2:9300'] 

所以,只列出下單播主機與傳輸端口的節點IP地址(默認爲9300)。多播是默認啓用的,但在不使用外部插件的雲環境中通常是不可能的。

此外,請務必檢查您的IP規則/安全組!這很容易忘記。

+0

謝謝。所以。許多。 – Chris