RabbitMQ is easy to install on OS X with MacPorts using the documentation here:
http://www.rabbitmq.com/install.html#macports
However, I’ve found two problems.
First, by default the erlang vm isn’t installed with SSL support. Without SSL, you end up with some startup warnings that look like this:
rob@rs-mbp ~$ sudo rabbitmq-server Activating RabbitMQ plugins ... *WARNING* Undefined function crypto:des3_cbc_decrypt/5 *WARNING* Undefined function crypto:start/0 *WARNING* Undefined function ssl:close/1 *WARNING* Undefined function ssl:connection_info/1 *WARNING* Undefined function ssl:controlling_process/2 *WARNING* Undefined function ssl:peercert/1 *WARNING* Undefined function ssl:peername/1 *WARNING* Undefined function ssl:recv/3 *WARNING* Undefined function ssl:send/2 *WARNING* Undefined function ssl:sockname/1 *WARNING* Undefined function ssl:ssl_accept/3 0 plugins activated:
This is easily fixed by rebuilding erlang with the following:
rob@rs-mbp ~$ sudo port install erlang +ssl
The second problem is that when started, the server hangs and then fails after a minute or two with the following error:
ERROR: epmd error for host "rs-mbp": address (unable to establish tcp connection)
This is easily fixed by making sure that your machine name (rs-mbp in my case) is in /private/etc/hosts:
## # Host Database # # localhost is used to configure the loopback interface # when the system is booting. Do not change this entry. ## 127.0.0.1 localhost rs-mbp 255.255.255.255 broadcasthost ::1 localhost fe80::1%lo0 localhost
Awesome. I was scratching my head over that. Thanks Rob.
Thanks on my behalf as well.
Thank you. You saved my life!
This cheat sheet should help you
http://realengineer.com/engineering-courses/computer-coding-cheat-sheet/
Another Save! my etc/hosts had an old IP address in it.
ditto. Thanx for this!
Same here. Thanks for the post!
*bows*
Thanks, saved me some hassle
Thanks, you’re a life saver.
I appreciate the pointers. I had a slightly different experience.
1. I think the latest macport of RabbitMQ forces the SSL install of Erlang.
2. I spent not jut a little bit of time trying to alter the /etc/hosts file. You MUST make sure that the “hosts.ac” file is updated or deleted or the changes to the private hosts file will not survive a reboot.
3. Just aliasing my machine name to 127.0.0.1 did not actually start the rabbitmq server correctly on a reboot. The launchctl agent provided by macports starts the “rabbitmq@localhost” but the node created during the installation (with the erlang cookie) is set to the “rabbitmg@machinename”.
4. I think that there are two solutions: one, alter the launchctl agent (unloading it, changing it and reloading) or, two, setting a rabbitmq-env.conf file and forcing the node name to be equal to the installed node. I chose the latter and it worked.
Thanks a ton – the host entry solved my problem. Thanks again for sharing – it would have taken long time for me to resolve .. appreciate your write up.
Many many thanks to this. Solved that epmd problem of mine.
Thanks, the solution for the hostname saved my life.
Thanks!
God God. This was driving me nuts. Thx.
helpful
Kudos to you
Thanks, save my life.