SSH, RabbitMQ, Protocol 'inet_tcp': register/listen error: econnrefused - rabbitmq

When I try to run on my server machine command
./rabbitmq-server
I the get following:
WARNING: Removing trailing slash from RABBITMQ_LOG_BASE
Removing trailing slash from RABBITMQ_MNESIA_BASE
Protocol 'inet_tcp': register/listen error: econnrefused
Backstory:
This is my first time I'm trying to install RabbitMQ-Server just using ssh.
Step-by-step what I did so far would be:
wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.0/rabbitmq-server-3.6.15.zip
unzip rabbitmq-server-3.6.15.zip
nano Makefile # change prefix to rabbitMQ in home directory PREFIX ?= /home/user/rabbitmq
gmake
gmake install
cd ~/rabbitmq/lib/erlang/lib/rabbitmq_server-3.6.15/sbin/
export RABBITMQ_MNESIA_BASE=/home/user/rabbitmq/lib/erlang/lib/rabbitmq_server-3.6.15/sbin/
export RABBITMQ_LOG_BASE=/home/user/rabbitmq/
./rabbitmq-server
And here comes the error. I was told that maybe "unlocking" ports would do the trick, but
I don't know how to do that
I don't know if that's the case

The error Protocol 'inet_tcp': register/listen error: econnrefused means that the Erlang node tried to connect to epmd (the Erlang port mapper daemon) to register its name, but failed to connect.
That shouldn't happen: epmd should be started when the Erlang node starts up. You could try running epmd manually in the shell, and see if it reports any errors.
If it says failed to bind socket: Operation not permitted, check if something else is using port 4369 (which is the port that epmd tries to listen on).

Related

can't start rabbitmq-server after installation

