This is not an HTTP port – How to solve this Elasticsearch error

Opster Team

July-20, Version: 1.7-8.0

Before you begin reading this guide, we recommend you try running the Elasticsearch Error Check-Up which analyzes 2 JSON files to detect many configuration errors.

Briefly, this error occurs when you are trying to access Elasticsearch using a port that is not an HTTP port. Elasticsearch uses HTTP for its API, so you will need to access it using an HTTP port.

To easily locate the root cause and resolve this issue try AutoOps for Elasticsearch & OpenSearch. It diagnoses problems by analyzing hundreds of metrics collected by a lightweight agent and offers guidance for resolving them.

This guide will help you check for common problems that cause the log ” This is not an HTTP port ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: node.


Log Context

Log “This is not an HTTP port”classname  is TcpTransport.java We extracted the following from Elasticsearch source code for those seeking an in-depth context :

} 
 private static int readHeaderBuffer(BytesReference headerBuffer) throws IOException {
 if (headerBuffer.get(0) != 'E' || headerBuffer.get(1) != 'S') {
 if (appearsToBeHTTPRequest(headerBuffer)) {
 throw new HttpRequestOnTransportException("This is not an HTTP port");
 } 
 if (appearsToBeHTTPResponse(headerBuffer)) {
 throw new StreamCorruptedException("received HTTP response on transport port; ensure that transport port (not " +
 "HTTP port) of a remote node is specified in the configuration");

 

See how you can use AutoOps to resolve issues


How helpful was this guide?

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Analyze your cluster & get personalized recommendations

Skip to content