当前位置: 首页 > 知识库问答 >
问题:

spring boot没有配置的节点可用

柳翼
2023-03-14

嗨,朋友们,我正在用弹性搜索开发spring boot项目,我已经在本地机器上安装了弹性搜索,我已经在弹性搜索中安装了head插件。我的弹性搜索设置正确,显示绿色标志。项目中的application-dev.yml文件如下:

server:
    port: 8080

liquibase:
    context: dev

spring:
    profiles:
        active: dev
    datasource:
        dataSourceClassName: org.h2.jdbcx.JdbcDataSource
        url: jdbc:h2:mem:jhipster;DB_CLOSE_DELAY=-1
        databaseName:
        serverName:
        username:
        password:

    jpa:
        database-platform: com.aquevix.demo.domain.util.FixedH2Dialect
        database: H2
        openInView: false
        show_sql: true
        generate-ddl: false
        hibernate:
            ddl-auto: none
            naming-strategy: org.hibernate.cfg.EJB3NamingStrategy
        properties:
            hibernate.cache.use_second_level_cache: true
            hibernate.cache.use_query_cache: false
            hibernate.generate_statistics: true
            hibernate.cache.region.factory_class: org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory
    data:
        elasticsearch:
            cluster-name: elasticsearch
            cluster-nodes: localhost:9200
    messages:
        cache-seconds: 1
    thymeleaf:
        mode: XHTML
        cache: false
    activemq:
        broker-url: tcp://localhost:61616



metrics:
    jmx.enabled: true
    spark:
        enabled: false
        host: localhost
        port: 9999
    graphite:
        enabled: false
        host: localhost
        port: 2003
        prefix: TestApollo

cache:
    timeToLiveSeconds: 3600
    ehcache:
        maxBytesLocalHeap: 16M

弹性搜索服务正在我的机器上运行,但当我试图首先保存实体时,我的代码将实体保存在mysql中,然后使用Elastic search Repository在弹性搜索中,但将实体保存到Elastic中时,它会引发错误:

Hibernate: insert into EMPLOYEE (id, rollno) values (null, ?)
[ERROR] com.aquevix.demo.aop.logging.LoggingAspect - Exception in com.aquevix.demo.web.rest.EmployeeResource.create() with cause = null
org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available: []
        at org.elasticsearch.client.transport.TransportClientNodesService.ensureNodesAreAvailable(TransportClientNodesService.java:298) ~[elasticsearch-1.3.2.jar:na]
        at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:214) ~[elasticsearch-1.3.2.jar:na]
        at org.elasticsearch.client.transport.support.InternalTransportClient.execute(InternalTransportClient.java:105) ~[elasticsearch-1.3.2.jar:na]
        at org.elasticsearch.client.support.AbstractClient.index(AbstractClient.java:94) ~[elasticsearch-1.3.2.jar:na]
        at org.elasticsearch.client.transport.TransportClient.index(TransportClient.java:331) ~[elasticsearch-1.3.2.jar:na]
        at org.elasticsearch.action.index.IndexRequestBuilder.doExecute(IndexRequestBuilder.java:313) ~[elasticsearch-1.3.2.jar:na]
        at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:91) ~[elasticsearch-1.3.2.jar:na]
        at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:65) ~[elasticsearch-1.3.2.jar:na]
        at org.springframework.data.elasticsearch.core.ElasticsearchTemplate.index(ElasticsearchTemplate.java:431) ~[spring-data-elasticsearch-1.1.3.RELEASE.jar:na]
        at org.springframework.data.elasticsearch.repository.support.AbstractElasticsearchRepository.save(AbstractElasticsearchRepository.java:138) ~[spring-data-elasticsearch-1.1.3.RELEASE.jar:na]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_51]

我也使用了9300端口而不是9200,但是没有任何工作。我尝试了一切,但都能找到解决办法,请帮帮我!

共有1个答案

汪同
2023-03-14

我发现解决方案ES2.0不能正常工作,所以我重新安装ES1.7.3,现在它在我的情况下正常工作。完整的细节在这里!

 类似资料:
  • 问题内容: 我正在尝试从Java Web Service中的Elastic Search中进行搜索,这是我现在使用的方式: 第一行可以正常工作,但是转到第二行时,将发生以下异常: NoNodeAvailableException [没有已配置的节点可用:[{#transport#-1} {TskPSVeBRR6CvCzP9EVhkQ} {192.168.10.150} {192.168.10.15

  • 问题内容: 我正在上它可为本地 我正在使用Elastic4s进行连接,尝试了以下方法,但是所有这些都给了我错误 和 错误是 我完整的代码是 问题答案: 9200是用于通过HTTP连接的端口,这就是为什么它可以在您的浏览器中工作的原因。如果检查堆栈跟踪的顶部,则可以看到通过传输客户端(即TCP)进行连接,因此需要使用端口9300。试试这个:

  • 问题内容: 过去一个小时刚刚下载并安装了elasticsearch 1.3.2 打开到端口9200和9300:9400的IP表 在/ etc / hosts中设置我的计算机名称和IP 头模块和护理人员已安装且运行平稳 卷曲在本地主机上工作完美 将所有jar从下载中复制到eclipse中,因此版本相同 --Java– -输出- 更新:现在我真的很困惑。我只是按了日食3次。2次收到上述错误。1次搜索成

  • 问题内容: 我知道这个问题已经得到解决,但是我已经尽力了,无法解决我的问题。 我刚刚安装了elasticsearch并启动了它。这里的弹性日志: 因此,Elastic已在端口9300上完全运行并正在侦听。 我的群集名称是“我的应用程序”。 由elasticsearch.yml确认: 并且通过请求http:// localhost:9200 /来确认: 这是我的Maven依赖关系(elastic和c

  • 我正在尝试从Java Web服务中的弹性搜索进行搜索,下面是我现在的使用方法: 我在Java程序中做了什么(防火墙、库版本、调用API的方法等)错了吗?我现在的Java版本是1.8.0.121,Elastic Search和Transport Client的版本都是5.2。谢了!

  • 问题内容: 我从计算机访问服务器 得到这个 为什么使用Java API会出错? 编辑 有集群和节点部分的配置 问题答案: 一些建议: 1-使用端口9300。[9300-9400]用于节点到节点通信,[9200-9300]用于HTTP通信。 2-确保您使用的Java API的版本与服务器上运行的elasticsearch的版本匹配。 3-确保集群名称为(检查服务器上的elasticsearch.ym