If you should ever need to install RabbitMQ manually, this is how to do it:
| Description | Download | |
|---|---|---|
| Packaged for Windows systems (zip) | rabbitmq-server-windows-2.8.2.zip | (Signature) |
Run the Erlang Windows Binary File. Erlang will appear in the Start Menu, and \erlx.x.x\bin\erl.exe will be in C:\Program Files (x86) or C:\Program Files, depending on your platform and whether you chose a 32bit or 64bit version of Erlang.
If you have an existing RabbitMQ installation with the broker running as a service and you installed an Erlang VM with a different architecture then you must uninstall the service before updating ERLANG_HOME.
Set ERLANG_HOME to where you actually put your Erlang installation, e.g. C:\Program Files\erlx.x.x (full path). The RabbitMQ batch files expect to execute %ERLANG_HOME%\bin\erl.exe.
Go to Start > Settings > Control Panel > System > Advanced > Environment Variables. Create the system environment variable ERLANG_HOME and set it to the full path of the directory which contains bin\erl.exe.
Download rabbitmq-server-windows-2.8.2.zip from the link above.
From the zip file, extract the folder named rabbitmq_server-2.8.2 into C:\Program Files\RabbitMQ (or somewhere suitable for application files).
Within the rabbitmq_server-2.8.2\sbin directory are some scripts which run commands to control the RabbitMQ server.
The RabbitMQ server can be run as either an application or service (not both).
Log in as an administrator. To see the output, run these from a Command Prompt in the sbin directory.
Note: On Windows Vista (and later) you will need to elevate privilege (e.g. right-click on the icon to select Run as Administrator).
You will need to navigate to rabbitmq_server-2.8.2\sbin to run commands if your system path does not contain the RabbitMQ sbin directory.
Erlang Security Cookies used by the service account and the user running rabbitmqctl.bat must be synchronised for rabbitmqctl.bat to function.
To ensure Erlang cookie files contain the same string, copy the .erlang.cookie file from the Windows directory (normally C:\WINDOWS\.erlang.cookie) to replace the user .erlang.cookie. The user cookie will be in the user's home directory (%USERPROFILE%), e.g. C:\Documents and Settings\%USERNAME%\.erlang.cookie or C:\Users\%USERNAME%\.erlang.cookie (Windows Vista and later).
By default, the RabbitMQ logs and Mnesia database are stored in the current user's Application Data directory e.g. C:\Documents and Settings\%USERNAME%\Application Data or C:\Users\%USERNAME%\AppData\Roaming (Windows Vista and later).
Execute echo %APPDATA% at a Command Prompt to find this directory. Alternatively, Start > Run %APPDATA% will open this folder.
The application is started by the rabbitmq-server.bat script in sbin.
Run the command
rabbitmq-server -detachedAlternatively, you can double-click the rabbitmq-server.bat file in Windows Explorer.
If you start by double-clicking, a Command Prompt window opens, displays a banner message, reports on progress in the startup sequence, and concludes with "broker running". This shows that the RabbitMQ broker has been started successfully.
If you started without the -detached option, e.g. by double-clicking, you will need a second Command Prompt window to control the application cleanly. Note: Closing the original Command Prompt window will forcefully shut down a server started this way.
The service will run in the security context of the system account without the need for a user to be logged in on a console. This is normally more appropriate for production use. The server should not be run as a service and application simultaneously.
The service runs using the rabbitmq-service.bat script in sbin.
Note: After setting environment variables, you may need to install the service again.
The rabbitmq-service.bat script recognises many of the same environment variables as rabbitmq-server.bat, as well as a few additional service environment variables.
Install the service by running
rabbitmq-service install
A service with the name defined by RABBITMQ_SERVICENAME should now appear in the Windows Services control panel (Start > Run services.msc).
To manage the service (install, remove, start, stop, enable, disable), use rabbitmq-service.bat commands. You can also use the Windows Services panel (services.msc) to perform some of the same functions as the service script.
To start the broker, execute
rabbitmq-service start
If the output from this command is "Service RABBITMQ_SERVICENAME started", then the service was started correctly.
Confirm the service named RABBITMQ_SERVICENAME
reports a "Started" status in Services:
Start > Run services.msc.
To stop the broker or check its status, use rabbitmqctl.bat in sbin (as an administrator).
Use rabbitmqctl stop.
Use rabbitmqctl status. All rabbitmqctl commands will report the node absence if no broker is running (i.e. nodedown).
More info on rabbitmqctl
Output from the server is sent to a RABBITMQ_NODENAME.log file in the RABBITMQ_LOG_BASE directory. Additional log data is written to RABBITMQ_NODENAME-sasl.log.
The broker always appends to the log files, so a complete log history is retained.
You can rotate logs using rabbitmqctl rotate_logs.
In the event that the erlang VM crashes whilst RabbitMQ is running as a service, rather than writing the crash dump to the current directory (which doesn't make sense for a service) it is written to an erl_crash.dump file in the base directory of the RabbitMQ server (set by the RABBITMQ_BASE environment variable, defaulting to %APPDATA%\RabbitMQ otherwise).