bind_transport_exception: bind_transport_exception (Address already in use)
ElasticsearchWhat does it mean?
While starting, an Elasticsearch node could not bind a socket to listen on the transport (inter-node communication) or HTTP port. It usually comes with the 'Address already in use' sub-error, and the node cannot start.
Why does it happen?
The requested port (default transport 9300, HTTP 9200) is already used by another process; most often a previous instance of the same node did not shut down cleanly, another ES instance/service on the same host conflicts, or network.host/port is misconfigured. Permission/access restrictions can also prevent binding.
How to fix it
Find who holds the port (Linux: ss -ltnp | grep 9300 or lsof -i:9300) and terminate the conflicting process, or assign the node a different port (transport.port / http.port). Verify that the previous ES process has actually exited. Make sure network.host and the port range settings are correct and bindable. Then restart the node.
More from this engine
- max_bytes_length_exceeded_exceptionDocument contains at least one immense term that is too long
- illegal_argument_exception_total_fieldsLimit of total fields has been exceeded
- verification_exceptionverification_exception: Found N problem(s) — Unknown column / Unknown index (ES|QL, SQL, EQL)
- translog_corrupted_exceptiontranslog_corrupted_exception
- recovery_engine_exceptionrecovery_engine_exception
- snapshot_in_progress_exceptionsnapshot_in_progress_exception
- repository_verification_exceptionrepository_verification_exception