I am facing an issue with Elastic Search: In one of our PCs, The ES Java process took over every available TCP port on the system and held them, so the system entered TCP starvation and failed to continue functioning.
My questions are:
what are the purpose of the many established ports related to the elastic process that I saw by netstat command ?
Can I limit the ports that open?
Do you have a guess what can be the reason for the issue? I can see in another machines that many ports are established but the issue above occur in only one machine (for now)
We know that the process that creates those connections is the ES process. (not shown in the image)
On different machines the number of connections is different, some of the machine have ~10 connections some of them ~30 and as it looks that the es on the specified machine used all the ports.
I Couldn't figure out (or find explanations on the web) what are those connections and what can cause ES to create a lot of such connections or how to restrict the number of port range for those connections.
Every Elasticsearch node will open 10-13 TCP channels to every other node in the cluster, and ≤18 TCP channels to any remote clusters. This is normal behaviour and even in a very large cluster it wouldn't be enough for you to run out of local ports.
There is something wrong with your system config if you are running out of ports after opening just 30 connections. You will need to discuss this with your local system administrator.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.