CentOS 部署rocketmq集群

一、rocketmq 概览

1.rocketmq简介
rocketmq是一个队列模型的消息中间件,具有高性能、高可靠、高实时、分布式特点。能够保证严格的消息顺序,提供丰富的消息拉取模式,高效的订阅者水平扩展能力,实时的消息订阅机制。
2.rocketmq结构

rocketmq主要有四大核心部分组成:nameSrv、broker、producer以及consumer四部分。rocketmq基于纯java开发,具有高吞吐量、高可用性、适合大规模分布式系统应用的特点。

  • nameSrv:提供轻量级的服务发现路由,每个nameSrv都记录完整的路由信息,nameSrv是一个服务与注册的发现中心。也是整个rocketmq的“大脑”,所以rocketmq需要先启动nameSrv再启动broker。
  • broker:消息存储中心,主要作用是接收来自producer的消息并存储,consumer从这里取得消息。存储与消息相关的元数据,包括用户组、消费进度偏移量、队列信息等。提供轻量级的topic和queue机制在存储消息。
  • producer:消息生产者。负责生产并发送消息至topic。生产者向broker发送由业务应用程序系统生成的消息。
  • consumer:消息消费者。负责从topic接收消费消息。消费者从broker离去信息并将其输入应用程序。从Master拿到消息,执行完成后,会发送一个消息给Broker进行确认,这个就是ACK确认。

二、安装rocketmq

  • CentOS 8
  • jdk1.8
  • IP:10.0.0.56
  • IP:10.0.0.58

1.下载上传rocketmq解压

cd /opt
unzip rocketmq-all-4.9.4-bin-release

rocketmq目录介绍:

bin启动脚本,包括shell脚本和cmd脚本
conf实例配置文件,包括broker配置文件、logback配置文件等
lib依赖jar包,包括Netty、commons-lang、FastJSON等

2.配置全局环境变量

mv rocketmq-all-4.9.4-bin-release /usr/local/rocketmq
vi /etc/profile
# 添加以下配置
export PATH=$PATH:/usr/local/rocketmq/bin
export NAMESRV_ADDR=localhost:9876

source /etc/profile

3.修改内存配置

cd /usr/local/rocketmq/bin
vim runserver.sh

在这里插入图片描述

vim runbroker.sh

在这里插入图片描述

三、搭建主从集群

1. 10.0.0.56服务器配置

cd /usr/local/rocketmq/
cp -r conf/2m-2s-async/ seleconf
vim seleconf/broker-a.properties

#添加以下配置
namesrvAddr=10.0.0.56:9876;10.0.0.58:9876    #集群IP地址
brokerClusterName=DefaultCluster        
brokerName=broker-a   
brokerId=0       #0为主,非0为从
deleteWhen=04           #删除日志时间为凌晨4点
fileReservedTime=48        #文件保留时间为48小时
brokerRole=SYNC_MASTER     #主从关系,异步复制
flushDiskType=ASYNC_FLUSH     #刷盘模式,异步刷盘

2.10.0.0.58服务器配置

cd /usr/local/rocketmq/
cp -r conf/2m-2s-async/ seleconf
vim seleconf/broker-a.properties

#添加以下配置
namesrvAddr=10.0.0.56:9876;10.0.0.58:9876
brokerClusterName=DefaultCluster
brokerName=broker-a
brokerId=1
deleteWhen=04
fileReservedTime=48
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH

3.启动nameSrv服务

cd /usr/local/rocketmq
nohup sh bin/mqnamesrv > logs/mqnamesrv.log 2>&1 &

#查看启动日志
tail -f logs/mqnamesrv.log

#停止namesrv命令
sh bin/mqshutdown namesrv

4.启动主从

#启动主节点10.0.0.56
nohup sh bin/mqbroker -c conf/selfconf/broker-a.properties > logs/broker-a.log 2>&1 &

#查看启动日志
tail -f logs/broker-a.log

#启动从节点10.0.0.58
cd /usr/local/rocketmq
nohup sh bin/mqbroker -c conf/selfconf/broker-a.properties > logs/broker-a.log 2>&1 &

#停止broker服务命令
sh bin/mqshutdown broker

5.查看集群部署信息

sh bin/mqadmin clusterList -n 10.0.0.56:9876
#或
sh bin/mqadmin clusterList -n 10.0.0.58:9876

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值