Logstash connection issue with Elastic 9300 port

Hello Everyone,

I am facing issue in connecting to elastic from logstash using native port 9300.

The # character at the beginning of a line indicates a comment. Use

comments to describe your configuration.

input {
beats {
port => "5043"

The filter part of this file is commented out to indicate that it is


filter {

output {
elasticsearch {
hosts => [ "localhost:9300" ]

The log message is below

[2017-06-28T10:09:41,704][INFO ][logstash.outputs.elasticsearch] Running health check to see if an Elasticsearch connection is working {:healthcheck_url=>http://localhost:9300/, :path=>"/"}
[2017-06-28T10:09:41,714][WARN ][logstash.outputs.elasticsearch] Attempted to resurrect connection to dead ES instance, but got an error. {:url=>#<URI::HTTP:0x7dd3fe39 URL:http://localhost:9300/>, :error_type=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableError, :error=>"Elasticsearch Unreachable: [http://localhost:9300/][Manticore::ClientProtocolException] The server failed to respond with a valid HTTP response"}

Can any one of you please help me how to solve this ?

Logstash by default uses the HTTP protocol these days, so you should configure it to connect to port 9200 instead.

1 Like

Thanks for your time and the reply Christian.

We have already implemented elastic search using java API which works only with 9300. So we are looking for some technology which will insert data into elastic search at port 9300. Using which we can do search with.

So is there any work around on using logstash to work with 9300 ? Or do you have any other alternative technical solution to populate data in elastic search server ?

Our input data to elastic server would be similar to log file which would keep getting updated every 30 minutes. Every time it gets updated we would like to read and update our elastic.

I am sorry if the provided information are not detailed.

Why can you not allow Logstash to use the HTTP protocol over port 9200? How is this related to using the Java Transport client on port 9300?


In elastic search the data inserted using port number 9200 can not be accessed using native port 9300.

I mean the data inserted to the elastic using 9200 can not be searched using 9300 port.

Am I wrong here in my understanding ? Please correct me

They are just different protocols, so there are no such limitations. Data is indexed as JSON documents, and it does not matter which protocol it came in through.

1 Like

Thanks for clarifying this. I will try this and update.

Thanks a ton for your time Christian

Thanks Christian. It works. Till date I was thinking elastic maintains different data set for different ports (http and native) and are not accessible to each other, Thanks for helping me in this.

We can close this case.

1 Like

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