安装废了一番周折,中间需要装一个socat,网上各种过时的地址

无奈去socat官网,结果提供编译安装,编译安装完yum install rabbitmq的时候仍然提示缺少需要的依赖,烦,好在折腾两个小时最后装上了,简述步骤如下:


需要的rpm:

socat-1.7.1.3-1.el6.rf.x86_64.rpm
rabbitmq-server-3.6.15-1.el6.noarch.rpm
erlang-20.2.2-1.el6.x86_64.rpm



注意​:如果想装其他版本的,务必关注一下erlang和rabbitmq的对应关系,传送门(​​http://www.rabbitmq.com/which-erlang.html​​)


各自的下载原地址​这些rpm的地址随时可能过期,我有一个链接可以献给看官 链接:​​https://pan.baidu.com/s/1pMVT9KR​​ 密码:5ff1​):

socat的地址

​​

后两个从官网找到的:

CentOS 6.4 安装 rabbitmq(3.6.15)_rabbitmq

​​

​​

​​


也可以直接去erlang官网下载:

​​


下载完后,安装顺序如下:

erlang
socat
rabbitmq

命令均为:
yum install xxxxx.rpm



注册为服务并启动,命令:

chkconfig rabbitmq-server on
/sbin/service rabbitmq-server start



因为默认的guest用户只能在本地登陆,所以我们增加用户并设定角色

rabbitmqctl add_user admin admin
rabbitmqctl set_user_tags admin administrator management



给用户增加vhost的访问权限​(默认会有一个vhost 路径是 "/",如果不够用可以使用命令添加一个vhost: ​rabbitmqctl add_vhosts test_host,​​相关内容传送门​​)

#格式如下
rabbitmqctl set_permissions -p VHostPath User <conf> <write> <read>
#实际命令
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"


其中,<conf> <write> <read>的位置分别用正则表达式来匹配特定的资源,具体写法本文暂不提供


 ​启动管理后台:

rabbitmq-plugins enable rabbitmq_management
/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT



然后访问该机器的15672就能进入管理后台(http://ip:15672)了,密码账号均为admin


卸载rabbitmq:

yum list installed|grep rabbitmq

yum remove [上面命令输出的结果]

find / -name rabbitmq|xargs rm -rf



---------------------------------2018年4月19日追加-----------------------------------------------

其实只要配置了阿里的rpel源,只需要安装rabbitmq的rpm包即可,依赖关系会自动被解析。

配置阿里rpel源,​​传送门​


默认安装路径:/usr/lib/rabbitmq/lib/rabbitmq_server-3.6.15


1、复制某一个节点的 /var/lib/rabbitmq/.erlang.cookie 到所有其他节点的相同位置,覆盖原文

设置 Erlang Cookie Erlang Cookie 文件:/var/lib/rabbitmq/.erlang.cookie。这里将 node1 的该文件复制到 node2、node3,由于这个文件权限是 400,所以需要先修改 node2、node3 中的该文件权限为 777:

# chmod 777 /var/lib/rabbitmq/.erlang.cookie

然后将 node1 中的该文件拷贝到 node2、node3,最后将权限和所属用户/组修改回来:

# chmod 400 /var/lib/rabbitmq/.erlang.cookie
# chown rabbitmq /var/lib/rabbitmq/.erlang.cookie
# chgrp rabbitmq /var/lib/rabbitmq/.erlang.cookie


2、子节点加入集群(需要维护hosts,并且主机名和hosts一致):

rabbitmqctl join_cluster rabbit@fscp-master



3、集群开启高可用

rabbitmqctl set_policy ha-allqueue "^" '{"ha-mode":"all"}'



4、修改一个节点为RAM


rabbitmqctl stop_app

rabbitmqctl change_cluster_node_type ram

rabbitmqctl start_app

​参考​​​ ​​参考​

​官方配置相关文档​