Transport error


(lecochien) #1

Hi,
I've installed for the first time ES on my server (ubuntu 10.04
64bits) this error occure when i'm trying to start ES :
Failed to send ping request over multicast on java.net.MulticastSocket

I4ve enbled multicast :
$ cat /boot/config-uname -r | grep CONFIG_IP_MULTICAST //test if
multicast is enabled

CONFIG_IP_MULTICAST=y
sysctl net.ipv4.icmp_echo_ignore_broadcasts

net.ipv4.icmp_echo_ignore_broadcasts = 0

So all is ok , ES seems to be started, but the error is always here :
(XXX.XXX.XXX.XXX is my public ip adress)
root@www:/bin# elasticsearch-0.15.0/bin/elasticsearch -f
[2011-02-21 22:26:47,896][INFO ][node ]
[Postmortem] {elasticsearch/0.15.0}[42337]: initializing ...
[2011-02-21 22:26:47,900][INFO ][plugins ]
[Postmortem] loaded []
[2011-02-21 22:26:52,199][INFO ][node ]
[Postmortem] {elasticsearch/0.15.0}[42337]: initialized
[2011-02-21 22:26:52,199][INFO ][node ]
[Postmortem] {elasticsearch/0.15.0}[42337]: starting ...
[2011-02-21 22:26:52,311][INFO ][transport ]
[Postmortem] bound_address {inet[/0:0:0:0:0:0:0:0:9300]},
publish_address {inet[/XXX.XXX.XXX.XXX:9300]}
Exception in thread "elasticsearch[cached]-pool-1-thread-1"
org.elasticsearch.discovery.zen.ping.ZenPingException: Failed to send
ping request over multicast on java.net.MulticastSocket@4b94ba17
at
org.elasticsearch.discovery.zen.ping.multicast.MulticastZenPing.sendPingRequest(MulticastZenPing.java:
243)
at
org.elasticsearch.discovery.zen.ping.multicast.MulticastZenPing.ping(MulticastZenPing.java:
200)
at
org.elasticsearch.discovery.zen.ping.ZenPingService.ping(ZenPingService.java:
129)
at
org.elasticsearch.discovery.zen.ping.ZenPingService.pingAndWait(ZenPingService.java:
111)
at
org.elasticsearch.discovery.zen.ZenDiscovery.findMaster(ZenDiscovery.java:
483)
at
org.elasticsearch.discovery.zen.ZenDiscovery.innterJoinCluster(ZenDiscovery.java:
242)
at org.elasticsearch.discovery.zen.ZenDiscovery.access
$500(ZenDiscovery.java:62)
at org.elasticsearch.discovery.zen.ZenDiscovery
$1.run(ZenDiscovery.java:227)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:
1110)
at java.util.concurrent.ThreadPoolExecutor
$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
Caused by: java.io.IOException: Operation not permitted
at java.net.PlainDatagramSocketImpl.send(Native Method)
at java.net.DatagramSocket.send(DatagramSocket.java:629)
at
org.elasticsearch.discovery.zen.ping.multicast.MulticastZenPing.sendPingRequest(MulticastZenPing.java:
235)
... 10 more
[2011-02-21 22:27:22,339][WARN ][discovery ]
[Postmortem] waited for 30s and no initial state was set by the
discovery
[2011-02-21 22:27:22,339][INFO ][discovery ]
[Postmortem] elasticsearch/dWfWuCWwRBCnCN6CyzyVKw
[2011-02-21 22:27:22,344][INFO ][http ]
[Postmortem] bound_address {inet[/0:0:0:0:0:0:0:0:9200]},
publish_address {inet[/XXX.XXX.XXX.XXX:9200]}
[2011-02-21 22:27:22,344][INFO ][node ]
[Postmortem] {elasticsearch/0.15.0}[42337]: started

As you can see the server strt but why this error on transport ?
I've got a little idea, maybe it's caused by my firewall who don't
open the port 9300 ?
Could you explain my why ES try to ping my ip Instead of ping a local
adresse (like 127.0.0.1) ?
Sorry but i'm not (yet) an expert so please be indulgent.
Thanks.


(lecochien) #2

Hi,
I've tested to change my elasticsearch.yml
to host : 127.0.0.1
and it's works.
But is it normal ?
Maybe...

On 21 fév, 22:49, lecochien rgar...@voisins-super.fr wrote:

Hi,
I've installed for the first time ES on my server (ubuntu 10.04
64bits) this error occure when i'm trying to start ES :
Failed to send ping request over multicast on java.net.MulticastSocket

I4ve enbled multicast :
$ cat /boot/config-uname -r | grep CONFIG_IP_MULTICAST //test if
multicast is enabled>> CONFIG_IP_MULTICAST=y

sysctl net.ipv4.icmp_echo_ignore_broadcasts

net.ipv4.icmp_echo_ignore_broadcasts = 0

