RabbitMQ部署指南
1.單機部署
我們在Centos7虛拟機中使用Docker來安裝。
1.1.下載下傳鏡像
線上拉取
docker pull rabbitmq:3-management
1.2.安裝MQ
執行下面的指令來運作MQ容器:
docker run \
-e RABBITMQ_DEFAULT_USER=itcast \
-e RABBITMQ_DEFAULT_PASS=123321 \
--name mq \
--hostname mq1 \
-p 15672:15672 \
-p 5672:5672 \
-d \
rabbitmq:3-management
2.叢集部署
接下來,我們看看如何安裝RabbitMQ的叢集。
2.1.叢集分類
在RabbitMQ的官方文檔中,講述了兩種叢集的配置方式:
- 普通模式:普通模式叢集不進行資料同步,每個MQ都有自己的隊列、資料資訊(其它中繼資料資訊如交換機等會同步)。例如我們有2個MQ:mq1,和mq2,如果你的消息在mq1,而你連接配接到了mq2,那麼mq2會去mq1拉取消息,然後傳回給你。如果mq1當機,消息就會丢失。
- 鏡像模式:與普通模式不同,隊列會在各個mq的鏡像節點之間同步,是以你連接配接到任何一個鏡像節點,均可擷取到消息。而且如果一個節點當機,并不會導緻資料丢失。不過,這種方式增加了資料同步的帶寬消耗。
我們先來看普通模式叢集。
2.2.設定網絡
首先,我們需要讓3台MQ互相知道對方的存在。
分别在3台機器中,設定 /etc/hosts檔案,添加如下内容:
192.168.150.101 mq1
192.168.150.102 mq2
192.168.150.103 mq3
并在每台機器上測試,是否可以ping通對方: