In class extending public class NodeIndexer extends ElasticSearchIndexer
private Client init() {
private Client client;
try {
client = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300))
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9200));
Settings settings = Settings.builder()
.put("cluster.name", "elasticsearch") // local
.put("path.home","D:\\Software\\elasticsearch-5.6.0\\bin") //local
//.put("cluster.name", "my-application")
//.put("path.home","/usr/share/elasticsearch")
.put("transport.type","local")
.put("http.enabled","false")
.build();
return client;
}
This is working in local system. But when I deploy same application in unix it's not working.
Following is the large exception from log file.
Caused by: org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available: [{#transport#-1}{S0q-MVOgQw-JxmNT_LsAug}{localhost}{127.0.0.1:9300}, {#transport#-2}{Ol5YNqpLTAmBoXpxIhra3A}{localhost}{127.0.0.1:9200}]
at org.elasticsearch.client.transport.TransportClientNodesService.ensureNodesAreAvailable(TransportClientNodesService.java:347) ~[elasticsearch-5.6.0.jar:5.6.0]
at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:245) ~[elasticsearch-5.6.0.jar:5.6.0]
at org.elasticsearch.client.transport.TransportProxyClient.execute(TransportProxyClient.java:59) ~[elasticsearch-5.6.0.jar:5.6.0]
at org.elasticsearch.client.transport.TransportClient.doExecute(TransportClient.java:363) ~[elasticsearch-5.6.0.jar:5.6.0]
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:408) ~[elasticsearch-5.6.0.jar:5.6.0]
at org.elasticsearch.client.support.AbstractClient$IndicesAdmin.execute(AbstractClient.java:1256) ~[elasticsearch-5.6.0.jar:5.6.0]
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:80) ~[elasticsearch-5.6.0.jar:5.6.0]
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:54) ~[elasticsearch-5.6.0.jar:5.6.0]
at tv.myplex.services.search.base.BaseSearchDao.indexExists(BaseSearchDao.java:81) ~[content-store-logic-1.0-SNAPSHOT.jar:na]
at tv.myplex.services.search.ContentSearchDao.<clinit>(ContentSearchDao.java:81) ~[content-store-logic-1.0-SNAPSHOT.jar:na]
... 61 common frames omitted
Here is the output from unix
# curl 'http://localhost:9200/'
{
"name" : "node-1",
"cluster_name" : "my-application",
"cluster_uuid" : "wyTjdAh-SUaaxLKdagg_Jw",
"version" : {
"number" : "5.6.0",
"build_hash" : "781a835",
"build_date" : "2017-09-07T03:09:58.087Z",
"build_snapshot" : false,
"lucene_version" : "6.6.0"
},
"tagline" : "You Know, for Search"
}