本文将介绍四台机器搭建rabbitmq集群:
IP和主机名(每台机器已安装RabbitMQ 3.5.6, Erlang 18.1)
-
192.168.87.73 localhost73
-
192.168.87.74 localhost74
-
192.168.87.75 localhost75
-
192.168.87.76 localhost76
将上述IP和主机名添加到hosts文件( vim /etc/hosts)
Rabbitmq的集群是依赖于erlang的集群来工作的,所以必须先构建起erlang的集群环境。Erlang的集群中各节点是通过一个magic cookie来实现的,这个cookie存放在 /var/lib/rabbitmq/.erlang.cookie 中,文件是400的权限。所以必须保证各节点cookie保持一致,否则节点之间就无法通信。
设置cookie:vi /var/lib/rabbitmq/.erlang.cookie
本例子中假设第一个节点cookie为:ZTNMCISEYCEMUZMMHFAHABC ,那么在每个节点执行以下命令:
# chmod 700 /var/lib/rabbitmq/.erlang.cookie
# echo -n "ZTNMCISEYCEMUZMMHFAHABC" > /var/lib/rabbitmq/.erlang.cookie
# chmod 400 /var/lib/rabbitmq/.erlang.cookie
开通防火墙上集群通信端口
启动防火墙:systemctl start firewalld.service
# firewall-cmd --permanent --add-port={4369/tcp,25672/tcp,5672/tcp}
# firewall-cmd --reload
组件集群
我们以localhost73为主节点,在localhost74上执行以下命令:
localhost74 # rabbitmqctl stop_app
localhost74 # rabbitmqctl join_cluster rabbit@localhost73
localhost74 # rabbitmqctl start_app
然后分别依次在localhost75、localhost76上执行即可。
更改节点属性
#rabbitmqctl stop_app –停止rabbitmq服务
#rabbitmqctl change_cluster_node_type disc –更改节点为磁盘节点
rabbitmqctl change_cluster_node_type ram –更改节点为内存节点
#rabbitmqctl start_app –开启rabbitmq服务
本例子中我们将主节点localhost73改为磁盘节点,至此我们集群搭建完毕,如下图:
Rabbitmq的web管理插件启动
rabbitmq-plugins enable rabbitmq_management 启动
rabbitmq-plugins disable rabbitmq_management 关闭
开启后我们就可以访问rabbitmq自带的web管理了,访问地址:http://192.168.87.73:15672,用户名密码:guest,guest
如果不是本机访问那么需要新添加用户,因为guest这个用户只能在本机访问,所以我们要新增一个用户并赋予权限。
新增web管理用户
添加用户:rabbitmqctl add_user admin 123456
添加权限:rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
修改用户角色rabbitmqctl set_user_tags admin administrator
添加完用户通过地址http://192.168.87.73:15672和刚才创建的用户名和密码登录可以查看我们配置的集群:
RabbitMQ的安装及集群搭建方法 - 朱小厮的博客 - CSDN博客
http://blog.csdn.net/u013256816/article/details/53524766
RabbitMQ 高可用集群搭建及电商平台使用经验总结 - 王清培 - 博客园
http://www.cnblogs.com/wangiqngpei557/p/6158094.html
RabbitMQ常用命令 - 朱小厮的博客 - CSDN博客
http://blog.csdn.net/u013256816/article/details/53524814
RabbitMQ集群、镜像部署配置 - 爱你爱自己 - 博客园
http://www.cnblogs.com/grimm/p/5771038.html