Centos7 公网搭建Rocketmq及避坑指南

作者:超级无敌大飞   阅读 (1115)  |  收藏 (0)  |  点赞 (0)

摘要

详细介绍如何在Centos7 公网搭建Rocketmq,以及注意事项,作者亲自操作,一步步亲身实践,含泪巨作


原文链接:Centos7 公网搭建Rocketmq及避坑指南


网上已经有很多搭建Roketmq的文章,但是如何在公网上搭建Rocketmq如何配置却描述的不是很明了,本文将详细讲解如何在公网上搭建Roketmq,并且允许其他客户端访问。

1、jdk安装和环境变量配置

下载安装jdk不再讲解,仅仅说明解压后如何配置jdk环境变量

vi /etc/profile.d/java.sh

添加如下配置

#!/bin/bash
JAVA_HOME=/home/sorftware/jdk1.8.0_341/   #此处换成你的JDK的安装目录
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH

重新加载环境变量

source /etc/profile

2、下载安装Rocketmq

下载Rocketmq

上传到你的公网服务器目录中,本文上传目录为

/home/sorftware/

解压(没有安装uzip,使用yum -y install uzip下载安装)

unzip rocketmq-all-4.9.4-bin-release.zip

3、配置Rocketmq

共需要配置四处(公网IP下请一定严格按照此章节)

配置rocketmq环境变量(重要)

vi /etc/profile.d/rocketmq.sh

添加如下内容

#!/bin/bash
ROCKETMQ_HOME=/home/sorftware/rocketmq-all-4.9.4-bin-release/  #改成你自己的路径
NAMESRV_ADDR=36.41.172.225:9876    #ip设置为你自己的公网IP,端口号不用变
export ROCKETMQ_HOME NAMESRV_ADDR

重新加载环境变量

source /etc/profile

修改namesrv的内存配置

在你的rocketmq加压目录下,进入bin文件夹

vi runserver.sh

找到如下内容处

image.png

注意,我圈出来的两个地方,不同的JDK版本需要修改的地方是不一样的,否则启动的时候,很肯就会报内存溢出(内存没有改),因此为了防止出现这个问题,建议大家把这两处都改掉,按照你的系统实际可以使用的内存修改,我在这里全部修改成了512m(注意,g一定要改成m,不要忘了)

修改broker.sh内存配置

vi ./runbroker.sh

image.png

找到上面圈出的地方,也修改为你的系统真实可以支持的内存大小

修改broker.conf配置文件(重要)

在安装根目录下进入conf文件夹

vi broker.conf

在末尾添加如下内容

autoCreateTopicEnable = true #这个配置是允许当topic不存在时自动配置,否则生产者发送消息时如果没有这个主题会报错
brokerIP1 = 36.41.172.225   #换成你的broker的公网IP

4、关闭防火墙或开放端口

这一步极其重要,尤其在云服务器上购买的服务器上搭建Rocketmq时,这一步尤为关键,我就栽在了这上面,以为一切都万事大吉,谁知道访问的时候访问不到。

注意,需要防火墙或者开放的端口有三个,分别为98761090910911

关闭防火墙的方法网上很多,此处不再赘述,此处仅说明下开放端口的注意事项,需要登录你的服务器所在的厂商后端,编辑安全组,新增这三个端口的出入栈。下图为我的服务器安全组:

image.png

5、启动Rocketmq

在你解压的Rocketmq根目录下,进入bin文件夹

启动namesrv

nohup ./mqnamesrv &

启动broker

有些Rocketmq启动broker时默认不会读取conf下面的broker.conf,因此此处强制读取此文件(重要

nohup ./mqbroker -c ../conf/broker.conf &

停止namesrv

./mqshutdown namesrv

停止broker

./mqshutdown broker

注意事项

启动过程中一定要时刻关注bin目录下的nohup.out文件内容,启动报错和IP识别信息都在这里打印

tail -f nohup.out

6、Rockmq可视化

开源社区贡献的一个可视化的仪表盘项目,为一个springboot项目,可以直接导入到idea中运行

下载导入到idea中,要修改application.yml中的namesrvAddrs,改成你的服务器公网IP,然后启动该项目

在浏览器中访问 http://localhost:8080 效果如下:

image.png

自此,Centos7 公网安装Rocketmq完毕,你可以在你的项目中配置这个单机版的Rocketmq生产和消费消息了。


分类   Spring 管理
字数   1903

博客标签    Rocketmq 安装  

评论