1.解压安装包
tar -xvf rocketmq-all-4.2.0-bin-release.tar
2.将解压文件重新命名:
mv rocketmq-all-4.2.0-bin-release rocketmq-4.2.0
3.rocketmq-4.2.0目录下创建一个logs目录用于存放日志文件
mkdir /aifs01/iam/iam_soft/rocketmq-all-4.2.0/logs
创建store文件夹然后在store文件夹下创建目录commitlog、consumequeue、index用于存放对应内容
mkdir store
cd store
mkdir commitlog consumequeue index
4.修改/aifs01/iam/iam_soft/rocketmq-4.2.0/conf/2m-noslave/broker-a.properties文件,如果没有则新增
vim /aifs01/iam/iam_soft/rocketmq-4.2.0/conf/2m-noslave/broker-a.properties
brokerClusterName=rocketmq-cluster
#broker名字,注意此处不同的配置文件填写的不一样如果在broker-a.properties使用:broker-a,在broker-b.properties使用:broker-b
brokerName=broker-a
#0 表示 Master,>0 表示 Slave
brokerId=1
#nameServer地址,分号分割
#namesrvAddr=rocketmq-namesrv1:9876;rocketmq-namesrv2:9876
namesrvAddr=ip:6876;ip:6876;ip:6876
brokerIP1=ip
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
#Broker 对外服务的监听端口
listenPort=10911
#删除文件时间点,默认凌晨 4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=120
#存储路径
storePathRootDir=/aifs01/iam/iam_soft/rocketmq-4.2.0/store
#commitLog 存储路径
storePathCommitLog=/aifs01/iam/iam_soft/rocketmq-4.2.0/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/aifs01/iam/iam_soft/rocketmq-4.2.0/store/consumequeue
#消息索引存储路径
storePathIndex=/aifs01/iam/iam_soft/rocketmq-4.2.0/store/index
#Broker 的角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
flushDiskType=ASYNC_FLUSH
5.设置启动端口为6876
(注:默认端口为9876 如果不需要改端口,此步骤可以跳过)
在rocketmq-4.2.0下创建namesrv.properties文件
vim namesrv.properties
然后将如下内容添加进去
listenPort=6876
6.修改日志路径
进入rocketmq-4.2.0/conf目录
cd /aifs01/iam/iam_soft/rocketmq-4.2.0/conf
sed -i ‘s#${user.home}#/aifs01/iam/iam_soft/rocketmq-4.2.0#g’ *.xml
7.修改启动内存(此处需要根据实际情况来确认是否需要修改)
在/aifs01/iam/iam_soft/rocketmq-4.2.0/bin目录下
1)修改runserver.sh
vi runserver.sh
2)修改runbroker.sh
vi runbroker.sh
然后在其他2台服务器重复上述操作,操作完成后进行启动
8.应用启停
启动先启动namesrv.sh 再启动broker.sh 停止相反先停止broker.sh在停止,由于我们需要启动的时候指定端口启动,
所以nameserver启动启动命令如下:
nohup sh /aifs01/iam/iam_soft/rocketmq-4.2.0/bin/mqnamesrv -c /aifs01/iam/iam_soft/rocketmq-4.2.0/namesrv.properties > /aifs01/iam/iam_soft/rocketmq-4.2.0/logs/mqnamesrv.log 2>&1 &
然后启动broker
nohup sh /aifs01/iam/iam_soft/rocketmq-4.2.0/bin/mqbroker -c /aifs01/iam/iam_soft/rocketmq-4.2.0/conf/2m-noslave/broker-a.properties > /aifs01/iam/iam_soft/rocketmq-4.2.0/logs/mqbroker.log 2>&1 &
停止broker脚本
sh /aifs01/iam/iam_soft/rocketmq-4.2.0/bin/mqshutdown namesrv
停止namesrv脚本
sh /aifs01/iam/iam_soft/rocketmq-4.2.0/bin/mqshutdown broker
为了方便使用我们在rocketmq-4.2.0目录下创建启动脚本:
vim start.sh
nohup sh /aifs01/iam/iam_soft/rocketmq-4.2.0/bin/mqnamesrv -c /aifs01/iam/iam_soft/rocketmq-4.2.0/namesrv.properties > /aifs01/iam/iam_soft/rocketmq-4.2.0/logs/mqnamesrv.log 2>&1 &
sleep 5s
nohup sh /aifs01/iam/iam_soft/rocketmq-4.2.0/bin/mqbroker -c /aifs01/iam/iam_soft/rocketmq-4.2.0/conf/2m-noslave/broker-a.properties > /aifs01/iam/iam_soft/rocketmq-4.2.0/logs/mqbroker.log 2>&1 &
然后给start.sh执行权限
chmod +x start.sh
创建停止脚本:
vim stop.sh
sh /aifs01/iam/iam_soft/rocketmq-4.2.0/bin/mqshutdown namesrv
sh /aifs01/iam/iam_soft/rocketmq-4.2.0/bin/mqshutdown broker