[rabbitmq-discuss] getting started, broker runs; can't get status
Dmitriy Samovskiy
dmitriy.samovskiy at cohesiveft.com
Tue Feb 3 19:19:16 GMT 2009
Hi all,
Doug Barth wrote:
> We don't get exactly that error. Instead we are getting
> {error,address}.
>
> [root at db1 home]# erl -sname foo -cookie coo
> Erlang (BEAM) emulator version 5.6.3 [source] [64-bit] [smp:8]
> [async-threads:0] [hipe] [kernel-poll:false]
>
> Eshell V5.6.3 (abort with ^G)
> (foo at db1)1> net_adm:names().
>
> ... long pause ...
>
> {error,address}
> (foo at db1)2>
> BREAK: (a)bort (c)ontinue (p)roc info (i)nfo (l)oaded
> (v)ersion (k)ill (D)b-tables (d)istribution
>
Fixed.
According to net_adm man page [1], names/0 returns {error, address} when node can't
communicate with epmd.
We did net_adm:localhost() to see the local host name that erlang sees. It was an FQDN
(a.example.com). In /etc/hosts however, a.example.com resolved to an Internet-facing IP on
ISP's frontend, not to a private IP of the local box. With tcpdump, we observed SYN
packets in response to net_adm:names() call going out to the network to ISP's IP address,
instead of going locally to our epmd.
Once we changed /etc/hosts and put something like "127.0.0.1 a.example.com" there,
net_adm:names() started working and erlang is happy now.
Please note that this turned out to be totally unrelated to what we observed with snoopy,
even though some (all?) symptoms looked very similar.
[1] http://erlang.org/doc/man/net_adm.html
- Dmitriy
More information about the rabbitmq-discuss
mailing list