Please see http://www.rabbitmq.com/install.html for install 
instructions.

For your convenience, a text copy of these instructions is available 
below. Please be aware that the instructions here may not be as up to 
date as those at the above URL.

===========================================================================


                                    RabbitMQ

     * News
     * Download
     * Documentation
     * Examples
     * Services
     * FAQ

   --------------------------------------------------------------------------

   This section contains server installation instructions for various
   platforms. You can download example programs, utilities, Java client
   libraries and bindings to various third-party management, monitoring and
   routing tools from http://www.rabbitmq.com/.

  Table of Contents

     * Windows

          * Installation from a complete bundle
          * Installation from separate components
          * Running the Server as an Application
          * Running the Server as a Service
          * Logging

     * Debian GNU/Linux and Ubuntu Linux

          * Installation Instructions
          * Running the Server
          * Logging

     * RPM based Linux (CentOS, Fedora, OpenSuse, RedHat, etc.)

          * Installation Instructions
          * Running the Server
          * Logging

     * Mac OS X with MacPorts

          * Installation Instructions
          * Running the Server

     * Generic Unix or Linux (BSD, Mac OS X, etc.)

          * Installation Instructions
          * Running the Server
          * Logging

     * Troubleshooting

Windows

  Installation from a complete bundle

   The bundle zip file contains all the files listed in the next section,
   including an Erlang system installer and the RabbitMQ broker binary
   distribution, as well as an archive of the Java librabbitmq client
   library.

  Installation from separate components

     * Install a recent version of Erlang. Any recent version should work,
       but we are developing against Erlang R11B-5 on Windows, which can be
       downloaded from http://www.erlang.org/download/otp_win32_R11B-5.exe
     * Download rabbitmq-server-version.zip, where version is the version of
       RabbitMQ Server you want to install.
     * Contained in the zip file is a directory named
       rabbitmq_server-version. You can either extract this folder into
       C:\Program Files\erl5.5.5\lib (or if you use a different Erlang
       version, the corresponding lib directory) or extract it elsewhere and
       set the environment variable ERLANG_HOME to point to your Erlang
       directory (e.g. C:\Program Files\erl5.5.5).
     * Within the sbin directory is a file rabbitmq-server.bat which may need
       customisation for your installation, especially if you use a different
       version of Erlang. Environment variables set within the batch file are

            ERLANG_HOME
                    Set this to the base directory of your Erlang
                    installation, e.g. C:\Program Files\erl5.5.5. The
                    RabbitMQ batch file expects the file bin\erl.exe to be
                    present at this location. The default setting determines
                    the base directory from the script location, which will
                    work in most cases.

            RABBITMQ_BASE
                    Defaults to the directory RabbitMQ in the user's
                    application data directory, e.g. C:\Documents and
                    Settings\User\Application Data\RabbitMQ. Under Windows
                    Vista the location would be slightly different, e.g.
                    C:\Documents and Settings\User\AppData\Roaming\RabbitMQ
                    This is the base directory containing sub-directories for
                    the RabbitMQ Server's database and log files.
                    Alternatively, set RABBITMQ_MNESIA_BASE and
                    RABBITMQ_LOG_BASE individually.

            RABBITMQ_MNESIA_BASE
                    Defaults to %RABBITMQ_BASE%\db. Set this to the directory
                    where Mnesia database files should be placed.

            RABBITMQ_LOG_BASE
                    Defaults to %RABBITMQ_BASE%\log. Log files generated by
                    the server will be placed in this directory.

            RABBITMQ_NODENAME
                    Defaults to rabbit. This can be useful if you want to run
                    more than one node per machine - RABBITMQ_NODENAME should
                    be unique per erlang-node-and-machine combination. See
                    clustering on a single machine for more.

            RABBITMQ_NODE_IP_ADDRESS
                    Defaults to 0.0.0.0. This can be changed if you only want
                    to bind to one network interface. Please note that
                    Windows 2000 (and maybe earlier versions) do not
                    understand "0.0.0.0" and will need to have this set
                    explicitly.

            RABBITMQ_NODE_PORT
                    Defaults to 5672.

            RABBITMQ_CLUSTER_CONFIG_FILE
                    Defaults to %RABBITMQ_BASE%\rabbitmq_cluster.config. If
                    this file is present it is used by the server to
                    auto-configure a RabbitMQ cluster. See the clustering
                    guide for details.

  Running the Server as an Application

   Currently, it's sufficient to change directory to
   rabbitmq_server-version\sbin and double-click the rabbitmq-server.bat
   file.

   The shell window that results displays a banner message, and reports on
   progress in the startup sequence, concluding with the message "broker
   running", indicating that the RabbitMQ broker has been started
   successfully. To shut down the server, close the shell window.
   Alternatively, use the rabbitmqctl stop command.

  Running the Server as a Service

   The server can be run as a service instead of an application. The server
   will run in the security context of the system account, without the need
   for a user to be logged in on a console. The server should not be run as a
   service and application simultaneously.

     * The rabbitmq-service.bat script in the sbin directory is used to
       manage the service. The rabbitmq-service.bat script recognises many of
       the same environment variables as rabbitmq-server.bat (see the
       previous section), as well as a few additional ones. Of particular
       importance are:

            RABBITMQ_BASE
                    This is the base directory containing sub-directories for
                    database and log files. The account that the service will
                    run as must have read and write access to this location.
                    The default location will not normally meet this
                    requirement, so this variable must be set explicitly and
                    the permissions must be verified.

            ERLANG_SERVICE_MANAGER_PATH
                    The default value of this path is C:\Program
                    Files\erl5.5.5\erts-5.5.5\bin. The given path must
                    contain the erlsrv.exe Erlang service wrapper script.

            RABBITMQ_SERVICENAME
                    This name will appear in the list of services reported by
                    the operating system.

            RABBITMQ_CONSOLE_LOG
                    Set this variable to new or reuse to have the console
                    output from the server redirected to a file named
                    RABBITMQ_SERVICENAME.debug in the default RABBITMQ_BASE
                    directory. If RABBITMQ_CONSOLE_LOG is set to new then a
                    new file will be created each time the service starts. If
                    RABBITMQ_CONSOLE_LOG is set to reuse then the file will
                    be overwritten each time the service starts. If
                    RABBITMQ_CONSOLE_LOG is unset then console output from
                    the server will be discarded.

     * Log in as an administrator and open a command shell (cmd.exe) in the
       sbin directory where the broker was installed. Install the service by
       executing

 rabbitmq-service.bat install

     * Ensure that a service with the name RABBITMQ_SERVICENAME now appears
       in the services control panel (services.msc). Confirm that the service
       account has full access to the RABBITMQ_BASE, RABBITMQ_MNESIA_BASE and
       RABBITMQ_LOG_BASE directories.
     * If the service account is different from the account that will run the
       rabbitmqctl.bat script then the Erlang security cookies for those
       accounts must be synchronised before running rabbitmqctl.bat. The
       cookie is stored in a file named .erlang.cookie and stored in the home
       or %APPDATA% directory of the account. Local service account cookies
       are normally stored in C:\WINDOWS\.erlang.cookie while user account
       cookies are typically stored in C:\Documents and
       Settings\User\.erlang.cookie. The contents of the two cookie files
       must be identical.
     * Execute

 rabbitmq-service.bat start

       to start the server. If the output from this command is "Service
       RABBITMQ_SERVICENAME started", then the service was started correctly.
       If the output reads "The process terminated unexpectedly" instead,
       then the service did not start correctly. Check that the environment
       variables are set correctly. The logfiles in RABBITMQ_BASE may also
       contain useful diagnostic information.
     * Confirm that the service list in the operating system service list
       (services.msc) reports a "Started" status for the service named
       RABBITMQ_SERVICENAME.
     * Ensure that the Erlang cookie file created by the service contains the
       same string as the one used by the account that will subsequently
       execute the rabbitmqctl.bat script.

   Refer to the service guide for a complete description of
   rabbitmq-service.bat arguments.

  Logging

   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 log files are created afresh every time the broker starts. In order to
   retain a complete log history the startup scripts append the contents to
   the corresponding .1 files prior to starting the broker.

   You can easily write your own log rotation script using the
   rotate_logs_all command in rabbitmq-multi.bat or the rotate_logs command
   in rabbitmqctl.bat if you want to perform log rotation selectively.

