RabbitMQ集群模式

2021-10-21 06:40:50 字數 1947 閱讀 7132

三颱伺服器

192.168.3.4

192.168.3.5

192.168.3.6

修改伺服器的hostname,rabbitmq會讀取hostname來作為集群節點名稱

linux修改hostname命令:hostnamectl set-hostname [name]

# 192.168.3.4 修改hostname 為node1

hostnamectl set-host node1

# 192.168.3.5 修改hostname 為node2

hostnamectl set-host node2

# 192.168.3.6 修改hostname 為node3

hostnamectl set-host node3

確保三颱伺服器能通過hostname ping通,不通可能是沒有關閉防火牆

# 關閉

systemctl stop firewalld.service

# 開機不自動啟動

systemctl disable firewalld.service

在三颱伺服器上先搭建好單機版,可以參考這裡:rabbitmq快速安裝整合

啟動三颱伺服器的rabbitmq服務

然後複製192.168.3.4伺服器上的(.erlang.cookie)到192.168.3.5、192.168.3.6伺服器上並覆蓋,保持三颱伺服器的(.erlang.cookie)一致,rabbitmq節點間通訊通過這個來判斷是不是合法的連線,預設位置:/var/lib/rabbitmq/.erlang.cookie

scp /var/lib/rabbitmq/.erlang.cookie [email protected]:/var/lib/rabbitmq/.erlang.cookie

scp /var/lib/rabbitmq/.erlang.cookie [email protected]:/var/lib/rabbitmq/.erlang.cookie

rabbitmq集群的節點分為兩種:

1、disk:磁碟節點,會把資料持久化到磁碟中,保證資料不丟失

2、ram:記憶體結點,把資料存放在記憶體中,不持久化到磁碟,以此提高效能

官方建議集群最少要有兩個disk節點

rabbitmq服務啟動的時候,預設是disk節點

這裡192.168.3.4、192.168.3.5作為disk節點,192.168.3.6作為ram節點

在192.168.3.5伺服器執行以下命令

# 停止tabbitmq應用

# 將192.168.3.5(node2)作為disk節點加入到集群(192.168.3.4,node1)

rabbitmqctl joincluster rabbit@node1

# 啟動應用

在192.168.3.6伺服器執行以下命令

# 停止tabbitmq應用

# 將192.168.3.6(node3)作為ram節點加入到集群(192.168.3.4,node1)

rabbitmqctl joincluster rabbit@node1 --ram

# 啟動應用

檢視集群狀態

# 命令

rabbitmqctl cluster_status

# 可以看到集群建立成功

cluster status of node rabbit@node1 ...

[,]},

, ,]...done.

檢視web管理介面,如下:

RabbitMQ集群架構模式

實現rabbitmq的高可用集群,一般在併發和資料量不高的情況下,這種模式非常的好且簡單。主備模式也稱為warren模式 主備模式 主節點提供讀寫,從節點不提供讀寫服務,只是負責提供備份服務,備份節點的主要功能是在主節點宕機時,完成自動切換 從 主 主從模式 主節點提供讀寫,從節點唯讀 mode t...

RabbitMQ安裝 集群映象模式搭建

上傳檔案 任意資料夾都行 socat 1.7.3.2 2.el7.x86 64.rpm logrotate 3.8.6 17.el7.x86 64.rpm erlang 23.0.4 1.el7.x86 64.rpm rabbitmq server 3.8.8 1.el7.noarch.rpm 安裝...

RabbitMQ集群架構模式介紹

遠端模式可以實現雙活的一種模式,簡稱shovel模式,所謂shovel就是我們可以把訊息進行不同資料中心的複製工作,可以跨地域的讓兩個mq集群互聯 shovel模式拓撲圖 shovel集群的配置,首先需要啟動rabbitmq外掛程式,命令如下 建立rabbitmq.config檔案 touch et...