Linux 安装RocketMQ

官网:

https://rocketmq.apache.org/zh/

安装RocketMQ 5.2.0

下载、解压即完成部署。

wget https://dist.apache.org/repos/dist/release/rocketmq/5.2.0/rocketmq-all-5.2.0-bin-release.zip
unzip rocketmq-all-5.2.0-bin-release.zip

启动之前修改jvm启动内存
cd bin
#修改:runserver.sh 、runbroker.sh 文件,将启动内存改小
-Xms1g -Xmx1g -Xmn512m

启动nameServer
nohup sh bin/mqnamesrv &
#关闭 nameServer
sh bin/mqshutdown namesrv
启动Broker+Proxy

可以增加配置

#配置域名方式访问
namesrvAddr=mq-test.aa.com:9876
brokerIP1=mq-test.aa.com
#配置没有消费客户端的时候自动删除消费分组
deleteWhenConsumerIdle=true
autoDeleteGroup=true

启动

 nohup sh bin/mqbroker -n localhost:9876 --enable-proxy &
 #关闭Broker
sh bin/mqshutdown broker
 

部署 RocketMQ Dashboard

下载页:
https://rocketmq.apache.org/zh/download
下载并安装:
wget https://dist.apache.org/repos/dist/release/rocketmq/rocketmq-dashboard/1.0.0/rocketmq-dashboard-1.0.0-source-release.zip

#安装Maven
wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo

yum -y install apache-maven

#解压、编译
unzip rocketmq-dashboard-1.0.0-source-release.zip
cd rocketmq-dashboard-1.0.0-source-release
mvn clean package -Dmaven.test.skip=true

#修改配置文件application.properties
rocketmq.config.namesrvAddr=127.0.0.1:9876
#启动 rocketmq-dashboard
nohup java -jar rocketmq-dashboard-1.0.0.jar &

关于namesrvAddr

最好用域名代替Ip,在服务器上的/etc/hosts文件中配置,本机开发时也配置hosts

你的ip namesrv.rocket

最后在rocketmq-dashboard中配置,保证各端均能访问,否则设置成内网Ip,则通过公网无法访问,设置成公网ip,则内网访问不合算,也不安全。

在这里插入图片描述

基于springboot开发版本一致性

使用rocketmq-spring-boot-starter 2.2.3 版本,对应的rocketmq服务器版本:5.2.0
对应的rocketmq-client、springboot、springcloud


	<dependency>
	    <groupId>org.apache.rocketmq</groupId>
	    <artifactId>rocketmq-client</artifactId>
	    <version>4.9.3</version>
	</dependency>

	<dependency>
	    <groupId>org.apache.rocketmq</groupId>
	    <artifactId>rocketmq-spring-boot-starter</artifactId>
	    <version>2.2.3</version>
	</dependency>
		<spring-boot.version>2.5.9</spring-boot.version>
		<spring-cloud.version>2020.0.6</spring-cloud.version>

常用命令

1、查看消息
./mqadmin  queryMsgByUniqueKey -n 127.0.0.1:9876 -t topic_snapshot -i 7F0000012E5C18B4AAC26F5AAA4E0000
# -n	NameServer 服务地址,格式 ip:port
# -i	uniqe msg id
# -t	topic名称

开启ACL

1、rocketmq broker.conf配置文件中开启ACL
#开启用户认证
aclEnable=true
#指定认证配置文件
aclAccessResourcePath=/data/app/rocketmq/conf/plain_acl.yml

修改plain_acl.yml
这个配置文件是动态生效的,修改后会被MQ动态加载,即时生效

globalWhiteRemoteAddresses:

accounts:
# 第一个普通账户
- accessKey: RocketMQ
  secretKey: 12345678
  whiteRemoteAddress:
  admin: false
  defaultTopicPerm: DENY
  defaultGroupPerm: SUB
  topicPerms:
  - TopicTest=PUB
  groupPerms:
  - oms_consumer_group=DENY

# 第二个是admin账户
- accessKey: rocketmq2
  secretKey: 12345678
  whiteRemoteAddress:
  # if it is admin, it could access all resources
  admin: true
  # RocketMQ有个bug,admin默认权限不对,所以下面默认给发布和订阅权限
  defaultTopicPerm: PUB|SUB
  defaultGroupPerm: PUB|SUB

修改tools.yml

accessKey: 普通用户accessKey
secretKey: 普通用户secretKey

重启rocketmq的nameserver,broker

2、rocketmq-dashboard 开启acl

application.properties中修改

rocketmq.config.accessKey=rocketmq2
rocketmq.config.secretKey=12345678

user.properties中加入用户账户配置

#配置格式:username=password[,N] #N is optional, 0 (Normal User); 1 (Admin)
# Define Admin admin用户
rocketmq2=12345678,1

# Define Users 普通用户列表
RocketMQ=12345678
user2=user2

重启rocketmq-dashboard

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值