RabbitMQ集群安装 - 多机多实例

这篇文章介绍如何在多机环境中安装RabbitMQ机群,实际项目中也是这样部署的。建议使用这种方式安装RabbitMQ机群来学习研究。

前置条件

在正式安装RabbitMQ机群之前,规划哪些节点安装实例。这里规划三台虚拟机,分别是

node01: 192.168.78.101

node02: 192.168.78.102

node03: 192.168.78.103

规划好虚拟机之后,需要在每台虚拟机上安装RabbitMQ实例,可以参考这篇文章

安装完成之后,在每台虚拟机上启动RabbitMQ服务。

同步Cookie

同步每台虚拟机上RabbitMQ的cookie文件,保证他们是一致的,cookie对于rabbitmq相当于密钥令牌,集群中的每个rabbitmq节点需要通过交换密钥令牌来获得相互认证。如果集群中节点的密钥不一致,就会报一下错误,主要报错信息就是授权失败。

[root@node2 -)# rabbitmqctl join_cluster rabbit@node1
Clustering node rabbit@node2 with rabbit@node1
Error: unable to connect to nodes [rabbit@nodel]: nodedown
DIAGNOSTICS
attempted to contact: [rabbit@nodel]
rabbit@nodel:
* connected to epmd (port 4369) on nodel
* epmd reports node 'rabbit' running on port 25672
* TCP connection succeeded but Erlang distribution failed
* Authentication failed (rejected by the remote node) , please check the Erlanq
cookie
current node details:
- node name: 'rabbitmq-cli-53@node2'
- home dir: /root
- cookie hash: kLtTY75JJGZnZpQF7CqnYg==

 不同的安装方式,cookie文件的路径不同:

yum安装:/var/lib/rabbitmq/.erlang.cookie

root用户源码编译/解压安装:/root/.erlang.cookie

普通用户源码编译/解压安装:/home/用户名/.erlang.cookie

也可以使用命令查看cookie文件的详细信息:

rabbitmq-diagnostics erlang_cookie_sources

从其中一台虚拟机上同步cookie文件到另外两台

scp  /root/.erlang.cookie  root@node02:/root/
scp  /root/.erlang.cookie  root@node03:/root/

组建机群

上面的步骤都成功后,在其中两台虚拟机上执行下面的命令就可以组建RabbitMQ集群了。这里是在node02 和 node03 上执行,使其加入 node01 上的RabbitMQ。

rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl  join_cluster  rabbit@node01
rabbitmqctl start_app

执行成功后,在任意一台服务器上可以查看集群状态。

rabbitmqctl  cluster_status

好了,在CentOS6中安装RabbitMQ机群就介绍到这里了。

RabbitMQ系列文章在持续更新中,欢迎各位小伙伴关注哦。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值