rabbitMQ安装及监控

安装环境:CentOS release 6.5 (Final)

官方安装:http://www.rabbitmq.com/install-rpm.html

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

查看版本命令:cat /etc/centos-release

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

一. rabbitMQ依赖erlang,先安装erlang环境

从Erlang的官网 http://www.erlang.org/download.html 下载最新的erlang安装包,我下载的版本是 erlang-1.1-1.x86_64.rpm或者otp_src_R13B04.tar.gz

安装源码:

rpm -i erlang-1.1-1.x86_64.rpm ----安装erlang

安装二:

tar zxvf otp_src_R13B04.tar.gz
cd otp_src_R13B04
./configure
make && make install

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

一般默认安装路径就可以,不需要制定安装路径

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

配置环境变量:

# vim /etc/profile 

ERL_HOME=/usr/local/erlang

PATH=$ERL_HOME/bin:$PATH

export ERL_HOME PATH

# source /etc/profile

查看是否安装成功

cd /usr/lib64/erlang/bin

[root@vm-10-154-156-227 bin]# erl
Erlang R14B04 (erts-5.8.5) [source] [64-bit] [smp:2:2] [rq:2] [async-threads:0] [kernel-poll:false]

Eshell V5.8.5  (abort with ^G)
1>

安装成功。

二.安装simplejson

需要安装一个比较新的Python版本。安装略。
需要安装simplejson。从此处下载最新的版本: http://pypi.python.org/pypi/simplejson#downloads 。我下载的版本是 simplejson-2.2.1.tar.gz
$ tar xvzf simplejson-2.2.1.tar.gz
$ cd simplejson-2.2.1
$ sudo python setup.py install

三.安装rabbitMQ

然后安装RabbitMQ Server。从此处下载源代码版本的RabbitMQ: http://www.rabbitmq.com/server.html。我下载的版本是 rabbitmq-server-2.8.1.tar.gz
$ tar xvzf rabbitmq-server-2.8.1.tar.gz
$ cd rabbitmq-server-2.8.1.tar.gz
$ make
# TARGET_DIR=/usr/local SBIN_DIR=/usr/local/sbin MAN_DIR=/usr/local/man make install
/usr/local/sbin/目录下出现了三个命令:
rabbitmqctl  rabbitmq-env  rabbitmq-server
安装成功。

配置环境(查了一下资料,网上写的有些不全,导致尝试了很多方法)Rabbitmq的配置文件有三个,位于/etc/rabbitmq/(目录需要新建)

(1)enabled_plugins, 设置允许的插件列表,该配置文档的格式为erlang的列表格式如

[rabbitmq_management,rabbitmq_visualiser].

(2)rabbitmq.conf,设置rabbitmq的运行参数。该配置文件中的每个参数为一个erlang的 tuple,结构为{Key,Value}, Key为atom类型, Value为一个term。其中几个关键参数为:

tcp_listerners  设置rabbimq的监听端口,默认为[5672]。

disk_free_limit  磁盘低水位线,若磁盘容量低于指定值则停止接收数据,默认值为

{mem_relative, 1.0},即与内存相关联1:1,也可定制为多少byte.

vm_memory_high_watermark,设置内存低水位线,若低于该水位线,则开启流控机制,默认值是0.4,即内存总量的40%。

hipe_compile 将部分rabbimq代码用HighPerformance Erlang compiler编译,可提升性能,该参数是实验性,若出现erlang vm segfaults,应关掉。

force_fine_statistics, 该参数属于rabbimq_management,若为true则进行精细化的统计,但会影响性能。

(3)rabbitmq-env.conf  rabbitmq的环境参数配置

RABBITMQ_NODE_PORT  端口设置,默认为5672

RABBITMQ_NODENAME   节点名称,默认为rabbit

MNESIA_BASE 后端存储目录  ,默认为/var/lib/rabbitmq/mnesia

LOG_BASE 日志目录,默认为/var/log/rabbitmq/

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

enabled_plugins 文件中包括

[rabbitmq_management,amqp_client,rabbitmq_management_agent,rabbitmq_mochiweb,webmachine].

符合erlang格式

rabbitmq.conf文件可以先默认为空,有需要在添加

[root@vm-10-154-156-xxx rabbitmq]# cat rabbitmq-env.conf
RABBITMQ_NODE_PORT=5672   
#HOSTNAME=
RABBITMQ_NODENAME=rabbit@vm-10-154-156-227
RABBITMQ_CONFIG_FILE=/app/rabbitmq-server-2.8.1/plugins
RABBITMQ_MNESIA_BASE=/rabbitmq/data       
RABBITMQ_LOG_BASE=/rabbitmq/log       
RABBITMQ_PLUGINS_DIR=/app/rabbitmq-server-2.8.1/plugins

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