Debian GNU/Linux and Ubuntu Linux

  Installation Instructions

     * Install the rabbitmq-server package from your chosen distribution - at
       the time of writing, RabbitMQ is included in Debian unstable (sid),
       Debian testing (squeeze), Ubuntu 9.04 (Jaunty Jackalope), and the
       upcoming Ubuntu 9.10 (Karmic Koala).
     * Alternatively, install rabbitmq-server_version_all.deb, which you can
       download by hand, or by using our APT repository. The server should
       start with appropriate defaults. Note that the package depends on
       erlang-base packages, so if you use apt on a Debian distribution that
       has erlang-base packages available, all dependencies should be
       properly met.
     * To adjust the settings used for starting the server, edit
       /etc/rabbitmq/rabbitmq.conf, setting environment variables as
       described in the Generic Unix section below. You can additionally set
       NODE_COUNT in /etc/default/rabbitmq to define the number of nodes to
       run on a single machine.

  Running the Server

   The server is started as a daemon by default when the RabbitMQ Server
   package is installed. Start and stop the server as usual for Debian using
   invoke-rc.d rabbitmq-server stop/start/etc.

   The server is set up to run as system user rabbitmq. This means that if
   you change the location of the Mnesia database or logs as described below,
   you must ensure the files are owned by this user.

   The startup script waits for a limited amount of time, 30 seconds by
   default, for the broker nodes to start. When that time is exceeded a
   TIMEOUT is reported. The cause of this could be a misconfiguration or
   other error. However, it is also possible that the node simply is taking a
   long time to start up, perhaps because the machine it is running on is
   heavily loaded, or there are many persisted messages or durable queues and
   exchanges that need to be recovered. For that reason the timeout can be
   adjusted by setting MULTI_START_ARGS to "-maxwait timeout_in_seconds" in
   /etc/rabbitmq/rabbitmq.conf.

  Logging

   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 log files use logrotate program to do all the necessary rotation and
   compression (when needed). The script runs weekly, but you can easily
   change that. By default logrotate will handle files located in default
   /var/log/rabbitmq directory. See /etc/logrotate.d/rabbitmq-server for
   default logrotate configuration file.

RPM based Linux (CentOS, Fedora, OpenSuse, RedHat, etc.)

  Installation Instructions

     * The RabbitMQ server is included in Fedora, so for Fedora users we
       recommend to install the rabbitmq-server package via the
       distribution's package manager.
     * Alternatively, install rabbitmq-server-version-architecture.rpm (which
       you can download by hand at our download page). Note that the package
       depends on erlang package(s). We strongly recommend using your
       distribution's packaged version of Erlang to run the server. See EPEL
       if there is no official erlang package for your distribution.
     * To adjust the settings used for starting the server, edit
       /etc/rabbitmq/rabbitmq.conf, setting environment variables as
       described in the Generic Unix section below. You can additionally set
       NODE_COUNT in /etc/sysconfig/rabbitmq to define the number of nodes to
       run on a single machine.

  Running the Server

   The server is not started as a daemon by default when the RabbitMQ Server
   package is installed. Start and stop the server as usual using
   /sbin/service rabbitmq-server stop/start/etc. To start the daemon by
   default when the system boots, run chkconfig rabbitmq-server on.

   The server is set up to run as system user rabbitmq. This means that if
   you change the location of the Mnesia database or logs as described below,
   you must ensure the files are owned by this user.

   The startup script waits for a limited amount of time, 30 seconds by
   default, for the broker nodes to start. When that time is exceeded a
   TIMEOUT is reported. The cause of this could be a misconfiguration or
   other error. However, it is also possible that the node simply is taking a
   long time to start up, perhaps because the machine it is running on is
   heavily loaded, or there are many persisted messages or durable queues and
   exchanges that need to be recovered. For that reason the timeout can be
   adjusted by setting MULTI_START_ARGS to "-maxwait timeout_in_seconds" in
   /etc/rabbitmq/rabbitmq.conf.

  Logging

   Logging uses logrotate script in the same way as for Debian GNU

Mac OS X with MacPorts

   A portfile for the RabbitMQ server is included in MacPorts. From the
   MacPorts home page:

     The MacPorts Project is an open-source community initiative to design an
     easy-to-use system for compiling, installing, and upgrading either
     command-line, X11 or Aqua based open-source software on the Mac OS X
     operating system.

   Users of Mac OS X who do not use MacPorts can use the Generic Unix
   installation instructions below.

   The officially released MacPorts packaging may not always contain the
   lastest released version of RabbitMQ.

   If you wish to track the packaging from our development repository, you
   can use the portfile from the packaging/macports/ directory in the
   rabbitmq-server mercurial repository.

  Installation Instructions

   If you want to use the version distributed with MacPorts, installation is
   as simple as (sudo port sync followed by)

 sudo port install rabbitmq-server

   If, instead, you want to use the portfile from our source-code repository,
   follow these steps:

    1. Set up a local MacPorts repository.
    2. Retrieve and extract the latest stable rabbitmq-server snapshot.
    3. Move the contents of the directory
       rabbitmq-server-default/packaging/macports/ into the root of your
       local MacPorts repository.
    4. Run portindex in the root of your local MacPorts repository.
    5. Finally, run sudo port install rabbitmq-server.

  Running the Server

   To start the server, you can either use launchctl (see the instructions
   emitted during the sudo port install step) or you can start it from the
   command line with sudo -H -u rabbitmq rabbitmq-server.

   rabbitmqctl automatically (through sudo) runs in the context of the
   rabbitmq user so that the Erlang cookie can be read from
   $MACPORTS_PREFIX/var/lib/rabbitmq/.erlang.cookie.

Generic Unix or Linux (BSD, Mac OS X, etc.)

  Installation Instructions

     * Install a recent version of Erlang.
     * Download rabbitmq-server-generic-unix-version.tar.gz, where version is
       the version of RabbitMQ Server you want to install.
     * Contained in the tarball is a directory named rabbitmq_server-version.
       You can either extract the tarball into /usr/lib/erlang/lib directory
       (or wherever your Erlang installation places its application and
       library directory), which allows the RabbitMQ modules to be found by
       other Erlang applications, or extract it elsewhere.
     * Within the sbin directory is a shell script rabbitmq-server which may
       need customisation for your installation. Environment variables
       available for configuration are

            RABBITMQ_MNESIA_BASE
                    Defaults to /var/lib/rabbitmq/mnesia. Set this to the
                    directory where Mnesia database files should be placed.

            RABBITMQ_LOG_BASE
                    Defaults to /var/log/rabbitmq. Log files generated by the
                    server will be placed in this directory.

            RABBITMQ_NODENAME
                    Defaults to rabbit. This can be useful if you want to run
                    more than one node per machine - RABBITMQ_NODENAME should
                    be unique per erlang-node-and-machine combination. See
                    clustering on a single machine for more.

            RABBITMQ_NODE_IP_ADDRESS
                    Defaults to 0.0.0.0. This can be changed if you only want
                    to bind to one network interface.

            RABBITMQ_NODE_PORT
                    Defaults to 5672.

            RABBITMQ_CLUSTER_CONFIG_FILE
                    Defaults to /etc/rabbitmq/rabbitmq_cluster.config. If
                    this file is present it is used by the server to
                    auto-configure a RabbitMQ cluster. See the clustering
                    guide for details.

  Running the Server

   Invoke the rabbitmq-server shell script. This displays a banner message,
   and reports on progress in the startup sequence, concluding with the
   message "broker running", indicating that the RabbitMQ broker has been
   started successfully. To shut down the server just terminate the process.
   Alternatively, use the rabbitmqctl stop command.

   You can also start the server in "detached" mode with rabbitmq-server
   -detached, in which case the server process is backgrounded immediately
   and nothing is written to the console.

  Logging

   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.

   In order to retain a complete log history the startup scripts, by default,
   append the contents to the corresponding .1 files prior to starting the
   broker. You can easily set up log rotation process by creating logrotate
   script as it is done for Debian and RPM based distributions.

Troubleshooting

   If the server fails to start, examine the console output and the log files
   in the RABBITMQ_LOG_BASE directory for clues. Chances are there is a
   configuration error, e.g. the mnesia directory cannot be created or the
   TCP port on which RabbitMQ tries to listen is already taken.

   When the server fails to start, usually a crash dump file erl_crash.dump
   is created in the directory where the server was started. This can provide
   very detailed information on the causes of a start up failure, but its
   analysis requires Erlang expertise.

   If the server is not behaving as expected during operation, examine the
   log files for clues and use the rabbitmqctl commands from the admin guide
   to obtain further information on the server status.

   For problems encountered in the handling of AMQP traffic, the AMQP capture
   and analysis tool may help in the analysis.

   If all of the above fails, report the problem to support@rabbitmq.com and
   include the log files under RABBITMQ_LOG_BASE in your report.

   --------------------------------------------------------------------------

   RabbitMQ(TM) is a Trademark of Rabbit Technologies Ltd.
