分享知识 传递快乐

 

官网:​https://rocketmq.apache.org/​

 

1. 准备环境

  • 系统:Centos7
  • jdk:1.8

2. 环境部署

解压 rocketmq ,并进入 rocketmq 下的 bin 目录

#########调整启动内存#######
# vim bin/runserver.sh  #调整nameserver启动的内存(如果服务器内存比较大,可以不调整),如果内存较小,不调整此文件,可能导致无法启动
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx512m -Xmn512m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=320m"

# vim bin/runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx512m -Xmn256m"


########调整日志文件位置########
# vim conf/logback_broker.xml
# vim conf/logback_filtersrv.xml
# vim conf/logback_namesrv.xml
# vim conf/logback_tools.xml

以上四个文件,将类似于 [${user.home}/logs/rocketmqlogs/namesrv_default.log] 修改为自定义的日志路径,如[/data/logs/rocketmqlogs/namesrv_default.log],如果不修改,日志就会写入到用户目录下的logs目录下。

 

3. rocketmq的启动

启动namesrv服务:nohup sh bin/mqnamesrv &

# tail -f nohup.out
The Name Server boot success  #输出此类信息,说明启动成功

启动broker服务:nohup sh bin/mqbroker -n localhost:9876 &

# tail -f nohup.out
INFO main - The broker[localhost, 172.16.1.100:10911] boot success. serializeType=JSON and name server is 172.16.1.100:9876  #日志输出如下信息,证明启动成功

4. 查看日志

查看日志:tail -f ~/logs/rocketmqlogs/namesrv.log

查看日志:tail -f ~/logs/rocketmqlogs/broker.log

5. rocketmq服务关闭

关闭namesrv服务:sh bin/mqshutdown namesrv

关闭broker服务 :sh bin/mqshutdown broker

 

 

 

异常1:

启动服务时提示以下异常信息:

Java HotSpot(TM) 64-Bit Server VM warning: Using the DefNew young collector with the CMS collector is deprecated and will likely be removed in a future release
Java HotSpot(TM) 64-Bit Server VM warning: UseCMSCompactAtFullCollection is deprecated and will likely be removed in a future release.
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000006c0000000, 2147483648, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 2147483648 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /allen/rocketmq-4.2.0/bin/hs_err_pid1060.log

问题分析:

根据日志信息分析可以得出是内存不足导致的,需要分别对 bin/runserver.sh 和 bin/runbroker.sh 中内存配置简单做调整。

解决方法:

# vim bin/runserver.sh  #调整nameserver启动的内存(如果服务器内存比较大,可以不调整),如果内存较小,不调整此文件,可能导致无法启动
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx512m -Xmn512m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=320m"

# vim bin/runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx512m -Xmn256m"

异常2:

启动服务时提示以下异常信息:

ERROR Disk Check Scheduled Thread 1-Error when measuring diskspace usage, file doesnt exist on this path:
/root/store/commitlog

问题分析:

路径不存在。

解决方法:

创建 /root/store/commitlog 目录,并重启服务。

 

 

 

 

 

 

 

 

 

 

—————————
如有不足请留言指正
相互学习,共同进步