欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > RabbitMQ 集群搭建步驟

RabbitMQ 集群搭建步驟

2025/3/26 8:21:32 来源:https://blog.csdn.net/weixin_45603383/article/details/146400542  浏览:    关键词:RabbitMQ 集群搭建步驟

RabbitMQ 集群搭建步驟

RabbitMQ 是一個流行的開源消息中間件,搭建集群可以提高其可用性和吞吐量。以下是搭建 RabbitMQ 集群的詳細步驟:

1. 準備工作

首先需要準備至少兩台服務器,並確保它們能夠相互通訊。每台服務器都需要安裝:

  • Erlang/OTP
  • RabbitMQ Server

2. 基本配置

在所有節點上:

  1. 確保各節點的 hosts 文件包含所有集群節點的信息,例如:
192.168.1.101 rabbitmq1
192.168.1.102 rabbitmq2
192.168.1.103 rabbitmq3
  1. 確保各節點使用相同的 Erlang Cookie:
# 在主節點查看 cookie
cat /var/lib/rabbitmq/.erlang.cookie# 將主節點的 cookie 複製到其他節點
scp /var/lib/rabbitmq/.erlang.cookie user@rabbitmq2:/var/lib/rabbitmq/
scp /var/lib/rabbitmq/.erlang.cookie user@rabbitmq3:/var/lib/rabbitmq/
  1. 重啟所有節點上的 RabbitMQ 服務:
systemctl restart rabbitmq-server

3. 建立集群

  1. 在主節點(如 rabbitmq1)上啟動 RabbitMQ 服務:
rabbitmq-server -detached
  1. 在其他節點上停止 RabbitMQ 應用,然後加入集群:
# 在 rabbitmq2 上
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@rabbitmq1
rabbitmqctl start_app# 在 rabbitmq3 上
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@rabbitmq1
rabbitmqctl start_app
  1. 檢查集群狀態:
rabbitmqctl cluster_status

4. 配置高可用性策略

設置鏡像隊列以實現高可用性:

# 設置所有隊列鏡像到所有節點
rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'

5. 啟用管理插件

在所有節點上啟用管理插件:

rabbitmq-plugins enable rabbitmq_management

訪問管理界面:http://rabbitmq1:15672(默認用戶名和密碼為 guest/guest)

6. 集群類型選擇

RabbitMQ 支持兩種集群模式:

  1. 普通集群

    • 元數據在所有節點間同步
    • 隊列內容只存在於創建該隊列的節點上
    • 如果沒有設置鏡像隊列,當節點下線時,其上的隊列不可用
  2. 鏡像集群

    • 需要在普通集群的基礎上配置鏡像策略
    • 隊列內容會在多個節點間同步
    • 提供高可用性,某個節點故障不會導致數據丟失

若需要更高級的集群功能,可以考慮使用 RabbitMQ 的 Federation 或 Shovel 插件來連接多個集群。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词