master_not_discovered_exception ElasticSearch单个节点

时间:2017-07-22 18:35:53

标签: elasticsearch kibana

我正在尝试在单个主机上设置elasticsearch。以下是我的配置:

elasticsearch.yml

node.name: ${HOSTNAME}

network.host: _site_, _local_
http.port: 9200
transport.tcp.port: 9300
cluster.name: "test_cluster"
node.local: true

kibana.yml

server.host: 0.0.0.0
elasticsearch.url: http://localhost:9200

按照以下命令:

curl -XGET 'localhost:9200/_cluster/health?pretty'

我收到以下消息:

{
  "error" : {
  "root_cause" : [
   {
      "type" : "master_not_discovered_exception",
      "reason" : null
   }
  ],
  "type" : "master_not_discovered_exception",
  "reason" : null
},
 "status" : 503
}

在日志文件中,我看到以下消息:

not enough master nodes discovered during pinging (found [[]], but needed [-1]), pinging again

有人可以指点我正确的方向吗?

5 个答案:

答案 0 :(得分:13)

我基本上花了几天时间(叹息)。我试图将单节点群集从6.x es升级到7.x,但我一直死于“ master_not_discovered_exception”的顶峰。

最终为我解决的是检查全新安装的7.x。

对于我的单节点集群,我的 /etc/elasticsearch/elasticsearch.yml 需要以下行:

discovery.type: single-node

我希望这样可以避免别人像我一样花几天的时间。为防御起见,我是es的新手。

答案 1 :(得分:0)

首先,我认为你不需要设置<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mycompany.myapp" > <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" android:resizeableActivity = "true"> <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>

在您的日志中,它正在尝试获取主数据,但结果为0

您可以尝试设置以下属性:

network.host

如果它不起作用,你也可以把更多的日志放在这里

答案 2 :(得分:0)

您可以在elasticsearch.yml

中尝试此操作
discovery.zen.minimum_master_nodes: 1

我认为ES始终会找到discovery.zen.ping.unicast.hosts 发现nodes的{​​{1}}等于count

答案 3 :(得分:0)

根据此link,您应该第一次在initial_master_nodes中设置/etc/elasticsearch/elasticsearch.yml的配置,

node.name: "salehnode"

cluster.initial_master_nodes: 
   - salehnode

答案 4 :(得分:0)

就我而言,在安装ES 7+之后,我不得不将node-1设置为新集群中的主节点。

sudo nano /etc/elasticsearch/elasticsearch.yml

cluster.initial_master_nodes: ["node-1"]