RabbitMQ 安装

Install Erlang from the Erlang Solutions repository or

  1. Follow the instructions under "Installation using repository" at Erlang Solutions.
++++++++++++++++++++++++++++++++++++++++++++++++++++++
Key   :   rpm --import http://packages.erlang-solutions.com/rpm/erlang_solutions.asc 
Yum   :   rpm --uvh  http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm #erlang_solutions.repo
++++++++++++++++++++++++++++++++++++++++++++++++++++++

Install monolithic Erlang from Erlang Solutions or

  1. Download and install the appropriate esl-erlang RPM from Erlang Solutions.
  2. Download and install the esl-erlang-compat RPM (direct download) produced by Jason McIntosh.

    This is needed since Erlang Solutions' monolithic packages provide "esl-erlang"; this package just requires "esl-erlang" and provides "erlang".

++++++++++++++++++++++++++++++++++++++++++++++++++++++

yum install esl-erlang
 wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.0/rabbitmq-server-3.6.0-1.noarch.rpm
rpm -ivh rabbitmq-server-3.6.0-1.noarch.rpm
++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

 

Run RabbitMQ Server

Customise RabbitMQ Environment Variables

The server should start using defaults. You can customise the RabbitMQ environment. Also see how to configure components.

service rabbitmq-server stop/start/etc.   service rabbitmq-server start

Note: The server is set up to run as system user rabbitmq. If you change the location of the Mnesia database or the logs, you must ensure the files are owned by this user (and also update the environment variables).

 

Enable RabbitMQ Plugins

rabbitmq-plugins list
rabbitmq-plugins enable rabbitmq_management
service rabbitmq-server restart
browser try http://localhost:15672 for newer versions of rabbitmq) & login via default user and password which is guest:guest &Port Access
 
PORTS

SELinux and similar mechanisms may prevent RabbitMQ from binding to a port. When that happens, RabbitMQ will fail to start. Make sure the following ports can be opened:

  • 4369 (epmd), 25672 (Erlang distribution)
  • 5672, 5671 (AMQP 0-9-1 without and with TLS)
  • 15672 (if management plugin is enabled)
  • 61613, 61614 (if STOMP is enabled)
  • 1883, 8883 (if MQTT is enabled)
It is possible to configure RabbitMQ to use different ports.

 

Default user access

The broker creates a user guest with password guest. Unconfigured clients will in general use these credentials. By default, these credentials can only be used when connecting to the broker as localhost so you will need to take action before connecting fromn any other machine.

See the documentation on access control for information on how to create more users, delete the guestuser, or allow remote access to the guest user.

Managing the Broker

To stop the server or check its status, etc., you can invoke rabbitmqctl (as an administrator). It should be available on the path. All rabbitmqctl commands will report the node absence if no broker is running.

  • Invoke rabbitmqctl stop to stop the server.
  • Invoke rabbitmqctl status to check whether it is running.

More info on rabbitmqctl.

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 broker always appends to the log files, so a complete log history is retained.

You can use the logrotate program to do all necessary rotation and compression, and you can change it. By default, this script runs weekly on files located in default /var/log/rabbitmq directory. See/etc/logrotate.d/rabbitmq-server to configure logrotate.

Controlling System Limits on Linux

RabbitMQ installations running production workloads may need system limits and kernel parameters tuning in order to handle a decent number of concurrent connections and queues. The main setting that needs adjustment is the max number of open files, also known as ulimit -n. The default value on many operating systems is too low for a messaging broker (eg. 1024 on several Linux distributions). We recommend allowing for at least 65536 file descriptors for user rabbitmq in production environments. 4096 should be sufficient for most development workloads.

There are two limits in play: the maximum number of open files the OS kernel allows (fs.file-max) and the per-user limit (ulimit -n). The former must be higher than the latter.

The most straightforward way to adjust the per-user limit for RabbitMQ is to edit the rabbitmq-env.conf to invoke ulimit before the service is started.

ulimit -S -n 4096

 

This soft limit cannot go higher than the hard limit (which defaults to 4096 in many distributions). The hard limit can be increased via /etc/security/limits.conf. This also requires enabling the pam_limits.somodule and re-login or reboot.

Note that limits cannot be changed for running OS processes.

For more information about controlling fs.file-max with sysctl, please refer to the excellent Riak guide on open file limit tuning.

Verifying the Limit

RabbitMQ management UI displays the number of file descriptors available for it to use on the Overview tab.

rabbitmqctl status
includes the same value.

 

The following command

cat /proc/$RABBITMQ_BEAM_PROCESS_PID/limits
can be used to display effective limits of a running process. $RABBITMQ_BEAM_PROCESS_PID is the OS PID of the Erlang VM running RabbitMQ, as returned by rabbitmqctl status.

 

Configuration Management Tools

Configuration management tools (e.g. Chef, Puppet, BOSH) provide assistance with system limit tuning. Ourdeveloper tools guide lists relevant modules and projects.

 

 

+++++++++++++++++++++++++++++++++++++++++++++

When I tried to login I have the same error:

enter image description here

So I created the rabbitmq.config inside the directory /etc/rabbitmq with this:

[{rabbit, [{loopback_users, []}]}].

Then invoke-rc.d rabbitmq-server start and both the console and the java client can access using guest/guest:

enter image description here

So, I think you have some other problem, if this procedure doesn't work, for example your RabbitMQ is unable to read the configuration or of some reason you have changed RABBITMQ_CONFIG_FILE

 

posted on 2016-01-21 11:53  baxk2001  阅读(343)  评论(0编辑  收藏  举报

导航