9、RabbitMQ的集羣安裝

概述

理解RabbitMQ的集羣原理可能須要花點功夫,可是配置RabbitMQ的集羣則很是容易。node

注意

若是有防火牆,請提早開放相關端口:bash

  • client端通訊口5672
  • 管理口15672
  • server間內部通訊口25672
  • erlang發現口:4369

步驟

1.修改hosts文件cookie

在三個節點的hosts分別加入集羣節點的配置信息:app

# 修改hosts文件
vi /etc/hosts

# 加入集羣節點
192.168.0.101 rabbitmq01
192.168.0.102 rabbitmq02
192.168.0.103 rabbitmq03

2.同步erlang.cookie文件spa

在192.168.0.101節點執行:rest

# 將rabbitmq01節點的erlang.cookie同步到rabbitmq02和rabbitmq03

scp /var/lib/rabbitmq/.erlang.cookie rabbitmq02:/var/lib/rabbitmq/.erlang.cookie
scp /var/lib/rabbitmq/.erlang.cookie rabbitmq03:/var/lib/rabbitmq/.erlang.cookie

也能夠手動拷貝。code

3.重啓rabbitmq01節點的rabbitmq服務server

在192.168.0.101節點執行:blog

# 重啓rabbitmq服務

systemctl restart rabbitmq-server

4.建立集羣rabbitmq

在192.168.0.102節點執行:

# 中止rabbitmq
rabbitmqctl stop_app

# 重置節點
rabbitmqctl reset 

# 加入rabbitmq01
rabbitmqctl join_cluster rabbit@rabbitmq01

# 啓動應用
rabbitmqctl start_app

在192.168.0.103節點執行:

# 中止rabbitmq
rabbitmqctl stop_app

# 重置節點
rabbitmqctl reset 

# 加入rabbitmq01
rabbitmqctl join_cluster rabbit@rabbitmq01

# 啓動應用
rabbitmqctl start_app

若是你要加入的節點類型是內存直接,能夠執行:

rabbitmqctl join_cluster --ram rabbit@rabbitmq01

5.查看集羣狀態

# 查看集羣狀態

rabbitmqctl cluster_status

結果:
 

[root@rabbitmq01 ~]# rabbitmqctl cluster_status
Cluster status of node rabbit@rabbitmq01 ...
[{nodes,[{disc,[rabbit@rabbitmq01,rabbit@rabbitmq02,rabbit@rabbitmq03]}]},
 {running_nodes,[rabbit@rabbitmq03,rabbit@rabbitmq02,rabbit@rabbitmq01]},
 {cluster_name,<<"rabbit@rabbitmq01">>},
 {partitions,[]},
 {alarms,[{rabbit@rabbitmq03,[]},
          {rabbit@rabbitmq02,[]},
          {rabbit@rabbitmq01,[]}]}]

6.也能夠在控制檯中查看

相關文章
相關標籤/搜索