由于业务需求,须要使用到rabbitmq,使用的话确定是集群模式了,从网上找了不少攻略,好像不少都不可行,最后参考官网的安装步骤,加上本身的时间顺利完成。 建立好集群让运维作HA就可使用了。web
1、安装rabbitmq命令(推荐yum安装)cookie
#安装erlangapp
yun install erlang运维
安装epel工具
#su -c 'rpm -Uvh http://mirrors.yun-idc.com/epel/6/x86_64/epel-release-6-8.noarch.rpm'spa
get http://mirrors.yun-idc.com/epel/6/x86_64/epel-release-6-8.noarch.rpmserver
sudo rpm -ivh epel-release-6-8.noarch.rpmrabbitmq
#导入key:get
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6it
#安装yum仓库
yum install yum-priorities
#rpm --import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc
wget http://www.rabbitmq.com/rabbitmq-signing-key-public.asc
rpm --import rabbitmq-signing-key-public.asc
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.1.3/rabbitmq-server-3.1.3-1.noarch.rpm
yum install rabbitmq-server-3.1.3-1.noarch.rpm
#安装扩展应用(web管理工具)
rabbitmq-plugins enable rabbitmq_management
#启动mq服务
service rabbitmq-server start
2、集群操做命令(新机器加入到rabbitmq2为例)
#把cookie改成一致,路径 /var/lib/rabbitmq/.erlang.cookie
#能够采用copy或者手动修改的方式
#更改cookie文件权限和权限组
chmod 400 /var/lib/rabbitmq/.erlang.cookie
chown rabbitmq /var/lib/rabbitmq/.erlang.cookie
chgrp rabbitmq /var/lib/rabbitmq/.erlang.cookie
#中止操做机器节点
rabbitmqctl stop_app
#加入集群,若是须要持久化,不用加--ram,直接采用disk节点就好
rabbitmqctl join_cluster --ram rabbit@rabbitmq-2
#启动节点
rabbitmqctl start_app
成功界面以下:
3、注意事项,以A加入B为例,假设B是在运行的生产机器
一、操做集群必定要保证cookie的内容和权限一致,cookie路径 /var/lib/rabbitmq/.erlang.cookie,A和B必需要一致
二、要先中止A上全部节点 rabbitmqctl stop_app
三、加入集群命令 rabbitmqctl join_cluster --ram rabbit@B
四、启动节点 rabbitmqctl start_app
五、不须要在集群B上执行加入A的命令