凡事都在事上磨,这样才能精进,成长进步提高! ------ 博客园首页

CentOS7 下安装单机的rocketmq

系统环境

1、操作系统:64位CentOS Linux release 7.2.1511 (Core)

2、jdk版本:1.8.0_121

3、IP地址:192.168.1.210

下载rocketmq

访问网址:http://rocketmq.apache.org/docs/quick-start/,如下图:

我们下载编译好的,这样无需自己再编译了,省去很多时间。点击上图红色框的链接。

然后就进入网址:http://rocketmq.apache.org/release_notes/release-notes-4.3.2/。下载Binary版本的rocketmq,如下图:

我写这篇笔记的时候,最新版本为 rocketmq-all-4.3.2,我们选择编译好的zip包,即上图中红色框框标记的。

点击后进入真正的下载页面:

随便选择一个即可,进行下载。

拷贝到centos系统

创建/soft目录

[root@localhost ~]# mkdir /soft

将在windows系统下载好的zip包利用WinSCP工具拷贝到centos系统的/soft目录

解压rocketmq

[root@localhost data]# cd /soft

解压

[root@localhost soft]# unzip rocketmq-all-4.3.2-bin-release.zip

移动

[root@localhost soft]# mv rocketmq-all-4.3.2-bin-release /usr/local/rocketmq

设置rocketmq的环境变量

编辑profile文件

[root@localhost rocket]# vi /etc/profile

将下面的配置添加到文件最底部

export PATH=$PATH:/usr/local/rocketmq/bin

export NAMESRV_ADDR=localhost:9876

保存,并退出。

更新profile文件

[root@localhost rocket]# source /etc/profile

说明:export NAMESRV_ADDR=localhost:9876是NAMESRV_ADDR环境变量

启动Name Server

[root@localhost rocket]# mqnamesrv &

启动Broker

[root@localhost ~]# mqbroker -n localhost:9876 &

会遇到如下问题:

[1] 3361

[root@localhost ~]# Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000005c0000000, 8589934592, 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 8589934592 bytes for committing reserved memory.

# An error report file with more information is saved as:

# /root/hs_err_pid3368.log

原因是:bin/ 下的服务启动脚本 runserver.sh 、runbroker.sh 中对于内存的限制

解决办法:

[root@localhost ~]# cd /usr/local/rocketmq/bin/

[root@localhost bin]# vi runserver.sh

将JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

改成如下:

JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m"

 

[root@localhost bin]# vi runbroker.sh

将JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"

改成JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx128m -Xmn128m"

 

再次启动

[root@localhost bin]# mqbroker -n localhost:9876 &

会提示:

[root@localhost bin]# The broker[localhost.localdomain, 192.168.1.210:10911] boot success. serializeType=JSON and name server is localhost:9876

表示启动成功

关闭防火墙

[root@localhost bin]# systemctl stop firewalld.service

[root@localhost bin]# systemctl disable firewalld.service               //关闭开机启动

关闭Name Server和Broker

[root@localhost bin]# mqshutdown broker

[root@localhost bin]# mqshutdown namesrv

 

示例就不提供了,可参考官网Demo:http://rocketmq.apache.org/docs/simple-example/

因为相信,所以看见.
posted @ 2021-04-14 00:52  zeenzhou  阅读(29)  评论(0编辑  收藏  举报