无法将节点添加到集群(elasticsearch)

时间:2019-05-03 06:02:13

标签: elasticsearch cluster-computing kibana packetbeat

我正在尝试使群集的运行状况保持绿色。根据以下Elasticsearch文档:When you add more nodes to a cluster, it automatically allocates replica shards. When all primary and replica shards are active, the cluster state changes to green.

来源:https://www.elastic.co/guide/en/elasticsearch/reference/current/add-elasticsearch-nodes.html

因此,我使用以下配置文件创建了2个Elasticsearch实例:

# Config File 1
cluster.name : PL
node.name : "Node-1"
node.master : true
node.data : true
network.host : "127.0.0.1"
http.port : 9200
discovery.zen.ping.unicast.hosts : ["127.0.0.1:9200", "127.0.0.1:9201"]
discovery.zen.minimum_master_nodes : 2

# Config File 2
cluster.name : PL
node.name : "Node-2"
node.master : true
node.data : true
network.host : "127.0.0.1"
http.port : 9201
discovery.zen.ping.unicast.hosts : ["127.0.0.1:9200", "127.0.0.1:9201"]
discovery.zen.minimum_master_nodes : 2

通过运行以下curl命令:curl -GETX localhost:9200/_cluster/health?pretty=true,我应该根据elasticsearch文档(请参阅下面的链接)在集群上有2个节点。但是,我的节点数仍为1。

来源:https://www.elastic.co/guide/en/elasticsearch/guide/current/_add_failover.html

1 个答案:

答案 0 :(得分:0)

首先,您在discovery.zen.ping.unicast.hosts设置中使用的端口不是正确的端口,它应该是TCP端口,而不是HTTP端口。

但是,由于您在ES7上运行,因此现在使用new discovery protocol,而忽略了discovery.zen.ping.unicast.hosts设置。

由于两个节点都在同一台计算机上运行,​​因此不需要任何特殊配置即可将两个节点都组成一个集群,因此它们本身应该auto-discover(前提是您删除了discovery.*设置

如果要在两台不同的计算机上运行两个节点,则需要改用the following settings

discovery.seed_hosts:
   - 127.0.0.1:9300
   - 127.0.0.1:9301
cluster.initial_master_nodes:
   - 127.0.0.1:9300
   - 127.0.0.1:9301