安装Rocketmq

本次要求是单机版

1.首先需要安装完成JDK环境

2.下载所需要版本包及dashboard包

[root@app-bj-ali-ecs1 ~]# wget https://dist.apache.org/repos/dist/release/rocketmq/5.1.4/rocketmq-all-5.1.4-bin-release.zip
[root@app-bj-ali-ecs1 ~]# wget https://dist.apache.org/repos/dist/release/rocketmq/rocketmq-dashboard/1.0.0/rocketmq-dashboard-1.0.0-source-release.zip
[root@app-bj-ali-ecs1 ~]# unzip rocketmq-all-5.1.4-bin-release.zip
[root@app-bj-ali-ecs1 ~]# unzip rocketmq-dashboard-1.0.0-source-release.zip
[root@app-bj-ali-ecs1 ~]# ls
rocketmq-all-5.1.4-bin-release  rocketmq-all-5.1.4-bin-release.zip  rocketmq-dashboard-1.0.0  rocketmq-dashboard-1.0.0-source-release.zip
[root@app-bj-ali-ecs1 ~]# mv rocketmq-all-5.1.4-bin-release /usr/local/
[root@app-bj-ali-ecs1 ~]# mv rocketmq-dashboard-1.0.0 /usr/local/

3.配置rocketmq namesrv

[root@app-bj-ali-ecs1 ~]# cd /usr/local/
[root@app-bj-ali-ecs1 local]# vim rocketmq-all-5.1.4-bin-release/conf/namesrv.properties # 新增一个文件,名字必须是namesrv.properties!!!
[root@app-bj-ali-ecs1 local]# cat rocketmq-all-5.1.4-bin-release/conf/namesrv.properties
listenPort=8028    # 打开一个监听端口即可

4.配置rocketmq broker

复制代码
[root@app-bj-ali-ecs1 ~]# mkdir -p /data/mqbroker/store # 后面队列数据都会放在这个目录里
[root@app-bj-ali-ecs1 local]# cat rocketmq-all-5.1.4-bin-release/conf/broker.conf
# 追加下列内容
namesrvAddr=172.18.169.29:8028    # 换成自己的ip跟刚才namesrv的port
brokerIP1=172.18.169.29     # 换成自己的ip
listenPort=8029        # 换成自己监听的port,与namesrv不同
storePathRootDir=/data/mqbroker/store   # 刚才创建的数据目录
storePathCommitLog=/data/mqbroker/store/commitlog
storePathConsumerQueue=/data/mqbroker/store/consumequeue
storePathIndex=/data/mqbroker/store/index
storeCheckpoint=/data/mqbroker/store/checkpoint
abortFile=/data/mqbroker/store/abort
复制代码

5.安装dashboard

复制代码
[root@app-bj-ali-ecs1 ~]# cd /usr/local/rocketmq-dashboard-1.0.0/
[root@app-bj-ali-ecs1 rocketmq-dashboard-1.0.0]# mvn clean package -Dmaven.test.skip=true
[root@app-bj-ali-ecs1 rocketmq-dashboard-1.0.0]# cd /usr/local/
[root@app-bj-ali-ecs1 local]# mv rocketmq-all-5.1.4-bin-release rocketmq
[root@app-bj-ali-ecs1 local]# mv rocketmq-dashboard-1.0.0/target/rocketmq-dashboard-1.0.0.jar rocketmq/  # 将编译好的dashboard jar包放进统一目录
[root@app-bj-ali-ecs1 local]# vim rocketmq/conf/application.properties # 注意这里是写在了rocketmq目录里
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

server.address=0.0.0.0
server.port=8031

### SSL setting
#server.ssl.key-store=classpath:rmqcngkeystore.jks
#server.ssl.key-store-password=rocketmq
#server.ssl.keyStoreType=PKCS12
#server.ssl.keyAlias=rmqcngkey

