Hi,
I have a test serveur with several IP : an internal and a VPN
Elasticsearch used to run on the VPN one while we were in development, but now I have
to secure it for the production env.
After testing lot of configurations, that's what I have :
publish/bind localhost (127.0.0.1:9300)
network.host: 127.0.0.1
transport.tcp.port: 9300
publish/bind VPN for the plugin Head (172.16.50.12:9200)
http.port: 9200
http.host: 172.16.50.12
publish/bind internal IP for internal communication (10.90.213.132:9300)
transport.profiles.client.port: 9300
transport.profiles.client.bind_host: 10.90.213.132
transport.profiles.client.publish_host: 10.90.213.132
publish/bind VPN IP for remote DEV (172.16.50.12:9300)
transport.profiles.dmz.port: 9300
transport.profiles.dmz.bind_host: 172.16.50.12
transport.profiles.dmz.publish_host: 172.16.50.12
Everything starts well :
[2016-03-25 09:14:13,979][INFO ][transport ] [es-dev-node-integration] publish_address {127.0.0.1:9300}, bound_addresses {127.0.0.1:9300}
[2016-03-25 09:14:13,980][INFO ][transport ] [es-dev-node-integration] profile [dmz]: publish_address {172.16.50.12:9300}, bound_addresses {172.16.50.12:9300}
[2016-03-25 09:14:13,980][INFO ][transport ] [es-dev-node-integration] profile [client]: publish_address {10.90.213.132:9300}, bound_addresses {10.90.213.132:9300}
[2016-03-25 09:14:17,011][INFO ][http ] [es-dev-node-integration] publish_address {172.16.50.12:9200}, bound_addresses {172.16.50.12:9200}
Everything is OK, I can connect to the HTTP head plugin, internal communication works well on 10.*.
BUT, remote connections with TransportClient from a VPN PC failed with :
GRAVE: NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{172.16.50.12}{172.16.50.12:9300}]]
at org.elasticsearch.client.transport.TransportClientNodesService.ensureNodesAreAvailable(TransportClientNodesService.java:290)
at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:207)
at org.elasticsearch.client.transport.support.TransportProxyClient.execute(TransportProxyClient.java:55)
at org.elasticsearch.client.transport.TransportClient.doExecute(TransportClient.java:286)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:351)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:85)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:59)
Before, this configuration, the same code, connected to the VPN IP was not a problem. There
is something wrong with the "Transport profile" from a remove IP. The same code on the
machin works ... Is there something special in remote with a profile ?
Thanks!
Xavier