rabbitMQ ——windows安裝 集羣配置(rabbitmq之二)

上文安裝完了rabbitmq, 直通車查看。

如果在實際使用過程中,使用單臺配置,萬一出現意外情況,將導致我們的服務終斷,因此需要搭建集羣的方式來最高限度的提高服務的可用性。

一、事先準備:

1.兩臺windows主機,當然也可以用虛擬機。

2.安裝erlang以及rabbitmq

二、安裝完成的單臺rabbitmq服務情況

1.兩臺windows主機rabbitmq相關內容:

  a:192.168.0.88 rabbitmq節點名稱:rabbit@LAPTOP-UO88M5R6

  b: 192.168.0.184 rabbitmq節點名稱:rabbit@USER-20160306SN

節點名稱如何查看?

在rabbitmq安裝目錄 sbin 下執行 rabbitmqctl status,出現如下界面:紅色框內的爲當前主機rabbitmq的節點名稱。

2.配置文件

a).集羣配置文件(兩臺主機都需要配置),在路徑C:\Users\Administrator\AppData\Roaming\RabbitMQ (AppData默認隱藏,需要設置顯示隱藏文件)中,創建rabbitmq.config文件,內容爲:[{rabbit,[{cluster_nodes, ['rabbit@LAPTOP-UO88M5R6', 'rabbit@USER-20160306SN']}]}]. (包括最後的 .)。

b).hosts文件設置,在路徑C:\Windows\System32\drivers\etc 中修改hosts文件。

b.1>192.168.0.88:

192.168.0.88 rabbit@LAPTOP-UO88M5R6

192.168.0.184 rabbit@USER-20160306SN

b.2>192.168.0.184:

192.168.0.184 rabbit@USER-20160306SN

192.168.0.88 rabbit@LAPTOP-UO88M5R6

c).配置環境變量文件,在C:\Users\Administrator\AppData\Roaming\RabbitMQ 路徑中,創建rabbitmq-env.conf

c.1>192.168.0.88中文件內容爲:

NODENAME=rabbit@LAPTOP-UO88M5R6
NODE_IP_ADDRESS=192.168.0.88
NODE_PORT=5672
RABBITMQ_MNESIA_BASE=C:\Users\jony\AppData\Roaming\RabbitMQ\db
RABBITMQ_LOG_BASE=C:\Users\jony\AppData\Roaming\RabbitMQ\log

   c.2>192.168.0.184中文件內容爲: 

NODENAME=rabbit@USER-20160306SN
NODE_IP_ADDRESS=192.168.0.184
NODE_PORT=5672
RABBITMQ_MNESIA_BASE=C:\Users\Administrator\AppData\Roaming\RabbitMQ\db
RABBITMQ_LOG_BASE=C:\Users\Administrator\AppData\Roaming\RabbitMQ\log

3..erlang.cookie文件統一(此文件用戶集羣之間通信祕鑰,必須一致)

將192.168.0.88中C:\Users\jony中的.erlang.cookie 的文件替換掉192.168.0.184 中 C:\Users\Administrator

C:\Windows\System32\config\systemprofile 目錄中的 .erlang.cookie

4.重啓服務

a).192.168.0.184

rabbitmqctl stop_app

rabbitmqctl reset

rabbitmqctl start_app

b).192.168.0.88

rabbitmqctl stop_app

rabbitmqctl reset

rabbitmqctljoin_clusterrabbit@USER-20160306SN

rabbitmqctl start_app

通過以上命令集羣基本就配置好了。

訪問 rabbitmq管理後臺,出現如下界面則表示成功:


需要注意的是,搭建集羣建議最少設置一個磁盤節點,防止機器意外關機等、丟失數據。

rabbitmq集羣有兩種節點 磁盤節點和內存節點。字面上瞭解,磁盤節點的數據存儲在磁盤,內存節點的數據存儲的內存中。因此存儲速度方面內存節點有優勢,數據安全方面磁盤節點有優勢。

rabbitmq啓動後默認是磁盤節點,如果要使用內存節點那麼在 搭建集羣的時候,在上方重啓服務中的 rabbitmqctljoin_cluster rabbit@USER-20160306SN

命令修改爲 rabbitmqctljoin_cluster --ram rabbit@USER-20160306SN,這樣配置之後

192.168.0.88的節點就爲內存節點了。

5.鏡像配置

此配置的作用,爲了同步消息,如給A節點發送一條消息,則自動同步到B節點。配置如下:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章