使用 RestHighLevelClient 创建索引失败

问题描述

我正在尝试使用 RestHighLevelClient 创建索引,客户端已成功创建,但在创建索引时出现错误

 CreateIndexRequest request = new CreateIndexRequest(elasticsearchIndex);
    request.settings(Settings.builder()
            .put("index.number_of_shards",1)
            .put("index.number_of_replicas",0)
    );
    org.elasticsearch.client.indices.CreateIndexResponse createIndexResponse = elasticsearchClient.indices().create(request,RequestOptions.DEFAULT);





Exception in thread "main" java.net.ConnectException: Connection refused
        at org.elasticsearch.client.RestClient.extractAndWrapCause(RestClient.java:788)
        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:218)
        at org.elasticsearch.client.RestClient.performRequest(RestClient.java:205)
        at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1454)
        at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1439)
        at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1406)
        at org.elasticsearch.client.IndicesClient.create(IndicesClient.java:128)

请告诉我根本原因或任何解决方案。

谢谢

解决方法

看起来您的应用程序无法连接到 elasticsearch 服务器,您能否检查 JHLRC 客户端配置中提供的连接设置(主机名和端口)并确保您已连接到您的 elasticsearch。

您可以使用 postman 等其他客户端通过点击您的 elasticsearch 主机名和端口来自己检查连接。同时确保您的应用程序和 elasticsearch 服务器具有网络连接。