Kibana failed to connect to ElasticSearch with error Request Timeout after 3000ms

  1. Elastic Search 6.3.2

Installed the opensource version of Elastic Search Cluster in AWS. Its configured to reach via domain. No Username and password configured. The setup has been validate using /_cat/health and can confirm its working from the browser as well as from Kibana docker container (see below for more explanation)

elasticsearch.yml file

cluster.name: "elasticsearch"
bootstrap.memory_lock: false
network.host: 0.0.0.0
network.publish_host: ec2:privateIp
transport.publish_host: ec2:privateIp
discovery.zen.hosts_provider: ec2
discovery.ec2.tag.ElasticSearch: esnode
discovery.ec2.endpoint: ec2.${REGION}.amazonaws.com
s3.client.default.endpoint: s3.${REGION}.amazonaws.com
cloud.node.auto_attributes: true
cluster.routing.allocation.awareness.attributes: aws_availability_zone
node.master: ${IS_MASTER:true}
node.data: ${IS_DATA:true}
node.ingest: ${IS_INGEST:true}

  1. Kibana 6.3.2

Started the Kibana docker container locally by pointing to the elastic search domain configured above. I logged into the container and validated it is able to reach the elastic search (using curl -XGET). For some reason, I see error "Request Timeout after 3000ms" in the log and Kibana UI displays the same message next to plugin:elasticsearch@6.3.2. Am doing anything wrong? Do I need to configure the username and password?

docker run -p 5601:5601 -e ELASTICSEARCH_URL=http://xxx.xxx.xxx.com/ kibana-docker:latest

{"type":"log","@timestamp":"2018-07-27T14:39:05Z","tags":["status","plugin:kibana@6.3.2","info"],"pid":1,"state":"green","message":"Status changed from uninitialized to green - Ready","prevState":"uninitialized","prevMsg":"uninitialized"}
{"type":"log","@timestamp":"2018-07-27T14:39:05Z","tags":["status","plugin:elasticsearch@6.3.2","info"],"pid":1,"state":"yellow","message":"Status changed from uninitialized to yellow - Waiting for Elasticsearch","prevState":"uninitialized","prevMsg":"uninitialized"}
{"type":"log","@timestamp":"2018-07-27T14:39:05Z","tags":["status","plugin:timelion@6.3.2","info"],"pid":1,"state":"green","message":"Status changed from uninitialized to green - Ready","prevState":"uninitialized","prevMsg":"uninitialized"}
{"type":"log","@timestamp":"2018-07-27T14:39:05Z","tags":["status","plugin:console@6.3.2","info"],"pid":1,"state":"green","message":"Status changed from uninitialized to green - Ready","prevState":"uninitialized","prevMsg":"uninitialized"}
{"type":"log","@timestamp":"2018-07-27T14:39:05Z","tags":["status","plugin:metrics@6.3.2","info"],"pid":1,"state":"green","message":"Status changed from uninitialized to green - Ready","prevState":"uninitialized","prevMsg":"uninitialized"}
{"type":"log","@timestamp":"2018-07-27T14:39:05Z","tags":["listening","info"],"pid":1,"message":"Server running at http://0.0.0.0:5601"}
{"type":"log","@timestamp":"2018-07-27T14:39:08Z","tags":["status","plugin:elasticsearch@6.3.2","error"],"pid":1,"state":"red","message":"Status changed from yellow to red - Request Timeout after 3000ms","prevState":"yellow","prevMsg":"Waiting for Elasticsearch"}

kibana.yml

server.host: '0.0.0.0'
server.port: 5601
elasticsearch.url : ${ELASTICSEARCH_URL}

I found the problem. I need to explicitly pass the port number in the URL. The same issue discussed in the below thread.

Please close the thread.

1 Like

Hey @kkr78, I'm glad to hear you were able to solve your issue, and thanks for sharing your solution here for others.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.