【Linux学习】rabbitmq高可用配置

修改hostname

第一步,先修改/etc/hosts 内容,添加各个主机节点的IP地址和主机名,每个节点都要修改。

第二步,修改/etc/hostname,每个节点都要修改成对应的主机名。

第三步 使用reboot命令重启虚拟机,输入hostname查看主机名是否已经修改成新的主机名。

修改文件权限

cookie文件是隐藏文件,根据erlang安装的方式不同,存放在/root/.erlang.cookie或者/var/lib/rabbitmq/.erlang.cookie

Chmod 600 /root/.erlang.cookie

 修改cookie数值

RabbitMQ的集群是依赖erlang集群,而erlang集群是通过这个cookie进行通信认证的。修改两个主机.erlang.cookie文件中的cookie数值,保证这两个主机的数值相同。

配置集群

首先启动两台虚拟机的rabbitmq

rabbitmq-server -detached

然后执行以下命令,配置集群

rabbitmqctl stop_app

rabbitmqctl join_cluster rabbit@rabbit2

rabbitmqctl start_app

这期间遇到过一个错误,是因为端口号没有开通,如下

使用如下命令开通4369和25672端口

firewall-cmd --add-port=25672/tcp --zone=public --permanent

firewall-cmd --reload

注意:集群配置成功之后,会清空所有节点原来的用户、虚拟主机、队列、策略等,一切都是新的。

使用 rabbitmqctl add_user user1 123新增用户user1,会发现两个主机都同步新增了用户user1.

配置镜像高可用模式集群

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

参数意思为:

ha-all:为策略名称。

^:为匹配符,只有一个^代表匹配所有,^zlh为匹配名称为zlh的exchanges或者queue。

ha-mode:为匹配类型,他分为3种模式:all-所有(所有的queue),exctly-部分(需配置ha-params参数,此参数为int类型比如3,众多集群中的随机3台机器),nodes-指定(需配置ha-params参数)。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值