I'm trying to use rabbitmq for a django tutorial but when I want to start the server I get this error:
~$ sudo rabbitmq-server
Configuring logger redirection
14:49:57.041 [error]
14:49:57.044 [error] BOOT FAILED
BOOT FAILED
14:49:57.044 [error] ===========
===========
14:49:57.044 [error] ERROR: could not bind to distribution port 25672, it is in use by another node: rabbit#wss
ERROR: could not bind to distribution port 25672, it is in use by another node: rabbit#wss
14:49:57.045 [error]
14:49:58.046 [error] Supervisor rabbit_prelaunch_sup had child prelaunch started with rabbit_prelaunch:run_prelaunch_first_phase() at undefined exit with reason {dist_port_already_used,25672,"rabbit","wss"} in context start_error
14:49:58.046 [error] CRASH REPORT Process <0.153.0> with 0 neighbours exited with reason: {{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,"rabbit","wss"}}},{rabbit_prelaunch_app,start,[normal,[]]}} in application_master:init/4 line 138
{"Kernel pid terminated",application_controller,"{application_start_failure,rabbitmq_prelaunch,{{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,\"rabbit\",\"wss\"}}},{rabbit_prelaunch_app,start,[normal,[]]}}}"}
Kernel pid terminated (application_controller) ({application_start_failure,rabbitmq_prelaunch,{{shutdown,{failed_to_start_child,prelaunch,{dist_port_already_used,25672,"rabbit","wss"}}},{rabbit_prelau
Crash dump is being written to: erl_crash.dump...done
I've searched for port to see that if it's in use or not and I used lsof -i :25672 and I get nothing.
I don't know too much about these things so if you need anything please tell me.
Try:
sudo lsof -i :25672
sudo kill <PID>
sudo rabbitmq-server
Where <PID> is the process ID that is occupying port 25672
I have encountered this issue. I figured out that this issue is coming because the rabbitmq-server is already running on the machine.
I have used the following command
rabbitmqctl.bat status to know the status of the rabbitmq-server. This helped me to know if the server is up or down.
If it is up, this could the reason you are getting the error that you have specified in your post.
You can issue the following command to make the server down
rabbitmqctl.bat stop
Now you can try starting the rabbitmq-server by issuing the following command
rabbitmq-server start
Note that I am using Windows. And I have executed these commands by pointing the command prompt to C:\Program Files\RabbitMQ\rabbitmq_server-3.8.14\sbin as my rabbitmq installation directory is C:\Program Files\RabbitMQ\rabbitmq_server-3.8.14.
I have encountered this before. Here is what caused it and how I fixed it:
This is one of those commands which requires the magic word sudo (i.e it needs a superuser privilege).
If you forget to add sudo to the command, it begins the process but later fails when it hits a superuser-only roadblock. This leaves you with an incomplete process. Now when you decide to add sudo, it attempts the same process again but finds out that someone without the right privilege has made a mess or is still messing around.
Then the solution will be to cancel out whatever the first command has started and try again.
sudo lsof -i :25672
This list out details about the port 25672
You will see the PID (process ID) e.g 1301
Then stop the process on that port with:
sudo kill <PID>
for example, sudo kill 1301
And make sure you are killing the right process if not you may get into trouble.
Now, retry the command with sudo:
sudo rabbitmq-server
ALSO,
In most cases, this error occurs because without deliberately stopping the rabbitmq-server, it always keeps running even after you restart you system.
another way to stop rabitmq server windows+R then type "services.msc" and then find for RabitMq.slelect and stop from left top corner.
Then re run your rabitmq server.
-Hi guys, I am putting up an answer that can help Googlers to run multiple rabbitmq-server on the same machine. Trying to achieve the latter, I ran into a similar error reported in the first place and solved that by defining:
export RABBITMQ_DIST_PORT=anything_other_than_25672
as stated in the documentation:
https://www.rabbitmq.com/networking.html#epmd-inet-dist-port-range
if you are using windows go to task manager and stop rabbitmq from running...
then reload the rabbitmq-server
For Linux others answered but in Windows you should press Ctrl+Alt+delete and select task management and in that end proccess that depends on erlang.
Note that it requires Administrator previlage.
Now enter this command to start rabbitmq-server:
rabbitmq-server start
Every time you restart your computer you should do these steps.For prevent do them again you should stop rabbitmq service from startup services.
went through same problem in windows, it is already running after installation as a service
so just enable the plugins from the rabbitmq commandline by entering the code as
rabbitmq-plugins enable management_plugin
than go to the localhost:15672 and good to go.
This means that your port 25672 is already in use
try: -
sudo lsof -i :25672
sudo kill <PID>
and now start your rabbitmq server using
sudo rabbitmq-server

node with name "rabbit" already running after changing the Erlang cookie

I'm trying to create a two node rabbitmq cluster. I've setup the rabbitmq server successfully on both nodes. After replacing the slave's node cookie with the master's .erlang.cookie. System is unable to start rabbitmq app.
I'm executing the following commands:
nohup rabbitmq-server restart &
rabbitmqctl start_app
/sbin/service rabbitmq-server stop
nohup is generating the following logs in /var/lib/rabbitmq/nohup.log
ERROR: node with name "rabbit" already running on "ip-172-31-83-71"
ERROR: node with name "rabbit" already running on "ip-172-31-83-71"
ERROR: node with name "rabbit" already running on "ip-172-31-83-71"
Also terminal is following the following error:
Error: unable to perform an operation on node 'rabbit#ip-172-31-83-71'. Please see diagnostics information and suggestions below.
DIAGNOSTICS
===========
attempted to contact: ['rabbit#ip-172-31-83-71']
rabbit#ip-172-31-83-71:
* connected to epmd (port 4369) on ip-172-31-83-71
* epmd reports: node 'rabbit' not running at all
no other nodes on ip-172-31-83-71
* suggestion: start the node
Current node details:
* node name: 'rabbitmqcli-26458-rabbit#ip-172-31-83-71'
* effective user's home directory: /var/lib/rabbitmq
* Erlang cookie hash: aoPchC2KIy7esHVGVNLP4w==
I've also tried by revert the .erlang.cookie and in this case it's working fine. Can anyone please guide me what I'm missing?

Cannot start rabbitmq, 'node down' Ubuntu 16.04

Similar to RabbitMQ has Nodedown Error. But, this is for Ubuntu 16.04 the working solution, posted below, differs from the windows one as well.
Something has gone wrong with my rabbitmq server. Trying to start the application gives an error:
$sudo rabbitmqctl start_app
Starting node rabbit#daniel ...
Error: unable to connect to node rabbit#daniel: nodedown
DIAGNOSTICS
===========
attempted to contact: [rabbit#daniel]
rabbit#daniel:
* connected to epmd (port 4369) on daniel
* epmd reports: node 'rabbit' not running at all
no other nodes on daniel
* suggestion: start the node
current node details:
- node name: 'rabbitmq-cli-6647#daniel'
- home dir: /var/lib/rabbitmq
- cookie hash: T1R4ztWXXH1w2IQe+fui9g==
Currently the only way I know of solving this is uninstalling/reinstalling rabbitmq. But, I'm hoping a more sensible solution is possible...
This is the important part of that message:
node 'rabbit' not running at all
You need to start RabbitMQ with systemctl start rabbitmq-server. You should also check the logs to see why it wasn't running in the first place.
Try to run it with sudo rabbitmq-server

Redis as service fails with error code 87

I have installed Redis-64 using the chocolately package. When I try and install redis as a service on windows with command:
redis-server.exe --service-install
I get the following error:
# HandleServiceCommands: system error caught. error code=1073, message = CreateService failed: unknown error
I have also tried just executing the exe on its own, but get another different error:
# Creating Server TCP listening socket *:6379: bind: No such file or directory
Has anyone else got this error before?
Go to redis path and then
1) C:\Program Files\Redis>redis.windows.conf it will open file
2) Change port to 16379(higher) then run
3) C:\Program Files\Redis>redis-server.exe redis.windows.conf
I had the same error when running the exe. (No such file or directory)
It worked when using a higher port in redis.windows.conf:
port 16379
and then run
c:\Program Files\Redis>redis-server.exe redis.windows.conf
What is meant by run
cd to c:\Program Files\Redis
then:
run redis-server.exe redis.windows.conf on command prompt
Changing the port to higher has solved the error for me.
Change the port in two files
redis.windows-service.conf and redis.windows.conf
And then run
c:\Program Files\Redis>redis-server.exe redis.windows.conf
c:\Program Files\Redis>redis-server.exe redis.windows-service.conf
After run you can see below description
For me the default port was already in use. I checked this by:
Pressing Windows + R
Typing resmon.exe
Going to Network > Listening Ports
There I saw that I already had a redis process running on port 6379, so I:
Opened Task Manager
Found redis-server.exe
Right click > End task
You can also end the process by running redis-server --service-stop.
Then redis-server --service-start worked as expected, no need to change config files.

"node with name "rabbit" already running", but also "unable to connect to node 'rabbit'"

Rabbitmq server does not start, saying it's already running:
$: rabbitmq-server
Activating RabbitMQ plugins ...
0 plugins activated:
node with name "rabbit" already running on "android-d1af002161676bee"
diagnostics:
- nodes and their ports on android-d1af002161676bee: [{rabbit,52176},
{rabbitmqprelaunch2254,
59205}]
- current node: 'rabbitmqprelaunch2254#android-d1af002161676bee'
- current node home dir: /Users/Jordan
- current node cookie hash: ZSx3slRJURGK/nHXDTBRqQ==
But, rabbitmqctl seems to think otherwise:
rabbitmqctl -n rabbit status
Status of node 'rabbit#android-d1af002161676bee' ...
Error: unable to connect to node 'rabbit#android-d1af002161676bee': nodedown
diagnostics:
- nodes and their ports on android-d1af002161676bee: [{rabbit,52176},
{rabbitmqctl2462,59256}]
- current node: 'rabbitmqctl2462#android-d1af002161676bee'
- current node home dir: /Users/Jordan
- current node cookie hash: ZSx3slRJURGK/nHXDTBRqQ==
Any takers?
The rabbitmq server was running somewhere but it just couldn't be connected to.
One of the following will mention something about rabbits:
$: ps aux | grep epmd
$: ps aux | grep erl
Kill the process with kill -9 {pid of rabbitmq process}
i was having the same problem then I realized I was not issuing the right command.
./rabbitmqctl stop
this works everytime, although it does take down erlang runtime too. also mind where your config file.
I used rabbitmqctl stop and then restarted using rabbitmq-server as root.
This issue can be caused by two issues:
Rabbit is already running on the server. If that is the case, use the answer you found of killing the currently running process (ps aux | grep rabbit | grep -v grep)
You have changed the IP address of your machine but not changed the /etc/hosts file to reflect the new IP address of the machine.
The more common of the issues is the first, but the harder to find is the second (especially if you have rabbit running on the other machine. If rabbit is installed on the other machine it will look at the old IP address and would see another machine already running rabbitmq and give you the same error. This has caused me grief in the past.
I was having this same error # Win 7, but the solutions above did not worked for me, what did solved was to remove and reinstall the service. Using a console with admin rights:
rabbitmq-service remove
rabbitmq-service install
I hope this might help someone else too
$CD RabbitMQ Server\rabbitmq_server-3.7.8\sbin
rabbitmq-service remove
rabbitmq-service install
Go : windows Services
Find : RabbitMQ and Start it
after this Enable plugin :
rabbitmq-plugins enable rabbitmq_management
In my case under Ubuntu 11.10 it helped to
#rabbitmqctl cluster MASTER SLAVE
#rabbitmqctl start_app
before I always got this error message...
Using admin console, in Win 2012R2 ver 3.5.5 rabbit, got it to work using the remove and install then rabbitmq-server restart
then ctr-c to terminate the job, then I was able to use the windows service console and start the rabbitMq service.
In my case(windows),
1. I just ran the stop service.
2. The started the service.