I am trying to upgrade elastic search 1.x to 2.1 , getting below error.
i tried all these settings but it's still failing.
To bind to all IPv6/IPv4 addresses, you can use
network.bind_host: "0"
network.bind_host: "::"
To bind to IPv4 loopback (localhost) only
network.bind_host: "0.0.0.0"
together with JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses"
ERROR :
[2015-11-29 11:55:55,866][WARN ][transport.netty ] [Node1] exception caught on transport layer [[id: 0xfa429912]], closing connection
java.net.SocketException: Protocol family unavailable
at sun.nio.ch.Net.connect0(Native Method)
at sun.nio.ch.Net.connect(Net.java:435)
at sun.nio.ch.Net.connect(Net.java:427)
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:643)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.connect(NioClientSocketPipelineSink.java:108)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.eventSunk(NioClientSocketPipelineSink.java:70)
at org.jboss.netty.channel.DefaultChannelPipeline.sendDownstream(DefaultChannelPipeline.java:574)
at org.jboss.netty.channel.Channels.connect(Channels.java:634)
at org.jboss.netty.channel.AbstractChannel.connect(AbstractChannel.java:216)
at org.jboss.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:229)
at org.jboss.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:182)
at org.elasticsearch.transport.netty.NettyTransport.connectToChannelsLight(NettyTransport.java:913)
at org.elasticsearch.transport.netty.NettyTransport.connectToNode(NettyTransport.java:880)
at org.elasticsearch.transport.netty.NettyTransport.connectToNodeLight(NettyTransport.java:852)
at org.elasticsearch.transport.TransportService.connectToNodeLight(TransportService.java:250)
at org.elasticsearch.discovery.zen.ping.unicast.UnicastZenPing$3.run(UnicastZenPing.java:395)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
[2015-11-29 11:55:57,361][WARN ][transport.netty ] [Node1] exception caught on transport layer [[id: 0xe44a1084]], closing connection
java.net.SocketException: Protocol family unavailable
at sun.nio.ch.Net.connect0(Native Method)
at sun.nio.ch.Net.connect(Net.java:435)
at sun.nio.ch.Net.connect(Net.java:427)
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:643)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.connect(NioClientSocketPipelineSink.java:108)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.eventSunk(NioClientSocketPipelineSink.java:70)
at org.jboss.netty.channel.DefaultChannelPipeline.sendDownstream(DefaultChannelPipeline.java:574)
at org.jboss.netty.channel.Channels.connect(Channels.java:634)
at org.jboss.netty.channel.AbstractChannel.connect(AbstractChannel.java:216)
at org.jboss.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:229)
at org.jboss.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:182)
at org.elasticsearch.transport.netty.NettyTransport.connectToChannelsLight(NettyTransport.java:913)
at org.elasticsearch.transport.netty.NettyTransport.connectToNode(NettyTransport.java:880)
at org.elasticsearch.transport.netty.NettyTransport.connectToNodeLight(NettyTransport.java:852)
at org.elasticsearch.transport.TransportService.connectToNodeLight(TransportService.java:250)
at org.elasticsearch.discovery.zen.ping.unicast.UnicastZenPing$3.run(UnicastZenPing.java:395)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
[2015-11-29 11:55:57,836][INFO ][node ] [Node1] stopping ...
[2015-11-29 11:55:57,857][INFO ][node ] [Node1] stopped
[2015-11-29 11:55:57,857][INFO ][node ] [Node1] closing ...
[2015-11-29 11:55:57,861][INFO ][node ] [Node1] closed
I get the above exception when I set bind_host
to ::
but specify -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses
. With the preferIPv4, I can set bind_host
to 0
or 0.0.0.0
and it works.
By default, without setting anything, Elasticsearch will bind to localhost on IPv4 and IPv6 (whatever is available). But it won't bind to a public IP address unless you specifically tell it to.
What is it that you are trying to do? What OS are you on? Do you have IPv4? Do you have IPv6?
I am using IPv4 and linux 64 bit . I am trying to configure 3 ES nodes on one physical box.
the old version of ES works fine without any issues. now i am upgrading it to latest ES.
$ uname -a
Linux **l 2.6.18-371.9.1.el5 #1 SMP Tue May 13 06:52:49 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux
$ cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.10 (Tikanga)
I exported the java options in the elasticserach startup script like below, JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses"
export JAVA_OPTIONS
and tried three options each time, but no luck facing the same issue.
FYI: java.net.preferIPv4Addresses does absolutely nothing. this is not a recognized property by java.
I added in the
if [ "x$ES_USE_IPV4" != "x" ]; then
JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses"
fi
Like i said, -Djava.net.preferIPv4Addresses
does nothing, never did do anything. Maybe you mean -Djava.net.preferIPv6Addresses
, which actually does something.
See https://docs.oracle.com/javase/7/docs/api/java/net/doc-files/net-properties.html
both options are not helping here, still getting the same error.
[2015-12-01 09:06:04,277][WARN ][transport.netty ] [Node1] exception caught on transport layer [[id: 0x686bdc61]], closing connection
java.net.SocketException: Protocol family unavailable
at sun.nio.ch.Net.connect0(Native Method)
at sun.nio.ch.Net.connect(Net.java:435)
at sun.nio.ch.Net.connect(Net.java:427)
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:643)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.connect(NioClientSocketPipelineSink.java:108)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.eventSunk(NioClientSocketPipelineSink.java:70)
at org.jboss.netty.channel.DefaultChannelPipeline.sendDownstream(DefaultChannelPipeline.java:574)
at org.jboss.netty.channel.Channels.connect(Channels.java:634)
at org.jboss.netty.channel.AbstractChannel.connect(AbstractChannel.java:216)
at org.jboss.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:229)
at org.jboss.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:182)
at org.elasticsearch.transport.netty.NettyTransport.connectToChannelsLight(NettyTransport.java:913)
at org.elasticsearch.transport.netty.NettyTransport.connectToNode(NettyTransport.java:880)
at org.elasticsearch.transport.netty.NettyTransport.connectToNodeLight(NettyTransport.java:852)
at org.elasticsearch.transport.TransportService.connectToNodeLight(TransportService.java:250)
at org.elasticsearch.discovery.zen.ping.unicast.UnicastZenPing$3.run(UnicastZenPing.java:395)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
[2015-12-01 09:06:05,769][WARN ][transport.netty ] [Node1] exception caught on transport layer [[id: 0x79b2e8d7]], closing connection
java.net.SocketException: Protocol family unavailable
at sun.nio.ch.Net.connect0(Native Method)
at sun.nio.ch.Net.connect(Net.java:435)
at sun.nio.ch.Net.connect(Net.java:427)
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:643)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.connect(NioClientSocketPipelineSink.java:108)
at org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink.eventSunk(NioClientSocketPipelineSink.java:70)
at org.jboss.netty.channel.DefaultChannelPipeline.sendDownstream(DefaultChannelPipeline.java:574)
at org.jboss.netty.channel.Channels.connect(Channels.java:634)
at org.jboss.netty.channel.AbstractChannel.connect(AbstractChannel.java:216)
at org.jboss.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:229)
at org.jboss.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:182)
at org.elasticsearch.transport.netty.NettyTransport.connectToChannelsLight(NettyTransport.java:913)
at org.elasticsearch.transport.netty.NettyTransport.connectToNode(NettyTransport.java:880)
at org.elasticsearch.transport.netty.NettyTransport.connectToNodeLight(NettyTransport.java:852)
at org.elasticsearch.transport.TransportService.connectToNodeLight(TransportService.java:250)
at org.elasticsearch.discovery.zen.ping.unicast.UnicastZenPing$3.run(UnicastZenPing.java:395)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
[2015-12-01 09:06:07,079][INFO ][node
closing the ticket. Some miss configuration from my side causing this issue. thank you.
What did you do to fix it?????
I got a similar message with cassandra when changing something in /etc/hosts, /etc/sysconfig/network and /etc/resolv.conf
I met a simillar issue.
It seems IPv6 is required, but not supported somewhere.
Most helpful comment
I get the above exception when I set
bind_host
to::
but specify-Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses
. With the preferIPv4, I can setbind_host
to0
or0.0.0.0
and it works.By default, without setting anything, Elasticsearch will bind to localhost on IPv4 and IPv6 (whatever is available). But it won't bind to a public IP address unless you specifically tell it to.
What is it that you are trying to do? What OS are you on? Do you have IPv4? Do you have IPv6?