RabbitMQ鏡像集群搭建


RabbitMQ 官網 https://www.rabbitmq.com/

小編使用的系統環境是CentOS7.4

系統 IP hostname
CentOS7.4 1.1.1.1 hostname01
CentOS7.4 1.1.1.2 hostname02

下載

格外強調,注意RabbitMQ與erlang的版本是否匹配

查看匹配網址 https://www.rabbitmq.com/which-erlang.html

  • erlang22.3

  • rabbitmq3.8.3

安裝

安裝erlang

解壓erlang

tar -zxvf otp_src_22.3.tar.gz

准備erlang編譯工具

yum install make gcc gcc-c++ build-essential openssl openssl-devel unixODBC unixODBC-devel kernel-devel m4 ncurses-devel

創建文件夾

mkdir -p /usr/local/erlang

編譯

cd otp_src_22.3
./configure  --prefix=/usr/local/erlang --without-javac
make && make install

環境變量配置

vi /etc/profile

配置

export ERLANG_HOME=/usr/local/erlang
export PATH=${ERLANG_HOME}/bin:${PATH}

刷新配置

source /etc/profile

創建軟連

ln -s /usr/local/erlang/bin/erl /usr/local/bin/erl

測試

erl

安裝 socat

yum install -y socat

安裝rabbitmq

rpm -ivh --nodeps rabbitmq-server-3.8.3-1.el7.noarch.rpm

修改配置

vi /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.3/ebin/rabbit.app

修改 loopback_users 中的 [<<"guest">>], 只保留 []

heartbeat 為 5

啟用web管理頁面

rabbitmq-plugins enable rabbitmq_management

啟動rabbitmq

啟動

rabbitmq-server start &

啟動內容檢查

rabbitmq-plugins list

開始集群

RabbitMQ事基於erlang的,所以部署RabbitMQ集群,首先要處理erlang的cookie。

重啟主節點

ps -ef | grep rabbitmq
kill -9 ?
cd /usr/lib/rabbitmq/bin
# 后台啟動從機
./rabbitmq-server -deched

這一步會生成/root目錄下的 .erlang.cookie,這個涉及到rabbitmq的啟動方式。

配置從機的cookie

首先在主節點查詢cookie,一般cookie會存在兩個位置

第一個位置在

ll -la /root

第二個位置在

ll -la /var/lib/rabbitmq/

為了避免錯誤,將上面兩個cookie分別復制到從機上的對應位置。

注意點:復制完成后,將文件權限改為600

chmod 600 .erlang.cookie

配置hosts

分別在主機、從機上配置hosts

查詢hostname

cat /etc/hostname

配置hosts

vi /etc/hosts

增加如下配置

# 主ip + 主hostname
1.1.1.1 hostname01
# 從ip + 從hostname 
1.1.1.2 hostname02

配置集群

這一步僅僅是在從機上操作,主機啟動RabbitMQ即可。

cd /usr/lib/rabbitmq/bin
# 后台啟動從機
./rabbitmq-server -deched

./rabbitmqctl stop_app
# 這里的hostname01是指主機的hostname
./rabbitmqctl join_cluster rabbit@hostname01

./rabbitmqctl start_app

至此,RabbitMQ集群配置已完成。

驗證

在圖形化界面即可看到集群結果


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM