环境准备
准备三台服务器搭建集群环境
| node1 | 192.168.177.171 |
| node2 | 192.168.177.172 |
| node3 | 192.168.177.173 |
其中node1为master节点,node2,node3为slave节点
注意:以下都需要sudo权限,普通用户获取sudo权限操作指令:
教你如何在Ubuntu中创建 Sudo用户_寰宇001的博客-CSDN博客_ubuntu创建sudo用户
普通用户切换root用户快速指令
sudo -s
一:安装erlang(所有节点操作)
1. 安装erlang
sudo apt-get update
sudo apt-get install -y erlang-nox erlang-dev erlang-src
sudo apt-get update sudo apt-get install -y erlang-nox erlang-dev erlang-src
2. 查看erlang状态
erl
返回:(类似于)
Erlang/OTP 22 [erts-10.6.4] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1]
Eshell V10.6.4 (abort with ^G)
二:安装rabbitmq(所有节点操作)
1. 安装rabbitmq
apt-get install rabbitmq-server
2. 新增管理员用户
rabbitmqctl add_user admin admin
rabbitmqctl set_user_tags admin administrator
3. 启动web管理台页面
rabbitmq-plugins enable rabbitmq_management
4. 系统别名配置
cat /etc/hosts
apt-get install rabbitmq-server
2. 新增管理员用户
rabbitmqctl add_user admin admin
rabbitmqctl set_user_tags admin administrator
3. 启动web管理台页面
rabbitmq-plugins enable rabbitmq_management
4. 系统别名配置
cat /etc/hosts
rabbitmq-plugins enable rabbitmq_management
4. 系统别名配置
cat /etc/hosts
按照如下配置:
三:集群搭建
从这开始就是搭建集群的步骤......
1. 复制erlang.cookies(主节点)
将主节点下的erlang.cookies 复制到其他服务器对应目录下
sudo scp /var/lib/rabbitmq/.erlang.cookie node2:/var/lib/rabbitmq/.erlang.cookie sudo scp /var/lib/rabbitmq/.erlang.cookie node3:/var/lib/rabbitmq/.erlang.cookie
2. 重新启动RabbitMQ服务(子节点)
sudo systemctl restart rabbitmq-server
3. 停止申请(子节点)
sudo rabbitmqctl stop_app
sudo rabbitmqctl stop_app
返回:Stopping rabbit application on node rabbit@node2...
4. 重置rabbitmq(子节点)
sudo rabbitmqctl reset
返回:Resetting node rabbit@@node2...
5. 加入群集(子节点)
sudo rabbitmqctl join_cluster rabbit@node1
返回:Clustering node rabbit@mq2 with rabbit@@node2...
注意:这里的node1是主节点的别名,按照/etc/hosts配的来
6. 开始流程申请(子节点)
sudo rabbitmqctl start_app
返回:Starting node rabbit@node2...
completed with 0 plugins.
7. 检查群集状态(子节点)
rabbitmqctl cluster_status
返回:
Basics
Cluster name: rabbit@web-1
Disk Nodes
rabbit@node1
rabbit@node2
Running Nodes
rabbit@node1
rabbit@node2
8. 配置镜像策略(主节点)
sudo rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all","ha-sync-mode":"automatic"}'
注:如需删除策略
sudo rabbitmqctl clear_policy
9.开放端口
# 打开端口
sudo ufw allow 5672
sudo ufw allow 15672
# 重启防火墙
sudo ufw reload
# 打开端口 sudo ufw allow 5672 sudo ufw allow 15672 # 重启防火墙 sudo ufw reload



