None of the configured nodes are available at spring boot.

Hi friends, I am developing a spring boot project using elastic search I have an optimized search on the local machine and I installed the Head plugin in search of elasticity. My elastic search is configured correctly, showing a 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 

The simplified search service works on my machine, but when I try to save the code saving object in mysql first and then search for elasticity using elastic search repository , but when saving the object in elasticity it causes an 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 also used 9300 port instead of 9200 , but nothing works. I tried everything, but could find solutions, please help!

+6
source share
3 answers

I found the ES2.0 solution does not work correctly, so I install ES1.7.3 again, now it works in my case. details here!

+3
source

I had the same issue as you, and also using Jhipster. As already mentioned, one of the possible solutions is to lower your elasticsearch instance, but if you do not want to lower it, here is what it worked for me:

  • spring update download to latest version (> 1.4.0.RC1)
  • Configure ElasticsearchTemplate manually, instead of using autoconfiguration.

Please, if you need more information, check out this post: http://ignaciosuay.com/how-to-connect-spring-boot-to-elasticsearch-2-xx/

+2
source

It seems you are using JHipster (a wonderful toolkit if I can add) which uses

org.springframework.boot: spring-boot-starter-data-elasticsearch: → 1.3.3.RELEASE

This only works with ElasticSearch BELOW 2.0, so just install ElasticSearch 1.7.3 and run your code

0
source

All Articles