四.启动rabbitMQ

找到sbin/目录,运行程序:
/usr/local/sbin/rabbitmq-server –detached

/usr/local/sbin/rabbitmq-server start/stop/restart

停止程序:
/usr/local/sbin/rabbitmqctl stop

查看启动

[root@vm-10-154-156-xxx rabbitmq]# ps -ef|grep rabbit
root      5062     1  0 May13 ?        00:04:07 /usr/lib64/erlang/erts-5.8.5/bin/beam.smp -W w -K true -A30 -P 1048576 -- -root /usr/lib64/erlang -progname erl -- -home /root -- -noshell -noinput -sname rabbit@vm-10-154-156-227 -boot /rabbitmq/data/rabbit@vm-10-154-156-227-plugins-expand/rabbit -kernel inet_default_connect_options [{nodelay,true}] -rabbit tcp_listeners [{"auto",5672}] -sasl errlog_type error -sasl sasl_error_logger false -rabbit error_logger {file,"/rabbitmq/log/[email protected]"} -rabbit sasl_error_logger {file,"/rabbitmq/log/[email protected]"} -os_mon start_cpu_sup false -os_mon start_disksup false -os_mon start_memsup false -mnesia dir "/rabbitmq/data/rabbit@vm-10-154-156-227" -noshell -noinput
root     10925  3793  0 11:12 pts/1    00:00:00 grep rabbit

查看端口

[root@vm-10-154-156-xxx rabbitmq]# netstat -napt|grep 5672
tcp        0      0 0.0.0.0:55672               0.0.0.0:*                   LISTEN      5062/beam.smp      
tcp        0      0 10.154.156.227:55672        10.58.100.158:54867         ESTABLISHED 5062/beam.smp      
tcp        0      0 :::5672                     :::*                        LISTEN      5062/beam.smp

五.监控

RabbitMQ提供了一个web的监控页面系统,这个系统是以Plugin的方式进行调用的。
首先,在rabbitmq-env.conf中配置好plugins目录的位置:RABBITMQ_CONFIG_FILE
将监控页面所需要的plugin下载到plugins目录下,这些plugin包括:
  mochiweb
  webmachine
  rabbitmq_mochiweb
  amqp_client
  rabbitmq_management_agent
  rabbitmq_management
下载路径位于:http://www.rabbitmq.com/plugins.html#rabbitmq_management

命令:

cd /etc/rabbitmq# rabbitmq-plugins enable rabbitmq_management

重新启动# rabbitmq-server start &

检查页面http://service-ip:55672

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

启动是遇到问题:

[root@leeon sbin]# rabbitmq-server start
Activating RabbitMQ plugins ...
0 plugins activated:

ERROR: unexpected epmd error: address

问题1:0 plugins activated:

检查 /etc/rabbitmq 下的配置文件

enabled_plugins 文件中包括

[rabbitmq_management,amqp_client,rabbitmq_management_agent,rabbitmq_mochiweb,webmachine].

rabbitmq-env.conf 文件RABBITMQ_PLUGINS_DIR=/app/rabbitmq-server-2.8.1/plugins (根据自己的实际目录)

plugins文件夹下,包括的文件

amqp_client-0.0.0.ez                        rabbitmq_management-0.0.0.ez
eldap-0.0.0-git.ez                          rabbitmq_management_agent-0.0.0.ez
erlando-0.0.0.ez                            rabbitmq_management_visualiser-0.0.0.ez
mochiweb-1.3-rmq0.0.0-git.ez                rabbitmq_mochiweb-0.0.0.ez
rabbitmq_auth_backend_ldap-0.0.0.ez         rabbitmq_shovel-0.0.0.ez
rabbitmq_auth_mechanism_ssl-0.0.0.ez        rabbitmq_shovel_management-0.0.0.ez
rabbitmq_consistent_hash_exchange-0.0.0.ez  rabbitmq_stomp-0.0.0.ez
rabbitmq_federation-0.0.0.ez                rabbitmq_tracing-0.0.0.ez
rabbitmq_jsonrpc-0.0.0.ez                   README
rabbitmq_jsonrpc_channel-0.0.0.ez           rfc4627_jsonrpc-0.0.0-git.ez
rabbitmq_jsonrpc_channel_examples-0.0.0.ez  webmachine-1.7.0-rmq0.0.0-hg.ez

问题:2:ERROR: unexpected epmd error: address

hostname-----查看主机名称

vm-10-154-156-xxx

添加hosts

vi /etc/hosts

127.0.0.1 vm-10-154-156-xxx

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

 参考链接:http://blog.csdn.net/historyasamirror/article/details/6827870

                   http://blog.csdn.net/huoyunshen88/article/details/33738393

猜你喜欢

转载自km-moon11.iteye.com/blog/2211032