rocketmq安装(踩坑记录)

本文详细介绍了在CentOS7系统中如何安装和配置RocketMQ,包括下载软件包、修改启动脚本以适应4G内存环境、设置环境变量、启动和测试RocketMQ服务。此外,还解决了在多网卡环境中遇到的问题,如设置brokerIP1和开启自动创建主题功能,并提供了RocketMQ管理命令的使用示例,如创建、查看和删除主题。
摘要由CSDN通过智能技术生成

基础环境

CentOS-7-x86_64-Minimal-2009
jdk 1.8.0_321
4G+ free

安装及启动

1.下载rocketmq
wget https://archive.apache.org/dist/rocketmq/4.5.1/rocketmq-all-4.5.1-bin-release.zip
2. 修改脚本(解决启动是包内存不足的bug,如果内存充足可以忽略)
bin/runserver.sh
bin/runbroker.sh

vim bin/runserver.sh
修改内存:
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -
XX:MetaspaceSize=64mm -XX:MaxMetaspaceSize=160mm"

vim bin/runbroker.sh
修改内存:
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn256m -XX:PermSize=128m
-XX:MaxPermSize=128m"
3.环境变量设置  
vim /etc/profile

在底部加入行  export PATH=$PATH:/opt/rocketmq/bin
source /etc/profile
4.启动namesrv
mqnamesrv
# 查看启动日志
tail -f ~/logs/rocketmqlogs/namesrv.log
5.启动Broker
mqbroker -n localhost:9876
# 查看启动日志
tail -f ~/logs/rocketmqlogs/broker.log

RocketMQ环境测试

#1.设置环境变量
export NAMESRV_ADDR=localhost:9876
# 2.使用安装包的Demo发送消息
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
 

# 1.设置环境变量
export NAMESRV_ADDR=localhost:9876
# 2.接收消息
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

 关闭RocketMQ
# 1.关闭NameServer
mqshutdown namesrv
# 2.关闭Broker
mqshutdown broker

错误问题处理:一般安装rocket没有什么问题,测试都可以正常跑的通,但是当centOS有多张网卡,多个ip时(部署docker服务的centOS就存在多张网卡)默认使用虚拟网卡(docker虚拟ip),导致无法向其他内网其他机器/外网 提供服务,导致项目访问失败。
解决方案
添加配置文件
echo "brokerIP1=192.168.80.121" >> /opt/rocketmq/conf/broker.properties
启动时添加参数   -c /opt/rocketmq/conf/broker.properties
访问时如出现No route info of this topic, *** ,需要开启自动创建主题功能
  autoCreateTopicEnable=true  或者手动创建主题
例:
mqbroker -n 192.168.80.121:9876 autoCreateTopicEnable=true -c /opt/rocketmq/conf/broker.properties

# 查看指定NameServer下的主题
[root@node4 ~]# mqadmin topicList -n node1:9876
# 查看指定NameServer,指定集群名称下的主题
[root@node4 ~]# mqadmin topicList -n node1:9876 -c DefaultCluster
# 创建主题,指定NameServer,指定Broker 指定主题名称,指定主题的写队列个数,指定读主题队
列个数
[root@node4 ~]# mqadmin updateTopic -b node1:10911 -r 3 -w 3 -t tp_admin_01
# 描述主题,指定NameServer,指定主题名称
[root@node4 ~]# mqadmin topicStatus -t tp_admin_01 -n node1:9876
# 创建主题,指定NameServer,指定集群名称,指定主题名称,指定读主题队列个数,指定写主题队
列个数
[root@node4 ~]# mqadmin updateTopic -c DefaultCluster -n node1:9876 -r 3 -w
3 -t tp_admin_02
# 查看指定主题的状态,指定NameServer地址,指定主题名称
[root@node4 ~]# mqadmin topicStatus -t tp_admin_02 -n node1:9876
#删除主题,指定NameServer地址,指定集群名称,指定主题名称
[root@node3 ~]# mqadmin deleteTopic -n node1:9876 -c DefaultCluster -t
tp_admin_03
# 查看主题所在的集群,指定NameServer地址,指定主题名称。因为不同集群可以拥有同名的主题,
并且不同集群可以注册到同一个NameServer
[root@node3 ~]# mqadmin topicClusterList -n node1:9876 -t tp_admin_02
# 计算消费的负载均衡,不同的-i列表,计算不同的消费平衡负载结果
[root@node3 ~]# mqadmin allocateMQ -n node1:9876 -t tp_admin_02 -i
node1,node3
[root@node3 ~]# mqadmin allocateMQ -n node1:9876 -t tp_admin_02 -i
node1,node2,node3,node4
# 打印Topic订阅关系、TPS、积累量、24h读写总量等信息
[root@node3 ~]# mqadmin statsAll -n node1:9876

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
RocketMQ是一款开源的分布式消息中间件,它具有高可用、高性能、可伸缩等特点。下面是RocketMQ安装步骤: 1. 下载RocketMQ 首先,你需要从RocketMQ的官方网站上下载安装包。你可以访问官方网站(http://rocketmq.apache.org/)或者GitHub仓库(https://github.com/apache/rocketmq)来获取最新的版本。 2. 解压安装包 下载完成后,将安装包解压到你选择的目录。 3. 配置RocketMQ 进入解压后的目录,找到`conf`目录,在该目录下有几个配置文件需要进行修改。 - 修改`broker.conf`文件:配置Broker的监听端口、存储路径等信息。 - 修改`namesrv.conf`文件:配置NameServer的监听端口、存储路径等信息。 4. 启动NameServer 在解压后的目录下,执行以下命令启动NameServer: ```shell nohup sh bin/mqnamesrv & ``` 5. 启动Broker 继续在解压后的目录下,执行以下命令启动Broker: ```shell nohup sh bin/mqbroker -n localhost:9876 & ``` 注意:在启动Broker之前,确保已经启动了NameServer,并且NameServer的IP和端口配置正确。 6. 验证RocketMQ安装成功 可以使用RocketMQ提供的命令行工具来验证安装是否成功。例如,可以使用以下命令发送和消费消息: - 发送消息: ```shell sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer ``` - 消费消息: ```shell sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer ``` 如果能够成功发送和消费消息,说明RocketMQ安装成功。 这是一个简单的RocketMQ安装过程,根据实际需求和环境配置可能会有所不同。你可以根据RocketMQ的官方文档进行更详细的配置和使用说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dingchengyu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值