Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

None of the configured nodes are available issue with spring boot

Hi friends i am developing spring boot project with elastic search i have setup elastic search on local machine and i have installed Head plugin in elastic search . My elastic search is setup correctly showing green sign. My application-dev.yml file in my project is as follows:

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

Elastic search service is running on my machine but when i try to save entity first my code save entity in mysql then in elastic search using elastic search repository but on saving entity into elastic it throws error:

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]

i have also use 9300 port instead of 9200 but nothing is working. I have tried everything but could find solutions please help!

like image 353
Qasim Avatar asked Nov 05 '15 11:11

Qasim


2 Answers

I have found the solution ES2.0 is not working correctly so i re-install ES1.7.3 now it is working in my case. complete details here!

like image 145
Qasim Avatar answered Apr 27 '23 01:04

Qasim


I had the same problem as you, and also using Jhipster too. As mentioned one possible solution is to downgrade your elasticsearch instance but if you don't want to downgrade it, here is what it worked for me:

  • update spring boot to the lastet version (> 1.4.0.RC1)
  • Configure ElasticsearchTemplate manually instead of using autoconfiguration.

Please if you need more information have a look to this post: http://ignaciosuay.com/how-to-connect-spring-boot-to-elasticsearch-2-x-x/

like image 24
ignacio.suay Avatar answered Apr 27 '23 00:04

ignacio.suay