我在ec2实例上安装了oracle-jdk8和elasticsearch,并由此创建了一个ami。在ec2机器的下一个副本中,我只是更改了elasticsearch.yml中的节点名称 但是,如果两个节点分别运行,则它们都在运行。[注意,节点ID显示为相同],但是,如果同时运行,则稍后启动的节点将失败,并在日志中显示以下内容:
[2018-08-07T16:35:06,260] [INFO] [o.e.d.z.ZenDiscovery] [node-1] 无法将加入请求发送给主服务器 [{node-2} {uQHBhDuxTeWOgmZHsuaZmA} {akWOcJ47SZKpR_EpA2lpyg} {10.127.114.212} {10.127.114.212:9300} {aws_availability_zone = us-east-1c,ml.machine_memorys = 66718932992,ml.max_open xpack.installed = true,ml.enabled = true}],原因 [RemoteTransportException [[node-2] [10.127.114.212:9300] [internal:discovery / zen / join]]; 嵌套:IllegalArgumentException [无法添加节点 {node-1} {uQHBhDuxTeWOgmZHsuaZmA} {Ba1r1GoMSZOMeIWVKtPD2Q} {10.127.114.194} {10.127.114.194:9300} {aws_availability_zone = us-east-1c,ml.machine_memory = 66716696576,ml.max_open_job xpack.installed = true,ml.enabled = true},找到现有节点 {node-2} {uQHBhDuxTeWOgmZHsuaZmA} {akWOcJ47SZKpR_EpA2lpyg} {10.127.114.212} {10.127.114.212:9300} {aws_availability_zone = us-east-1c,ml.machine_memory = 66718932992,xpack.ed ml.max_open_jobs = 20,ml.enabled = true} 具有相同的ID,但是 不同的节点实例];
我的elasticsearch.yml:
cluster.name: elk
node.name: node-1
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
bootstrap.memory_lock: true
network.host: 0.0.0.0
network.publish_host: _ec2:privateIp_
transport.publish_host: _ec2:privateIp_
discovery.zen.hosts_provider: ec2
discovery.ec2.tag.ElasticSearch: elk-tag
cloud.node.auto_attributes: true
cluster.routing.allocation.awareness.attributes: aws_availability_zone
来自_nodes
端点的输出:
//----Output when node-1 is run individually/at first----
{
"_nodes" : {
"total" : 1,
"successful" : 1,
"failed" : 0
},
"cluster_name" : "elk",
"nodes" : {
"uQHBhDuxTeWOgmZHsuaZmA" : {
"name" : "node-1",
"transport_address" : "10.127.114.194:9300",
"host" : "10.127.114.194",
"ip" : "10.127.114.194",
"version" : "6.3.2",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "053779d",
"roles" : [
"master",
"data",
"ingest"
],
"attributes" : {
"aws_availability_zone" : "us-east-1c",
"ml.machine_memory" : "66716696576",
"xpack.installed" : "true",
"ml.max_open_jobs" : "20",
"ml.enabled" : "true"
},
"process" : {
"refresh_interval_in_millis" : 1000,
"id" : 3110,
"mlockall" : true
}
}
}
}
//----Output when node-2 is run individually/at first----
{
"_nodes" : {
"total" : 1,
"successful" : 1,
"failed" : 0
},
"cluster_name" : "elk",
"nodes" : {
"uQHBhDuxTeWOgmZHsuaZmA" : {
"name" : "node-2",
"transport_address" : "10.127.114.212:9300",
"host" : "10.127.114.212",
"ip" : "10.127.114.212",
"version" : "6.3.2",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "053779d",
"roles" : [
"master",
"data",
"ingest"
],
"attributes" : {
"aws_availability_zone" : "us-east-1c",
"ml.machine_memory" : "66718932992",
"xpack.installed" : "true",
"ml.max_open_jobs" : "20",
"ml.enabled" : "true"
},
"process" : {
"refresh_interval_in_millis" : 1000,
"id" : 4869,
"mlockall" : true
}
}
}
}
答案 0 :(得分:0)
通过在每个实例中删除rm -rf /var/lib/elasticsearch/nodes/
并重新启动elasticsearch来解决此问题。