#spring.application.index=true
spring.application.name=rocketmq-dashboard
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
spring.http.encoding.force=true
logging.level.root=INFO
logging.config=classpath:logback.xml
#if this value is empty,use env value rocketmq.config.namesrvAddr  NAMESRV_ADDR | now, you can set it in ops page.default localhost:9876
rocketmq.config.namesrvAddr=172.18.169.29:8028     # 改成自己的namesrv ip port
#if you use rocketmq version < 3.5.8, rocketmq.config.isVIPChannel should be false.default true
rocketmq.config.isVIPChannel=
#timeout for mqadminExt, default 5000ms
rocketmq.config.timeoutMillis=
#rocketmq-console's data path:dashboard/monitor
# rocketmq.config.dataPath=/tmp/rocketmq-console/data
#set it false if you don't want use dashboard.default true
rocketmq.config.enableDashBoardCollect=true
#set the message track trace topic if you don't want use the default one
rocketmq.config.msgTrackTopicName=
rocketmq.config.ticketKey=ticket

#Must create userInfo file: ${rocketmq.config.dataPath}/users.properties if the login is required
rocketmq.config.loginRequired=true
rocketmq.config.dataPath=/usr/local/rocketmq/conf
复制代码
[root@app-bj-ali-ecs1 local]# cat rocketmq/conf/users.properties # 需要放在刚才的rocketmq.config.dataPath里
#定义管理员 
admin
=admin,1
#定义普通用户
user1
=user1
user2
=user2

6.创建便利脚本

复制代码
[root@app-bj-ali-ecs1 rocketmq]# cat start-namesrv.sh
#!/bin/sh
export SRV_NAME="namesrv"
ROCKETMQ_HOME=/usr/local/rocketmq
${ROCKETMQ_HOME}/bin/mqnamesrv -n 172.18.169.29:8028 -c ${ROCKETMQ_HOME}/conf/namesrv.properties  >>logs/rocketmqlogs/${SRV_NAME}.log &

[root@app-bj-ali-ecs1 rocketmq]# cat start-broker.sh
#!/bin/sh
export SRV_NAME="broker"
ROCKETMQ_HOME=/usr/local/rocketmq
${ROCKETMQ_HOME}/bin/mqbroker -c ${ROCKETMQ_HOME}/conf/broker.conf >>logs/rocketmqlogs/${SRV_NAME}.log &

[root@app-bj-ali-ecs1 rocketmq]# cat start-dashboard.sh
#!/bin/sh
SRV_NAME="dashboard"
JAVA_HOME=/usr/local/jdk1.8.0_361    # 换成你的java
ROCKETMQ_HOME=/usr/local/rocketmq
$JAVA_HOME/bin/java -server -Xms256m -Xmx256m -jar ${ROCKETMQ_HOME}/rocketmq-dashboard-1.0.0.jar  --spring.config.location=${ROCKETMQ_HOME}/conf/application.properties >>logs/rocketmqlogs/${SRV_NAME}.log &

[root@app-bj-ali-ecs1 rocketmq]# cat stop-namesrv.sh
#!/bin/sh
export SRV_NAME="namesrv"
ROCKETMQ_HOME=/usr/local/rocketmq
${ROCKETMQ_HOME}/bin/mqshutdown namesrv -c ${ROCKETMQ_HOME}/conf/namesrv.properties

[root@app-bj-ali-ecs1 rocketmq]# cat stop-broker.sh
#!/bin/sh
export SRV_NAME="broker"
ROCKETMQ_HOME=/usr/local/rocketmq
${ROCKETMQ_HOME}/bin/mqshutdown broker -c ${ROCKETMQ_HOME}/conf/broker.conf

[root@app-bj-ali-ecs1 rocketmq]# cat stop-dashboard.sh
#!/bin/sh
SRV_NAME="dashboard"
JAVA_HOME=/usr/local/jdk1.8.0_361
PID=`jps -l | grep dash | awk '{print $1}'`
if [ -z "$PID" ]; then
    echo "Process ${SRV_NAME} is not running."
else
    echo "stop ${SRV_NAME}"
    kill -9 $PID && echo "Process ${SRV_NAME} stop successful..."
fi
复制代码

7.页面登录验证

 

posted @   北方姆Q  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
历史上的今天:
2019-12-06 决策树
点击右上角即可分享
微信分享提示