Hi,
I have elasticsearch (cluster of two nodes) set up in my Amazon Web Services (AWS) environment. I have a number of clients, all within AWS, hitting this elasticsearch server. For one group of clients, we periodically get this exception:
Caused by: org.elasticsearch.client.transport.NoNodeAvailableException: No node available
at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:202)
at org.elasticsearch.client.transport.support.InternalTransportClient.execute(InternalTransportClient.java:106)
at org.elasticsearch.client.support.AbstractClient.search(AbstractClient.java:214)
at org.elasticsearch.client.transport.TransportClient.search(TransportClient.java:400)
at org.elasticsearch.action.search.SearchRequestBuilder.doExecute(SearchRequestBuilder.java:836)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:62)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:57)
The only difference we see between this group and another group that doesn't get any errors is that this group isn't as active.
From googling, we saw that some people suggested it may be due to some sort of timing out. So we applied the following suggestion to the instance:
net.ipv4.tcp_keepalive_time=600
net.ipv4.tcp_keepalive_intvl=60
net.ipv4.tcp_keepalive_probes=3
but we still get the occasional instance.
Before I contacted AWS support for assistance, I thought I'd post something here in case someone has any suggestions.
BTW, I'm still on version 0.90.
Thanks.