Node.js – No living connections Error while Elasticsearch connections in nodejs

elasticsearchnode.js

I am having this problem while connecting the elasticsearch connections.


var elasticsearch = require('elasticsearch');
var client = new elasticsearch.Client({ host: 'localhost:9200',
                                       log: 'trace'});



Elasticsearch ERROR: 2016-07-19T19:09:26Z
  Error: Request error, retrying -- connect ECONNREFUSED 127.0.0.1:9200
      at Log.error (/root/git_build/FirstMoveChess/node_modules/elasticsearch/src/lib/log.js:225:56)
      at checkRespForFailure (/root/git_build/FirstMoveChess/node_modules/elasticsearch/src/lib/transport.js:195:18)
      at HttpConnector. (/root/git_build/FirstMoveChess/node_modules/elasticsearch/src/lib/connectors/http.js:154:7)
      at ClientRequest.bound (/root/git_build/FirstMoveChess/node_modules/lodash-node/modern/internals/baseBind.js:56:17)
      at emitOne (events.js:96:13)
      at ClientRequest.emit (events.js:188:7)
      at Socket.socketErrorListener (_http_client.js:308:9)
      at emitOne (events.js:96:13)
      at Socket.emit (events.js:188:7)
      at emitErrorNT (net.js:1272:8)
      at _combinedTickCallback (internal/process/next_tick.js:74:11)
      at process._tickCallback (internal/process/next_tick.js:98:9)

Elasticsearch TRACE: 2016-07-19T19:09:27Z
  -> HEAD http://localhost:9200/

  

Best Answer

I understand this question is quite old but I wanted to share how you can solve this problem.

  1. If you are locally using elasticsearch

First thing you must do is running elasticsearch on your machine.

Error: Request error, retrying -- connect ECONNREFUSED 127.0.0.1:9200

Because above message indicates that you're not running elasticsearch locally.

So, visit the link and follow the insturction.

  1. Docker environment

It gets much trickier here.

First, follow the instruction here.

And in case you're using node.js elasticsearch client, you have to specify elasticsearch host as 172.24.0.1.

If you use container_name or private IP of container in docker-compose.yml, it won't work.

Related Topic