So all is ok , ES seems to be started, but the error is always here :
(XXX.XXX.XXX.XXX is my public ip adress)
root@www:/bin# elasticsearch-0.15.0/bin/elasticsearch -f
[2011-02-21 22:26:47,896][INFO ][node ]
[Postmortem] {elasticsearch/0.15.0}[42337]: initializing ...
[2011-02-21 22:26:47,900][INFO ][plugins ]
[Postmortem] loaded []
[2011-02-21 22:26:52,199][INFO ][node ]
[Postmortem] {elasticsearch/0.15.0}[42337]: initialized
[2011-02-21 22:26:52,199][INFO ][node ]
[Postmortem] {elasticsearch/0.15.0}[42337]: starting ...
[2011-02-21 22:26:52,311][INFO ][transport ]
[Postmortem] bound_address {inet[/0:0:0:0:0:0:0:0:9300]},
publish_address {inet[/XXX.XXX.XXX.XXX:9300]}
Exception in thread "elasticsearch[cached]-pool-1-thread-1"
org.elasticsearch.discovery.zen.ping.ZenPingException: Failed to send
ping request over multicast on java.net.MulticastSocket@4b94ba17
at
org.elasticsearch.discovery.zen.ping.multicast.MulticastZenPing.sendPingReq uest(MulticastZenPing.java:
243)
at
org.elasticsearch.discovery.zen.ping.multicast.MulticastZenPing.ping(Multic astZenPing.java:
200)
at
org.elasticsearch.discovery.zen.ping.ZenPingService.ping(ZenPingService.jav a:
129)
at
org.elasticsearch.discovery.zen.ping.ZenPingService.pingAndWait(ZenPingServ ice.java:
111)
at
org.elasticsearch.discovery.zen.ZenDiscovery.findMaster(ZenDiscovery.java:
483)
at
org.elasticsearch.discovery.zen.ZenDiscovery.innterJoinCluster(ZenDiscovery .java:
242)
at org.elasticsearch.discovery.zen.ZenDiscovery.access
$500(ZenDiscovery.java:62)
at org.elasticsearch.discovery.zen.ZenDiscovery
$1.run(ZenDiscovery.java:227)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:
1110)
at java.util.concurrent.ThreadPoolExecutor
$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
Caused by: java.io.IOException: Operation not permitted
at java.net.PlainDatagramSocketImpl.send(Native Method)
at java.net.DatagramSocket.send(DatagramSocket.java:629)
at
org.elasticsearch.discovery.zen.ping.multicast.MulticastZenPing.sendPingReq uest(MulticastZenPing.java:
235)
... 10 more
[2011-02-21 22:27:22,339][WARN ][discovery ]
[Postmortem] waited for 30s and no initial state was set by the
discovery
[2011-02-21 22:27:22,339][INFO ][discovery ]
[Postmortem] elasticsearch/dWfWuCWwRBCnCN6CyzyVKw
[2011-02-21 22:27:22,344][INFO ][http ]
[Postmortem] bound_address {inet[/0:0:0:0:0:0:0:0:9200]},
publish_address {inet[/XXX.XXX.XXX.XXX:9200]}
[2011-02-21 22:27:22,344][INFO ][node ]
[Postmortem] {elasticsearch/0.15.0}[42337]: started

As you can see the server strt but why this error on transport ?
I've got a little idea, maybe it's caused by my firewall who don't
open the port 9300 ?
Could you explain my why ES try to ping my ip Instead of ping a local
adresse (like 127.0.0.1) ?
Sorry but i'm not (yet) an expert so please be indulgent.
Thanks.


(Clinton Gormley) #3

Hi Lecochien

On Mon, 2011-02-21 at 13:49 -0800, lecochien wrote:

Hi,
I've installed for the first time ES on my server (ubuntu 10.04
64bits) this error occure when i'm trying to start ES :
Failed to send ping request over multicast on java.net.MulticastSocket

As you can see the server strt but why this error on transport ?
I've got a little idea, maybe it's caused by my firewall who don't
open the port 9300 ?
Could you explain my why ES try to ping my ip Instead of ping a local
adresse (like 127.0.0.1) ?
Sorry but i'm not (yet) an expert so please be indulgent.
Thanks.

ElasticSearch does its best to guess which IP address it should bind to.
Sometimes, however, it chooses the wrong one for your particular setup.

If this happens, then all you need to do is to configure which IP
address or interface it SHOULD bind to.

http://www.elasticsearch.org/guide/reference/setup/configuration.html

In your second email, you say that you set it to bind to localhost,
which is fine for local development, except you won't be able to access
it from any other box, which kinda defeats the purpose :slight_smile:

clint


(lecochien) #4

Thanks clint,
So, to be clear with my config, if I only use ES in local (not exposed
like a REST api) but with python or php on the same server, it's a
safe solution to use host with 127.0.0.1 ip ?
Romain.

On 22 fév, 09:48, Clinton Gormley clin...@iannounce.co.uk wrote:

Hi Lecochien

On Mon, 2011-02-21 at 13:49 -0800, lecochien wrote:

Hi,
I've installed for the first time ES on my server (ubuntu 10.04
64bits) this error occure when i'm trying to start ES :
Failed to send ping request over multicast on java.net.MulticastSocket

As you can see the server strt but why this error on transport ?
I've got a little idea, maybe it's caused by my firewall who don't
open the port 9300 ?
Could you explain my why ES try to ping my ip Instead of ping a local
adresse (like 127.0.0.1) ?
Sorry but i'm not (yet) an expert so please be indulgent.
Thanks.

ElasticSearch does its best to guess which IP address it should bind to.
Sometimes, however, it chooses the wrong one for your particular setup.

If this happens, then all you need to do is to configure which IP
address or interface it SHOULD bind to.

http://www.elasticsearch.org/guide/reference/setup/configuration.html

In your second email, you say that you set it to bind to localhost,
which is fine for local development, except you won't be able to access
it from any other box, which kinda defeats the purpose :slight_smile:

clint


(Clinton Gormley) #5

On Tue, 2011-02-22 at 01:32 -0800, lecochien wrote:

Thanks clint,
So, to be clear with my config, if I only use ES in local (not exposed
like a REST api) but with python or php on the same server, it's a
safe solution to use host with 127.0.0.1 ip ?
Romain.

yes

clint


(system) #6