2015-11-05 47 views
1

我想设置Elastic-Search集群。由于它是一个分布式系统,因此我应该能够即时添加更多节点(意思是:在部署一次后添加新节点)。这是如何完成的,Elastic-search如何管理它呢?弹性搜索:动态添加节点到集群

回答

0

Elasticsearch处理这种使用Zen Discovery

的禅发现是建立在发现模块elasticsearch 和默认。它提供了单播发现,但可以扩展到支持云环境和其他形式的发现的 。

这是通过elasticsearch.yml配置文件完成的。您有两种选择 - 多播和单播:

  • 多播可让您的新节点连接到群集而无需指定IP,但不推荐使用。
  • 单播。您可以指定群集中的节点列表(它们的IP)。

两种方式,您的启动节点将尝试ping其他节点,如果它们的群集名称匹配,它将加入它。

配置例子:

cluster.name: elasticsearch_media 
node.name: "media-dev" 
node.master: true 
node.data: true 
discovery.zen.ping.multicast.enabled: false 
discovery.zen.ping.unicast.hosts: ["153.32.228.250[9300-9400]", "10.122.234.19[9300-9400]"] 
+1

如果我想添加第三个节点,只有第三个节点会进行配置更改或将添加需要更改的节点。如果所有节点都需要更改,是否应该重新启动? – user3881147

+0

只应该配置第三个节点就足够了。您不需要重新启动其他节点。 –

0

所有你需要做的是编辑您的新节点上的主配置文件,并更改群集名称,您当前正在运行的集群。当然,新节点必须是可发现的。这取决于您的网络设置。

0
  • 尝试写一个脚本,将接受有关群集名称和IP地址,认证等命令行参数,
  • 这个脚本会打开和修改远程服务器上elasticsearch.yml文件。