實驗環境
centos7_x64
rabbitmq_server mq1 192.168.10.17
rabbitmq_slave mq2 192.168.10.19
4369 erlang發現
5672 client端通信口
25672 server間内部通信口
15672 管理界面ui端口
實驗軟體
otp_src_22.1.tar.gz
rabbitmq-server-generic-unix-3.8.0.tar
軟體安裝
sed -i.bak 's/https/http/g' /etc/yum.repos.d/epel.repo
systemctl restart ntpd.service && ntpdate 192.168.10.17 && clock w
systemctl stop firewalld.service && systemctl disable firewalld.service
cp -pv /etc/hosts /etc/hosts.bak
echo 192.168.10.17 mq1 >> /etc/hosts
echo 192.168.10.19 mq2 >> /etc/hosts mq1
hostnamectl set-hostname mq1/mq2 mq1/mq2操作
scp -pr /etc/hosts [email protected]:/etc/
yum install -y gcc gcc-c++ glibc-devel make ncurses-devel redhat-lsb
yum install -y openssl-devel autoconf java-1.8.0-openjdk-devel git mq1/mq2操作
tar zxvf /root/otp_src_22.1.tar.gz
cd /root/otp_src_22.1
./configure && make -j6 && make install
openssl version -a
OpenSSL 1.0.2k-fips
erl --version
Eshell V10.5
scp -pr /usr/local/lib/erlang [email protected]:/usr/local/lib/erlang mq1操作
xz -d /root/rabbitmq-server-generic-unix-3.8.0.tar.xz
tar xvf /root/rabbitmq-server-generic-unix-3.8.0.tar
mv rabbitmq_server-3.8.0 /usr/local/mq1
scp -pr /usr/local/mq1 [email protected]:/usr/local/mq2
cp -pv /root/.erlang.cookie /usr/local/mq1 mq1操作
cp -pv /etc/profile /etc/profile.bak
echo export PATH=$PATH:/usr/local/lib/erlang/bin >> /etc/profile
echo export PATH=$PATH:/usr/local/rabbitmq/sbin/ >> /etc/profile
source /etc/profile
scp -p /etc/profile [email protected]:/etc/ mq1操作
ssh [email protected] 'source /etc/profile' mq1操作
rabbitmq-plugins enable rabbitmq_management 開啟web控制台
Enabling plugins on node rabbit@mq1:
rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@mq1...
The following plugins have been enabled:
rabbitmqctl add_user admin admin 添加登入賬号 密碼
rabbitmqctl set_user_tags admin administrator 給予管理者權限
rabbitmq-server -daemon & 背景啟動服務
touch /etc/init.d/rabbitmq && chmod +x /etc/init.d/rabbitmq 建立啟動腳本
cat /etc/init.d/rabbitmq
#!/bin/bash
#
# mysql startup script for the RabbitMQ server
# chkconfig: 2345 90 10
# description: start the RabbitMQ
# Source function library
. /etc/rc.d/init.d/functions
prog=rabbitmq
RABBITMQ_HOME=cd /usr/local/rabbitmq/
export RABBITMQ_HOME
case "$1" in
start)
echo "Starting RabbitMQ ..."
$RABBITMQ_HOME/ctlscript.sh start
;;
stop)
echo "Stopping RabbitMQ ..."
$RABBITMQ_HOME/ctlscript.sh stop
restart)
echo "Restarting RabbitMQ ..."
$RABBITMQ_HOME/ctlscript.sh restart
*)
echo "Usage: $prog {start|stop|restart}"
esac
exit 0
scp -pr /etc/init.d/rabbitmq [email protected]:/etc/init.d/ mq1操作
chmod +x /etc/init.d/rabbitmq
systemctl daemon-reload
/etc/init.d/rabbitmq restart && chkconfig --add rabbitmq on mq2操作
rabbitmq-server --daemon & && chkconfig --level 35 rabbitmq on 背景啟動服務
scp -pr /etc/init.d/rabbitmq [email protected]:/etc/init.d/ mq1操作
chmod +x /etc/init.d/rabbitmq mq2操作
cp -pv /usr/local/mq1/.erlang.cookie /usr/local/mq1/.erlang.cookie.bak mq1操作
scp -pr /usr/local/mq1/.erlang.cookie [email protected]:/usr/local/mq2/ mq1操作
chmod 600 /usr/local/mq2/.erlang.cookie mq2操作
rabbitmqctl stop_app
Stopping rabbit application on node rabbit@mq2
rabbitmqctl reset
Resetting node rabbit@mq2
rabbitmqctl join_cluster rabbit@mq1 建立群集
Clustering node rabbit@mq2 with rabbit@mq1
rabbitmqctl start_app
Starting node rabbit@mq2 ...
Starting broker... completed with 3 plugins. mq2建立叢集,新節點相同操作
rabbitmqctl cluster_status 檢視群集狀态mq1操作
rabbitmqctl cluster_status
Cluster name: rabbit@mq1
Disk Nodes
rabbit@mq1
rabbit@mq2
Running Nodes
Versions
rabbit@mq1: RabbitMQ 3.8.0 on Erlang 22.1
rabbit@mq2: RabbitMQ 3.8.0 on Erlang 22.1
lsof -i:4369
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
epmd 41530 root 3u IPv4 37737 0t0 TCP *:epmd (LISTEN)
epmd 41530 root 4u IPv6 37738 0t0 TCP *:epmd (LISTEN)
lsof -i:5672
beam.smp 41702 root 90u IPv6 38073 0t0 TCP *:amqp (LISTEN)
lsof -i:15672
beam.smp 41702 root 91u IPv4 38169 0t0 TCP *:15672 (LISTEN)
lsof -i:25672
beam.smp 41702 root 77u IPv4 38041 0t0 TCP *:25672 (LISTEN)
http://serverip:15672/#/ 192.168.10.17/19
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsISPrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdsATOfd3bkFGazxCMx8VesATMfhHLlN3XnxCMwEzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cGcq5yM4QjMwcTOxUDOyYTM5UTMvwFOwYDMwIDMy8CXzV2Zh1WavwVbvNmLvR3YxUjL1M3Lc9CX6MHc0RHaiojIsJye.jpg)