集群管理
3台虚拟机
192.168.181.140-node-linux140
192.168.181.141-node-linux141
192.168.181.142-node-linux142
安装
- 在linux140、linux141、linux142三台Linux虚拟机中安装RabbitMQ
- 从linux140拷贝.erlang.cookie到nodlinux141e3、linux142的相应目录
如果没有该文件,手动创建 /var/lib/rabbitmq/.erlang.cookie ,生成Cookie字符串,或者启
动一次RabbitMQ自动生成该文件。生产中推荐使用第三方工具生成。
我们首先在linux140上启动单机版RabbitMQ,以生成Cookie文件

systemctl start rabbitmq-server
其他141,142节点也同样启动
开始准备同步 .erlang.cookie 文件。RabbitMQ的集群依赖Erlang的分布式特性,需要保持
Erlang Cookie一致才能实现集群节点的认证和通信,我们直接使用scp命令从node1远程传输
scp .erlang.cookie root@192.168.181.141:/var/lib/rabbitmq
scp .erlang.cookie root@192.168.181.142:/var/lib/rabbitmq
修改权限
修改192.168.181.141和192.168.181.142上该文件的所有者为rabbitmq:rabbitmq:
chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
注意.erlang.cookie文件权限为400

使用下述命令启动192.168.181.141和192.168.181.142上的RabbitMQ
加入集群
将192.168.181.141和192.168.181.142这两个节点加入到集群中
分别执行如下命令
# 停止Erlang VM上运行的RabbitMQ应用,保持Erlang VM的运行
rabbitmqctl stop_app
# 移除当前RabbitMQ虚拟主机中的所有数据:重置
rabbitmqctl reset
# 将当前RabbitMQ的主机加入到rabbit@node2这个虚拟主机的集群中。一个节点也是集群。
rabbitmqctl join_cluster rabbit@linux140
# 启动当前Erlang VM上的RabbitMQ应用
rabbitmqctl start_app
- rabbit@linux140 表示RabbitMQ节点名称,默

最低0.47元/天 解锁文章





