安装环境: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/rabbit@vm-10-154-156-227.log"} -rabbit sasl_error_logger {file,"/rabbitmq/log/rabbit@vm-10-154-156-227-sasl.log"} -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
相关推荐
可配置化shell脚本监控rabbitmq集群,如果rabbitmq运行异常,发送邮件通知管理员。亲自整理无任何坑。
common-io监听文件夹并发送rabbitmq,springboot整合rabbitmq,common-io监听文件夹变化,提取内容发送mq
Rabbitmq安装以及集群的搭建 并介绍了如何利用Rabbitmq本身监控集群里每台服务器的cpu、内存等的使用率,以及安装过程中遇到一些问题的解决方法。
prometheus监控服务器rabbimq服务,需要在虚拟机上安装探针服务,但是官网上没有提供rabbitmq_exproter,需要找第三方插件
于是私下里在自己腾讯云轻量级服务器安装了单机兔子先生。现在MQ的基本学习告一段落。感觉这文档还是挺有用的哈,,“应付”我们的日常开发暂时够用了。当然写的有点潦草,有一些细节知识点也未指出。欢迎大家批评...
2. 日志分析发现 nova,neutron 等模块都报告找不到相关的 queue 3. RabbitMQ 日志中 Error 已经在持续刷屏,但信息很笼统 4
3.1. cmd进到sbin目录,键入rabbitmq-plugins enable rabbitmq_management启用监控管理,然后重启Rabbitmq服务器。 (此处可以到windows 的服务中找到rabbitmq 服务进行重启) 8.2. 打开网址http://localhost:55672,...
RabbitMQ服务使用手册,详细的介绍了rabbitmq的原理、使用和监控
pm2-rabbitmq 用于Keymetrics的RabbitMQ模块描述PM2模块,用于监视关键的RabbitMQ服务器指标:连接/队列/通道/使用者/交换的数量消息总数/就绪消息/未确认消息的总数发布率/投放率要求该模块需要安装RabbitMQ(已...
1、java工具类RabbitmqUtil是本人封装好的直接使用 2、常用的方法都在里面 3、改一下初始化配置参数就行
监控错误日志并通过rabbitMq发送钉钉通知
RabbitMQ是一个消息代理,为应用程序提供消息收发平台,并在消息被接收前为其提供安全的“居所”,可用于数据传输、非阻塞操作、推送通知、发布与订阅和异步处理等场景.DB Monitor监控数据取/存流程:分别由zabbix...
Monitor-rabbitmq 适用于Rabbitmq的AWS Cloudwatch 使用Cloudwatch命名空间作为Resource/RabbitMQ RabbitMQ监视。 每个度量标准都具有队列名称,并具有其现有消息计数的数量。 名为TotalMessages的特殊度量标准,...
它充当 Nagios NPRE 插件端点,用于监控节点或单个队列的健康状况。 节点管理功能,例如修剪空闲连接和非活动队列。 功能 gamekeeper 具有三种操作模式,每种模式对应不同的功能子集,可通过以下子命令访问: 措施...
主要介绍了springboot+RabbitMQ+InfluxDB+Grafara监控实践,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了JAVA获取rabbitmq消息总数过程详解,公司使用的是rabbitMQ,需要做监控预警的job去监控rabbitMQ里面的堆积消息个数,如何使用rabbitMQ获取监控的队列里面的队列消息个数呢,需要的朋友可以参考下
这当中不仅包含了针对单台RabbitMQ服务器和RabbitMQ集群的讲解,还教导读者如何使用各种工具来进行监控。 本书内容浅显易懂,文笔风趣幽默。书中包含了丰富的、可以运行的示例程序源代码,读者可以自行下载并运行,...
支持持续集成、运营指标以及与其他企业系统集成 的各种 工具和插件 用于扩展 RabbitMQ 功能 的灵活 插件方法.HTTP-API、命令行工具和用于管理和监控RabbitMQ 的 UI. RabbitMQ 拥有数以万计的用户,是最受欢迎的开源...
RabbitMQ Nagios插件 这个 Nagios 插件的目的是检查一个或多个(单个或集群/镜像)Rabbitmq 服务器的健康状态。 功能 check_rabbitmq 插件具有以下功能(这些都与特定的虚拟主机相关): 检查所有队列是否跨集群...
rabbitmq-prometheus:核心RabbitMQ指标的简约Prometheus导出器