java - 如何使用 spring boot 2.15 正确配置 elasticsearch 7.1.1?
问题描述
我正在使用 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
try to use port = 9300
。从您的应用程序连接到 Elastic Search 服务器时,将使用端口号 9300 而不是 9200。
推荐阅读
- machine-learning - 在 CoNLL 2003 数据上从头开始训练 spaCy 的 NER 模型得到了非常奇怪的结果
- signing - signtool - 新机器上指定的 PFX 密码不正确
- javascript - 从列值生成数据表中的按钮
- python - 为什么在 python 线程中使用全局是不好的做法?
- vba - .summary 的 VBA 单元格格式
- python - 如何在python中生成随机增加或减少的字符串?
- c++ - Add, subtract and compare compressed integers
- r - 在 RStudio 中, scale_fill_brewer() 创建灰色条作为默认条形图,而不是一系列蓝色
- react-native - 进行本机平台特定函数调用的最佳方法?
- git - GitHub push commit 错误