我正在将Elasticsearch 7.1.1与spring-boot 2.1.5一起使用。我下载并运行了Elasticsearch。当我启动spring项目时,出现错误。的无法加载Elasticsearch节点:org.elasticsearch.client.transport.NoNodeAvailableException:没有配置的节点可用:[{#transport#-1} {rsi4dYt_RuOBGCdwUH3Cgg} {127.0.0.1} {127.0.0.1:9200 }] “。我怎样才能正确地运行它

我使用了这些配置。

spring.elasticsearch.jest.multi-threaded=true
spring.main.allow-bean-definition-overriding=true
spring.data.elasticsearch.cluster-nodes=localhost:9200
spring.data.elasticsearch.repositories.enabled=true
spring.elasticsearch.jest.uris=http://localhost:9200
spring.elasticsearch.jest.connection-timeout=3s
spring.elasticsearch.rest.uris=http://localhost:9200
spring.data.elasticsearch.cluster-name=elasticsearch


@Configuration
@EnableElasticsearchRepositories(basePackages =
"com.example.elasticsearch.repository")
public class ElasticSearchConfiguration {
 @Bean
 public Client client() throws UnknownHostException {
    Settings settings = Settings.builder()
            .put("client.transport.sniff", true)
            .put("cluster.name", "elasticsearch").build();
    @SuppressWarnings("resource")
    TransportClient client = new PreBuiltTransportClient(settings)
            .addTransportAddress(new
 TransportAddress(InetAddress.getByName("127.0.0.1"), 9200));

    return client;
}

@Bean
public ElasticsearchOperations elasticsearchTemplate() throws
UnknownHostException {
    return new ElasticsearchTemplate(client());
   }
}

最佳答案

我认为您误会了使用port = 9200尝试使用port = 9300。从应用程序连接到Elastic Search服务器后,将使用端口号9300,而不是9200。

09-11 17:58