弹性搜索:无法使用Java NodeBuilder客户端连接到群集

时间:2014-11-03 07:49:35

标签: elasticsearch

我正在尝试将客户端连接到ElasticSearch集群,但我无法使其正常工作。我在这里和弹性搜索论坛中提到了其他问题,但没有一个建议帮助了我。

我可以通过端口9300远程登录到每个弹性搜索节点。

群集状态为绿色,我可以使用TransportClient进行连接而不会出现任何问题。

代码(Scala):

  val immutableSettings = ImmutableSettings.settingsBuilder
    .put("node.name", "node-client")
    .put("http.enabled", "false")
    .put("index.number_of_shards", 5)
    .put("index.number_of_replicas", 3)
    .put("cluster.name", "my-cluster")
    .put("discovery.zen.ping.multicast.enabled", false)
    .putArray("discovery.zen.ping.unicast.hosts", "host1:9300", "host2:9300","host3:9300", "host4:9300", "host5:9300")
    .build

  lazy val node = NodeBuilder.nodeBuilder()
    .loadConfigSettings(false)
    .client(true)
    .settings(immutableSettings)
    .node()

例外:

org.elasticsearch.cluster.block.ClusterBlockException: blocked by: [SERVICE_UNAVAILABLE/1/state not recovered / initialized];[SERVICE_UNAVAILABLE/2/no master]

我理解这是因为客户端无法加入群集,但我无法找出原因。

我检查了所有5个节点中的日志,但是没有看到任何记录。而且我也没有足够的权限来更改日志记录级别。

0 个答案:

没有答案