RabbitMQ镜像集群组建

\1. 添加/etc/hosts对主机名的解析(所有集群节点都需要操作)

\2. 停止app(所有集群节点都需要操作)

[root@master ~]# rabbitmqctl stop_app
[root@node01 ~]# rabbitmqctl stop_app
[root@node02 ~]# rabbitmqctl stop_app

\3. 停止rabbitmq服务(所有集群节点都需要操作)

[root@master ~]# systemctl stop rabbitmq-server.service
[root@node01 ~]# systemctl stop rabbitmq-server.service
[root@node02 ~]# systemctl stop rabbitmq-server.service

\4. 同步master的cookie到salve上

[root@master ~]# scp /var/lib/rabbitmq/.erlang.cookie node01:/var/lib/rabbitmq/.erlang.cookie
[root@master ~]# scp /var/lib/rabbitmq/.erlang.cookie node02:/var/lib/rabbitmq/.erlang.cookie

\5. 启动rabbitmq服务(所有集群节点都需要操作)

[root@master ~]# systemctl start rabbitmq-server.service
[root@master ~]# systemctl start_app

[root@node01 ~]# systemctl start rabbitmq-server.service
[root@node01 ~]# rabbitmqctl stop_app
[root@node01 ~]# rabbitmqctl reset

[root@node02 ~]# systemctl start rabbitmq-server.service
[root@node02 ~]# rabbitmqctl stop_app
[root@node02 ~]# rabbitmqctl reset

\6. 加入集群(--ram指定为内存节点 默认为磁盘节点)

[root@node01 ~]# rabbitmqctl join_cluster "rabbit@master"
[root@node01 ~]# rabbitmqctl start_app
[root@node02 ~]# rabbitmqctl join_cluster "rabbit@master" --ram
[root@node02 ~]# rabbitmqctl start_app

\7. 查看集群状态(节点需要启用rabbitmq-plugins enable rabbitmq_management否则管理页面将提示Node statistics not available)

[root@node01 ~]# rabbitmq-plugins enable rabbitmq_management
[root@node02 ~]# rabbitmq-plugins enable rabbitmq_management
[root@master ~]# rabbitmqctl cluster_status 

\8. 修改高可用策略为全数据同步 默认为仅同步元数据(依实际使用场景可选)

[root@master ~]# rabbitmqctl set_policy ha-all "#" '{"ha-mode":"all"}' 
posted @   wanghongwei-dev  阅读(157)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
点击右上角即可分享
微信分享提示