Hi, I have an Elasticsearch cluster running in the cloud and I am trying to connect from a java client locally. Due to firewall restrictions I am not allowed to connect out on port 9300 from my local client. I have created a proxy in the cloud to forward all TCP connections from port 80 to port 9300 on the cluster master node. My client has the same cluster name as the master.
In my Java code I have Settings settings = ImmutableSettings.settingsBuilder().put("cluster.name", "mycluster").build(); TransportClient client = new TransportClient(settings); client.addTransportAddress(new InetSocketTransportAddress("{my-proxy-host-ip}", 80)); When trying to access the client I get [10:00:44] netty - [Hellion] exception caught on transport layer [[id: 0x2882f1d8, /145.36.217.4:49318 => /{my-proxy-host-ip}:80]], closing connection java.io.StreamCorruptedException: invalid internal transport message format at org.elasticsearch.transport.netty.SizeHeaderFrameDecoder.decode(SizeHeaderFrameDecoder.java:46) at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:425) at org.elasticsearch.common.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303) at org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.elasticsearch.common.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559) at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:268) at org.elasticsearch.common.netty.channel.Channels.fireMessageReceived(Channels.java:255) at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88) at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:108) at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:318) at org.elasticsearch.common.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89) at org.elasticsearch.common.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) at org.elasticsearch.common.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) at org.elasticsearch.common.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:724) (I have confirmed the route to the master node via the proxy by changing the outbound port on the proxy server to 9200 and successfully testing curl {my-proxy-host-ip} OK) I can't see any reason why this shouldn't work so any ideas are welcomed. Thanks in advance. Kim -- You received this message because you are subscribed to the Google Groups "elasticsearch" group. To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/c356c021-9d01-4ed4-926e-85ebaa7bc7a5%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.