linux安装RocketMQ

1 配置JDK环境

安装RocketMQ前需要安装JDK环境

只有jre运行环境

yum install -y java-1.8.0-openjdk.x86_64

yum install -y java-devel

2 下载并解压RocketMQ文件

进入安装目录

mkdir -p /usr/local/server && cd /usr/local/server

下载

wget https://archive.apache.org/dist/rocketmq/4.5.1/rocketmq-all-4.5.1-bin-release.zip

解压

unzip rocketmq-all-4.5.1-bin-release.zip -d ./

重命名

mv rocketmq-all-4.5.1-bin-release rocketmq

3 修改RocketMQ占用的内存大小

RocketMQ默认的虚拟机内存较大,启动Broker如果因为内存不足失败,需要编辑如下两个配置文件,修改JVM内存大小
进入bin目录

cd /usr/local/server/rocketmq/bin

编辑runbroker.sh和runserver.sh修改默认JVM大小

vi runserver.sh

JVM configuration配置下方的配置改成

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

vi runbroker.sh

JVM Configuration配置下方的配置改成

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m"

JAVA_OPT="${JAVA_OPT} -XX:MaxDirectMemorySize=128m"

4 创建RocketMQ存储文件的目录

进入解压目录

cd /usr/local/server/rocketmq

创建目录

mkdir -p logs store/commitlog store/consumequeue store/index

5 编写配置文件

进入解压目录

cd /usr/local/server/rocketmq/conf

创建目录

mkdir 1m-1s-async

创建配置文件

touch 1m-1s-async/broker.properties

进入到/usr/local/server/rocketmq/conf/1m-1s-async/broker.properties 中添加如下配置

#nameServer 地址,分号分割

namesrvAddr=120.79.202.181:9876

brokerIP1=120.79.202.181

#所属集群名字

brokerClusterName=rocketmq-cluster

#broker名字,注意此处不同的配置文件填写的不一样

brokerName=broker-a

#0 表示Master, > 0 表示slave

brokerId=0

#在发送消息时,自动创建服务器不存在的Topic,默认创建的队列数

defaultTopicQueueNums=4

#是否允许Broker 自动创建Topic,建议线下开启,线上关闭

autoCreateTopicEnable=true

#是否允许Broker自动创建订阅组,建议线下开启,线上关闭

autoCreateSubscriptionGroup=true

#Broker 对外服务的监听端口

listenPort=10911

#删除文件时间点,默认是凌晨4点

deleteWhen=04

#文件保留时间,默认48小时

fileReservedTime=120

#commitLog每个文件的大小默认1G

mapedFileSizeCommitLog=1073741824

#ConsumeQueue每个文件默认存30W条,根据业务情况调整

mapedFileSizeConsumeQueue=300000

#destroyMapedFileIntervalForcibly=120000

#redeleteHangedFileInterval=120000

#检测物理文件磁盘空间

diskMaxUsedSpaceRatio=88

#存储路径

storePathRootDir=/usr/local/server/rocketmq/store

#commitLog存储路径

storePathCommitLog=/usr/local/server/rocketmq/store/commitlog

#消费队列存储路径

storePathConsumeQueue=/usr/local/server/rocketmq/store/consumequeue

#消息索引存储路径

storePathIndex=/usr/local/server/rocketmq/store/index

#checkpoint文件存储路径

storeCheckpoint=/usr/local/server/rocketmq/store/checkpoint

#abort文件存储路径

abortFile=/usr/local/server/rocketmq/store/abort

#限制的消息大小

maxMessageSize=65536

# flushCommitLogLeastPages=4

# flushConsumeQueueLeastPages=2

# flushCommitLogThoroughInterval=10000

# flushConsumeQueueThoroughInterval=60000

# Broker 的角色

# - ASYNC_MASTER 异步复制Master

# - SYNC_MASTER 同步双写Master

# - SLAVE

brokerRole=ASYNC_MASTER

# 刷盘方式

# - ASYNC_FLUSH 异步刷盘

# - SYNC_FLUSH 同步刷盘

flushDiskType=ASYNC_FLUSH

#checkTransactionMessageEnable=false

#发消息线程池数量

#sendMessageTreadPoolNums=128

#拉消息线程池数量

#pullMessageTreadPoolNums=128

进入conf 目录,替换所有xml中的${user.home},保证日志路径正确
cd /usr/local/server/rocketmq/conf


替换${user.home}为/usr/local/server/rocketmq
sed -i 's#${user.home}#/usr/local/server/rocketmq#g' *.xml

6 启动NameServer和Broker

启动NameServer

cd /usr/local/server/rocketmq/bin && nohup sh mqnamesrv &

启动Broker
cd /usr/local/server/rocketmq/bin && nohup sh mqbroker -c /usr/local/server/rocketmq/conf/1m-1s-async/broker.properties > /dev/null 2>&1 &

7 查看是否启动成功

[root@localhost conf]# jps -l

4468 org.apache.rocketmq.namesrv.NamesrvStartup

4629 org.apache.rocketmq.broker.BrokerStartup

[root@localhost conf]# ps aux | grep mqnamesrv

root 4462  0.0  0.0 113184  1436 pts/0    S    23:02   0:00 sh mqnamesrv

Root 4764 0.0  0.0 112712   968 pts/5    R+   23:04   0:00 grep --color=auto mqnamesrv

8 关闭NameServer和Broker

关闭NameServer

cd /usr/local/server/rocketmq/bin && sh mqshutdown namesrv

关闭Broker

cd /usr/local/server/rocketmq/bin && sh mqshutdown broker

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值