RabbitMQ集群部署(鏡像集群)

接著上一篇單機(jī)部署的繼續(xù)進(jìn)行集群部署。

部署準(zhǔn)備

  1. 3臺(tái)CentOS 7的虛擬機(jī),主機(jī)名分別設(shè)置為node-1、node-2、node-3
  2. HOSTS文件都配置3個(gè)的主機(jī)名IP映射
  3. 按照單機(jī)部署的方式,每臺(tái)機(jī)器上都進(jìn)行RabbitMQ的單機(jī)部署

普通集群部署

暫定node-1為主節(jié)點(diǎn),node-2,node-3為從節(jié)點(diǎn)進(jìn)行集群部署

  1. 由于RabbitMQ是依附于erlang進(jìn)行通信,想要通信必須有相同的.erlang.cookie文件
    查找該文件的路徑
find / -name *.cookie

將node2,node3下的文件進(jìn)行重命名,然后利用命令,將node-1下的文件copy到另外的兩個(gè)節(jié)點(diǎn)。

scp /var/lib/rabbitmq/.erlang.cookie 192.168.8.117:/var/lib/rabbitmq/

將三臺(tái)機(jī)器的cookie文件進(jìn)行權(quán)限的賦權(quán)

chmod 400 /var/lib/rabbitmq/.erlang.cookie
  1. 重啟服務(wù)
    重新啟動(dòng)mq,這里需要注意,如果重新啟動(dòng)失敗,可以kill掉所有和RabbitMQ相關(guān)的進(jìn)程,然后在通過(guò)start命令進(jìn)行啟動(dòng)
service rabbitmq-server restart
  1. 從節(jié)點(diǎn)設(shè)置
rabbitmqctl stop_app
rabbitmqctl reset
## --ram 指定內(nèi)存節(jié)點(diǎn)類型,--disc指定磁盤(pán)節(jié)點(diǎn)類型
rabbitmqctl join_cluster --ram rabbit@node-2
rabbitmqctl start_app
  1. 查看狀態(tài)
    任意節(jié)點(diǎn)進(jìn)行狀態(tài)的查看
rabbitmqctl cluster_status
  1. 界面查看


鏡像集群開(kāi)啟

  1. 在主節(jié)點(diǎn)下創(chuàng)建一個(gè)vhost:my-vhost



    可以看到exchange的界面


  2. 主節(jié)點(diǎn)下設(shè)置策略
rabbitmqctl set_policy -p my-vhost ha "^" '{"ha-mode":"all","ha-sync-mode":"automatic"}'

3.查看界面效果


  1. 新增queue
    在任意的節(jié)點(diǎn)新增queue



    其他節(jié)點(diǎn)查看


節(jié)點(diǎn)的移除

rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl start_app
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容