RabbitMQ鏡像集群搭建
- 2020 年 5 月 29 日
- 筆記
- RabbitMQ, RabbitMQ鏡像集群搭建, RabbitMQ集群, 鏡像集群
RabbitMQ 官網 //www.rabbitmq.com/
小編使用的系統環境是CentOS7.4
系統 | IP | hostname |
---|---|---|
CentOS7.4 | 1.1.1.1 | hostname01 |
CentOS7.4 | 1.1.1.2 | hostname02 |
一、下載
格外強調,注意RabbitMQ與erlang的版本是否匹配
查看匹配網址 //www.rabbitmq.com/which-erlang.html
-
erlang22.3
-
rabbitmq3.8.3
二、安裝
1,安裝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
2,安裝 socat
yum install -y socat
3,安裝rabbitmq
rpm -ivh --nodeps rabbitmq-server-3.8.3-1.el7.noarch.rpm
4,修改配置
vi /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.3/ebin/rabbit.app
修改 loopback_users 中的 [<<“guest”>>], 只保留 []
heartbeat 為 5
啟用web管理頁面
rabbitmq-plugins enable rabbitmq_management
5,啟動rabbitmq
啟動
rabbitmq-server start &
啟動內容檢查
rabbitmq-plugins list
三、開始集群
RabbitMQ事基於erlang的,所以部署RabbitMQ集群,首先要處理erlang的cookie。
配置從機的cookie
首先在主節點查詢cookie,一般cookie會存在兩個位置
第一個位置在
ll -la /root
第二個位置在
ll -la /var/lib/rabbitmq/
為了避免錯誤,將上面兩個cookie分別複製到從機上的對應位置。
注意點:複製完成後,將文件許可權改為400
chmod 400 .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即可。
# 後台啟動從機
./rabbitmq-server -deched
./rabbitmqctl stop_app
# 這裡的hostname01是指主機的hostname
./rabbitmqctl join_cluster rabbit@hostname01
./rabbitmqctl start_app
至此,RabbitMQ集群配置已完成。
四、驗證
在圖形化介面即可看到集群結果