0

我正在使用 ElasticSearch 节点客户端执行查询,但我想连接到不同的 IP 地址然后 localhost,我想实现这个

Client client = TransportClient.builder().build()
        .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host1"), 9300))
        .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host2"), 9300));

节点客户端中的东西

Node node = nodeBuilder().clusterName("yourcluster").client(true).node();
Client client = node.client();

请帮帮我,我想Node Client与其他主机一起使用TransportClient

4

1 回答 1

1

节点客户端自动发现集群的所有节点,因为它实际上是集群本身的一部分,您不需要手动列出主机。但是,如果您的集群位于另一个无法自动发现的网络中,您还可以指定至少一个集群主机的设置。

Settings.Builder settings = Settings.builder()
.put("path.home", ".")
.put("discovery.zen.ping.unicast.hosts","192.168.1.1");

Node node = NodeBuilder.nodeBuilder().settings(settings)
      .clusterName("elasticsearch")
      .client(true)
      .node();

https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-network.html

于 2016-07-01T08:49:20.820 回答