rabbitmq集群搭建

升级步骤

1.升级包上传

1.1上传erlang、rabbitmq安装包

创建对应升级目录

将安装包otp_src_22.1.7.tar.gz上传到新创建的目录下

将安装包rabbitmq-server-generic-unix-3.8.9.tar.xz上传到新创建的目录下

复制代码
1.2 执行解压命令

tar -zxvf otp_src_22.1.7.tar.gz
xz -d rabbitmq-server-generic-unix-3.8.9.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.8.9.tar

2.安装erlang环境

2.1编译erlang

在进入刚刚解压的erlang文件夹中执行

复制代码
./configure --prefix=/实际路径/erlang

执行

复制代码
make && make install

2.2配置环境变量

上在当前用户根目录下创建etc文件夹,创建linux.env文件,添加一下内容

复制代码
export ERL_HOME=/实际路径/erlang
export PATH=$PATH:$ERL_HOME/bin

执行命令使配置生效

复制代码
source linux.env

3.安装配置rabbitmq集群

3.1拷贝文件,配置hosts文件

在将刚刚解压的rabbitmq安装包解压文件夹复制到其他几台服务器中

在配置rabbitmq集群时需要先修改当前机器/etc/hosts文件的内容,确保需要配置集群的几台机器之间使用机器主机名可以互相访问

复制代码
20.200.175.85 xykqz9
20.200.175.86 xykqz10
20.200.175.87 xykqz11

3.2拷贝.erlang.cookie文件

在解压rabbitmq安装包后,.erlang.cookie文件一般会出现在当前用户根目录下,由于文件是隐藏的,需要使用ls -al查看,并将当前文件复制到其他几台服务器中

复制代码
scp  .erlang.cookie  xx@ip:/实际路径 

上拷贝过来之后由于一般用户没有权限直接将.erlang.cookie文件复制到根目录下,所以上边先复制到创建的一个其他文件中,使用mv进行覆盖文件

复制代码
   mv  ./xx/.erlang.cookie .

3.3启动集群

分别进入三台机器rabbitmq的sbin目录执行下面命令

复制代码
RABBITMQ_NODE_PORT=5672 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15672}]" RABBITMQ_NODENAME=rabbit01 ./rabbitmq-server -detached

./rabbitmq-plugins -n rabbit01 enable rabbitmq_stream  

此时先启动1号机mq服务

复制代码
./rabbitmq-plugins -n rabbit01 enable rabbitmq_management     
./rabbitmqctl -n rabbit01 stop_app. 
./rabbitmqctl -n rabbit01 start_app.

在二号机执行

复制代码
./rabbitmq-plugins -n rabbit01 enable rabbitmq_management 
./rabbitmq-plugins -n rabbit01 enable rabbitmq_web_stomp
./rabbitmq-plugins -n rabbit01 enable rabbitmq_web_stomp_examples
./rabbitmqctl -n rabbit01 stop_app
./rabbitmqctl -n rabbit01 reset
./rabbitmqctl -n rabbit01 join_cluster --ram rabbit01@1号机的主机名
./rabbitmqctl -n rabbit01 start_app

在3号机执行

复制代码
./rabbitmq-plugins -n rabbit01 enable rabbitmq_management 
./rabbitmq-plugins -n rabbit01 enable rabbitmq_web_stomp
./rabbitmq-plugins -n rabbit01 enable rabbitmq_web_stomp_examples
./rabbitmqctl -n rabbit01 stop_app
./rabbitmqctl -n rabbit01 reset
./rabbitmqctl -n rabbit01 join_cluster --ram rabbit01@1号机的主机名
./rabbitmqctl -n rabbit01 start_app

3.4配置用户

分由于一般guest配置不允许远程访问,所以配置一个新用户用来访问mq控制台

复制代码
./rabbitmqctl -n rabbit01 add_user root root1234
./rabbitmqctl -n rabbit01 set_user_tags root administrator
./rabbitmqctl -n rabbit01 set_permissions -p "/" root ".*" ".*" ".*" 

3.5.登录http://ip:15672 查看服务是否正常启动

相关推荐
Wang's Blog4 小时前
RabbitMQ: 消息发送、连接管理、消息封装与三种工程方案
linux·ubuntu·rabbitmq
ChaITSimpleLove4 小时前
基于 .NET Garnet 1.0.91 实现高性能分布式锁(使用 Lua 脚本)
分布式·.net·lua
原神启动16 小时前
Kafka详解
分布式·kafka
yumgpkpm6 小时前
Iceberg在Hadoop集群使用步骤(适配AI大模型)
大数据·hadoop·分布式·华为·zookeeper·开源·cloudera
元气满满-樱8 小时前
分布式LNMP部署
分布式
Wang's Blog9 小时前
RabbitMQ: 声明式配置简化管理
分布式·rabbitmq
叫致寒吧9 小时前
zookeeper与kafka
分布式·zookeeper·云原生
赵得C9 小时前
2025下半年软件设计师考前几页纸
java·开发语言·分布式·设计模式·性能优化·软考·软件设计师
爱学大树锯10 小时前
在Docker环境中安装RabbitMQ延迟消息插件实战记录
docker·容器·rabbitmq
西***634710 小时前
全场景覆盖・全流程智控:分布式解决方案让多功能厅 “不止于多”
分布式