Centos7 安装搭建RocketMQ以及可视化管理

RocketMQ的安装

1. 环境准备

系统环境:Centos7 x64

JDK:jdk-8u171-linux-x64

Maven:3.2.x以上的版本均可

2. 下载RocketMQ

wget https://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.2.0/rocketmq-all-4.2.0-bin-release.zip

3. 解压

unzip -d /usr/local/

rocketmq-all-4.4.0-source-release.zip 

4. 使用MAVEN进行打包

执行mvn打包会下好多的依赖包,这个等待下载完成就好,时间可能会略微长久一点。

cd /usr/local/rocketmq-all-4.4.0/

mvn -Prelease-all -DskipTests clean install -U

cd distribution/target/apache-rocketmq

5. 修改配置

一般到这里按照官方文档是可以启动的,但是最关键的一点,除了上面环境的要求外,还有个硬性要求,就是内存不能低于4G,我又不是什么差钱人,所以我选择把配置改小。

cd bin

vim runserver.sh 

# 找到如下配置
JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"

# 修改成你可以接受的范围
JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx521m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

vim runbroker.sh

# 找到如下配置
JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
# 修改成你可以接受的范围
JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m"

6. 配置环境变量

vim /etc/profile

# 将如下配置加到最后一行
export NAMESRV_ADDR=127.0.0.1:9876

# 使配置生效
source /etc/profile

7. 启动Name Server

nohup sh mqnamesrv &

tail -f ~/logs/rocketmqlogs/namesrv.log

8. 启动Broker

nohup sh mqbroker -n localhost:9876 &

tail -f ~/logs/rocketmqlogs/broker.log

9. 执行测试

建议分别于不同两个窗口执行以下两个脚本

# 生产者生产消息
sh tools.sh org.apache.rocketmq.example.quickstart.Producer
# 消费者消费消息
sh tools.sh org.apache.rocketmq.example.quickstart.Consumer

10. 关闭服务

sh mqshutdown broker
sh mqshutdown namesrv

可视化服务配置

1. 下载

cd /usr/local/rocketmq

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

2. 修改配置文件

cd /usr/local/rocketmq/rocketmq-externals/rocketmq-console/src/main/resources

vim application.properties

# 修改如下配置
server.port=8080 // 服务端口号
rocketmq.config.namesrvAddr=127.0.0.1:9876 // 配置服务地址

rocketmq.config.dataPath=/tmp/rocketmq-console/data // mq数据路径,可以自己修改

3. 使用maven打包

cd /usr/local/rocketmq/rocketmq-externals/rocketmq-console

mvn clean package -Dmaven.test.skip=true

4. 运行

java -jar rocketmq-console-ng-1.0.0.jar --server.port=8080 --rocketmq.config.namesrvAddr=127.0.0.1:9876

5. 访问web http://ip:端口号

我的是 http://192.168.0.180:8080 rocketmq-console

emm,说一下,这里有个小坑。

在打包的时候,可能会报出找不到4.4.0-SNAPSHOT.jar这个jar包。根据多方调查,4.4.0已经发布,没有SNAPSHOT版本了,所以需要去更改POM文件中的版本号。

把下面的<rocketmq.version>4.4.0-SNAPSHOT</rocketmq.version>去掉SNAPSHOT即可。

 <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.7</java.version>
        <guava.version>16.0.1</guava.version>
        <commons-digester.version>2.1</commons-digester.version>
        <commons-lang.version>2.6</commons-lang.version>
        <commons-io.version>2.4</commons-io.version>
        <commons-cli.version>1.2</commons-cli.version>
        <rocketmq.version>4.4.0</rocketmq.version>
        <surefire.version>2.19.1</surefire.version>
        <aspectj.version>1.6.11</aspectj.version>
        <main.basedir>${basedir}/../..</main.basedir>
        <docker.image.prefix>styletang</docker.image.prefix>
    </properties>

文章发布自:笑凡尘,转载请注明出处,谢谢!