【安装教程】Linux RocketMQ 4.5.1安装及问题总结

2024-08-25 18:32

本文主要是介绍【安装教程】Linux RocketMQ 4.5.1安装及问题总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【引言】

前段时间在项目中添加了对接RocketMQ4.5.1版本的客户端代码,服务端不是自己搭建的,所以自己在虚拟机上试验了一把,过程中遇到不少问题,写篇博客记录一下。

【环境】

  • Java版本:java version “1.8.0_162”
  • Maven版本:Apache Maven 3.5.0
  • RocketMQ版本:rocketmq-rocketmq-all-4.5.1

【步骤】

  1. 下载压缩包,下载地址:https://github.com/apache/rocketmq/releases/tag/rocketmq-all-4.5.1
  2. 解压文件并构建
官网上提供了zip和tar.gz,两种格式的压缩文件任选一种即可- 解压zip格式文件
unzip rocketmq-all-4.3.1-source-release.zip -d /usr/local/rocketmq/-若提示未安装unzip命令,执行yum install zip 和 yum install unzip命令即可- 解压tar.gz格式文件
tar -zxvf rocketmq-rocketmq-all-4.5.1.tar.gz -C /usr/local/rocketmq/- 解压后执行maven命令构建
mvn -Prelease-all -DskipTests clean install -U

构建成功,提示如下:
在这里插入图片描述
进入到目录

cd distribution/target/rocketmq-4.5.1/rocketmq-4.5.1

  1. 启动NameServer
nohup sh bin/mqnamesrv &若上述命令错误,可使用:
nohup sh bin/mqnamesrv  >/dev/null 2>&1 &查看日志命令,是否启动成功:
tail -f ~/logs/rocketmqlogs/namesrv.log或使用jps,NamesrvStartup存在,则表示启动成功:
7984 NamesrvStartup
8395 Bootstrap
14059 Jps
  1. 启动broker
nohup sh bin/mqbroker -n localhost:9876 &查看日志,是否启动成功:
tail -f ~/logs/rocketmqlogs/broker.log或使用jps,BrokerStartup存在,则表明启动成功:
8019 BrokerStartup
8395 Bootstrap
14059 Jps
  1. 关闭服务器命令
sh bin/mqshutdown broker    //停止 brokersh bin/mqshutdown namesrv   //停止 nameserver

【控制台】

为了方便查看生产者、消费者及消息信息,我们可以再安装一个控制台,可在页面上操作。

  1. 下载地址:

    https://github.com/apache/rocketmq-externals

  2. 下载好后,解压,进入 rocketmq-console/src/main/resources,修改对应的配置文件信息:

server.contextPath=/rocketmq-console
server.port=8090#spring.application.index=true
spring.application.name=rocketmq-console
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
spring.http.encoding.force=true
logging.config=classpath:logback.xml
#if this value is empty,use env value rocketmq.config.namesrvAddr  NAMESRV_ADDR | now, you can set it in ops page.default localhost:9876
#修改为自己的namesrv地址信息
rocketmq.config.namesrvAddr=192.168.17.141:9876
#if you use rocketmq version < 3.5.8, rocketmq.config.isVIPChannel should be false.default true
#配置为true,启动broker需要配置对应的ip地址
rocketmq.config.isVIPChannel=true
  1. 进入 rocketmq-console目录打包,命令如下:
mvn clean package -Dmaven.test.skip=true

在这里插入图片描述

  1. 打包成功后,直接在target目录下执行java -jar rocketmq-console-ng-1.0.1-sources.jar命令,启动

  2. 若安装成功,页面显示如下:(若启动成功,但访问不到,则可能是防火墙问题,下面问题中会提到)

在这里插入图片描述

【问题】

  1. 在启动Broker时,查看日志,提示内存不足,查看bin目录下的runserver.sh 和 runbroker.sh文件,可以看到默认的内存大小,都比较大,我们自己修改小一些即可:
    在这里插入图片描述

  2. 防火墙问题,安装好控制台后,本机访问不到,因为虚拟机开了防火墙,我们可以将其关闭,或设置对某些端口开放,常用命令如下:

- 查看firewall服务状态systemctl status firewalld- 查看firewall的状态firewall-cmd --state- 开启、重启、关闭、firewalld.service服务# 开启service firewalld start# 重启service firewalld restart# 关闭service firewalld stop- 查看防火墙规则firewall-cmd --list-all- 查询、开放、关闭端口# 查询端口是否开放firewall-cmd --query-port=8080/tcp# 开放80端口firewall-cmd --permanent --add-port=80/tcp# 移除端口firewall-cmd --permanent --remove-port=8080/tcp#重启防火墙(修改配置后要重启防火墙)firewall-cmd --reload# 参数解释1、firwall-cmd:是Linux提供的操作firewall的一个工具;2、--permanent:表示设置为持久;3、--add-port:标识添加的端口;

【总结】

服务端安装成功了,并不意味着在客户端对接中就能顺利进行了。下篇博客,将总结springboot与rocketmq-client 4.5.1版本的集成,其中遇到一些问题,是需要修改服务端的一些配置处理的。

这篇关于【安装教程】Linux RocketMQ 4.5.1安装及问题总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1106330

相关文章

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig