rabbitmq集群搭建方法简介(测试机linux centos)
Posted hch的随笔 成功的秘诀在于恒心—迪斯雷利
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rabbitmq集群搭建方法简介(测试机linux centos)相关的知识,希望对你有一定的参考价值。
本文将介绍四台机器搭建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 [email protected]
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集群搭建方法简介(测试机linux centos)的主要内容,如果未能解决你的问题,请参考以下文章