在linux环境安装单机RocketMQ

5,525 阅读3分钟

一、下载安装Maven

我们准备安装的Apache-RocketMQ需要通过Maven去编译后才能启动,所以首先要保证linux服务器中有安装java环境以及Maven。

1.下载maven并解压

maven下载地址 maven.apache.org/download.cg… 找到合适的maven版本

wget http://mirrors.shu.edu.cn/apache/maven/maven-3/3.6.0/source/apache-maven-3.6.0-src.tar.gz

通过上面的命令,下载maven压缩包到你想要安装的目录下。 解压安装包

tar -zxvf  apache-maven-3.6.0-src.tar.gz

解压后可以建立一个软连接,方便配置环境变量

ln -s apache-maven-3.6.0-src.tar.gz maven
2.配置环境变量

打开配置文件

vim /etc/profile

在文件末尾追加环境变量

MAVEN_HOME=/usr/local/maven
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin

/usr/local就是你存放maven的目录

让配置文件立刻生效

source /etc/profile
3.安装成功

控制台输入mvn -v 出现版本号说明maven安装成功

二、下载安装RocketMQ

1.下载解压Apache-RocketMQ

github.com/apache/rock… 这个网址可以看到多个版本的RocketMQ

wget https://github.com/apache/rocketmq/archive/rocketmq-all-4.3.0.tar.gz

在/user/local/下新建rocketmq文件夹,将压缩包下载到这个文件夹,然后解压

tar -zxvf rocketmq-all-4.3.0.tar.gz

解压后文件夹如下

2.编译

要使用用maven编译项目,

mvn -Prelease-all -DskipTests clean install -U

开始编译

最后出现BUILD SUCCESS就说明已经编译成功

3.配置环境变量
cd distribution/target/apache-rocketmq/
pwd

记录这个路径,需要配置到环境变量 打开配置文件

vim /etc/profile

在最后追加两行,wq保存退出

export rocketmq=/usr/local/rockemq-source/rocketmq/distribution/target/apache-rocketmq
export PATH=$PATH:$rocketmq/bin

让配置文件立马生效

source /etc/profile

新建日志文件夹

mkdir /usr/local/log/rocketmqlogs
4.启动RocketMQ

启动:

nohup mqnamesrv >/usr/local/log/rocketmqlogs/namesrv.log 2>&1 &  

查看日志:

tail -f /user/local/log/rocketmqlogs/namesrv.log

正常启动的话,会出现

启动broker服务:

nohup mqbroker -n localhost:9876 >/usr/local/log/rocketmqlogs/broker.log 2>&1 &   

查看日志:

tail -f /user/local/log/rocketmqlogs/broker.log

正常启动的话,会出现

在这里插入图片描述

但是由于RocketMQ默认的java内存配置有点大,服务器内存没那么大就会报错

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: MaxNewSize (131072k) is equal to or greater than the entire heap (131072k).  A new max generation size of 131008k will be used.

只要修改一下bin目录下的runserver.sh和runbroker.sh文件的配置就好了

在这里插入图片描述
按照服务器情况修改就好了

JAVA_OPT="${JAVA_OPT} -server -Xms128m -Xmx256m -Xmn128m"

修改后重新启动就应该可以了 运行下面命令,查看RocketMQ进程

ps -ef|grep rocketmq

在这里插入图片描述

5.关闭
mqshutdown namesrv
mqshutdown broker

三、搭建可视化管理控制台RocketMQ Console

1.下载

RocketMQ安装成功后,想要比较简单的访问一下,就可以使用RocketMQ Console RocketMQ有一个对其扩展的开源项目rocketmq-externals,里面有个项目就是RocketMQ Console 整个项目下载下来有点慢,所以就只下Console那个分支项目就好了

在这里插入图片描述

2.配置启动

将项目导入,然后配置配置文件

在这里插入图片描述

将服务器地址配置好

在这里插入图片描述

启动项目

如果出现下面的链接失败问题,可能是你的服务器端口没有开放,把安全组规则配置一下就好了,最好把9876,10909,10911都开放了

java.lang.RuntimeException: org.apache.rocketmq.remoting.exception.RemotingConnectException: 
connect to <x.x.x.x:9876> failed

如果端口开放了,但是还是报connect to x.x.x.x:10911 failed,那就需要配置一下brokerIP1,broker启动时,默认ip是本地ip,但是这个ip可能远程无法访问。

在RocketMQ目录新建properties

echo "brokerIP1=外网IP" > broker.properties

关闭然后重启broker

mqshutdown broker
nohup mqbroker -n localhost:9876 -c 配置文件路径/broker.properties >/usr/local/log/rocketmqlog/broker.log 2>&1 &

重启console项目,浏览器访问

在这里插入图片描述

在这里插入图片描述