部署rocketmq和可视化客户端

一、 服务器资源

服务名称:Linux服务器

IP:[请查看资源分配文档]

操作系统:CentOS 7.8 x64

二、rocketmq安装

2.1下载

下载地址:rocketmq.apache.org/dowloading/…

file

2.2、将压缩包放到 tools目录下并解压

rocketmq-all-4.8.0-bin-release.zip上传到/opt/tools目录下并解压并重命名

# cd /opt/tools

# unzip -d /opt/apps/ rocketmq-all-4.8.0-bin-release.zip

# cd /opt/apps/

# mv rocketmq-all-4.8.0-bin-release rocketmq-4.8.0

2.3、配置环境变量

# vi /etc/profile

在文件末尾添加以下内容:

#rocketmq env

export ROCKETMQ_HOME=/opt/apps/rocketmq-4.8.0

export PATH=$PATH:$ROCKETMQ_HOME/bin

使修改生效:

# source /etc/profile

2.4、创建存储路径和日志目录

# mkdir -p /opt/apps/rocketmq-4.8.0/store/{store,commitlog,consumequeue,index}

# mkdir /opt/apps/rocketmq-4.8.0/logs

2.5、broker配置

备份原配置文件

# cd /opt/apps/rocketmq-4.8.0/conf

# mv broker.conf broker.conf.bak

# vi broker.conf

添加以下内容:

#ip为服务器内网地址,port可自由设置一般为9876

namesrvAddr=xxx.xxx.x.xx:9876

messageIndexSafe=true

#是否允许Broker 自动创建。Topic,建议线下开启,线上关闭

autoCreateTopicEnable=true

waitTimeMillsInSendQueue=5000

#发送消息线程池数量

sendMessageThreadPoolNums=64

useReentrantLockWhenPutMessage=true

defaultReadQueueNums = 16

defaultWriteQueueNums = 16

#ip设置外网ip,不需要连接外网的话,可以在参数前面加#注释掉

#brokerIP1=ip(外网ip)

#默认值为DefaultCluster,可以修改为broker所属的哪个集群

brokerClusterName=DefaultCluster

#原始值为本机主机名,Broker名称

brokerName=broker-a

#BrokerId,必须是大等于 0 的整数,0 表示Master,>0 表示 Slave,一个 Master 可以挂多个 Slave,Master 与 Slave通过 BrokerName 来配对,原始值为0

brokerId=0

deleteWhen=04

fileReservedTime=48

brokerRole=ASYNC_MASTER

flushDiskType=ASYNC_FLUSH

#port可自由设置,一般设置10911

listenPort=10911

storePathRootDir=/opt/apps/rocketmq-4.8.0/store

storePathCommitLog=/opt/apps/rocketmq-4.8.0/store/commitlog

storePathConsumeQueue=/opt/apps/rocketmq-4.8.0/store/consumequeue

storePathIndex=/opt/apps/rocketmq-4.8.0/store/index

修改启动脚本参数,根据自己linux的配置进行调整:

# vi /opt/apps/rocketmq-4.8.0/bin/runbroker.sh

调整以下内容:

JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn512m -XX:PermSize=128m -XX:MaxPermSize=320m"

注意:Xms和Xmx至少是1G 否则启动不起来 Xmn一般是前者的一半,这边设置的内存不能大于机器实际的内存,根据实际情况调整

# vi /opt/apps/rocketmq-4.8.0/bin/runserver.sh
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m -XX:PermSize=128m -XX:MaxPermSize=320m"

注意:Xms和Xmx至少是1G 否则启动不起来 Xmn一般是前者的一半,这边设置的内存不能大于机器实际的内存,根据实际情况调整

2.6、启动NameSrv

# nohup sh mqnamesrv > /opt/apps/rocketmq-4.8.0/logs/mqnamesrv.log 2>&1 &

验证是否启动成功

# tail -f /opt/apps/rocketmq-4.8.0/logs/mqnamesrv.log

file

file

2.7、启动broker

# nohup sh mqbroker -c /opt/apps/rocketmq-4.8.0/conf/broker.conf >/opt/apps/rocketmq-4.8.0/logs/broker.log 2>&1 &

验证是否启动成功

# tail -f /opt/apps/rocketmq-4.8.0/logs/broker.log

file

file

2.8、停止broker

# sh mqshutdown broker

备注:停止这个任务时不能用kill,如果用kill的话,重新启动的话,broker是启动不了的。

2.9、停止namesrv

# sh mqshutdown namesrv

备注:停止这个任务时不能用kill,如果用kill的话,重新启动的话,broker是启动不了的。

三、配置防火墙

3.1、配置防火墙

启动9876、10911端口

# firewall-cmd --permanent --add-port=9876/tcp

# firewall-cmd --permanent --add-port=10911/tcp

重启防火墙

# systemctl restart firewalld

四、可视化客户端

这里,rocketmq提供了可视化客户端,就是rocketmq-console-ng

4.1下载

file

4.2源码打包

mvn clean package -Dmaven.test.skip=true

如果你下载依赖慢,可以配置一下maven仓库地址,修改mavensettings.xml文件

<mirrors>
    <mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
          <mirrorOf>central</mirrorOf>        
    </mirror>
</mirrors>

4.3jar包启动

打包成功后,可以看到target下,生成rocketmq-console-ng-1.0.0.jar

启动即可:

java -jar target/rocketmq-console-ng-1.0.0.jar --server.port=7777 --rocketmq.config.namesrvAddr=xxxx:9876
  • server.port是指定启动端口
  • rocketmq.config.namesrvAddr是指定rocketmq的nameserver地址

file

可以看到启动成功!!!

  • 直接访问localhost:7777,即可看到rocketmq可视化客户端

file

好了,rocketmq部署成功,可视化客户端部署成功!!!

作者:|萌褚|,原文链接: http://www.imooc.com/article/325706

文章推荐

SpringBatch从入门到精通-2-StepScope作用域和用法

docker 快速上手

关于基础RMQ——ST算法

动态规划解0-1背包问题

Git技法:.gitignore、移除暂存与撤销修改

iOS全埋点解决方案-数据存储

作为软件工程师,给年轻时的自己的建议(上)

DirectX11--CPU与GPU计时器

4.直方图介绍和使用|MySQL索引学习

Java原生图片Base64转码与Base64解码

可靠分布式系统- paxos 的直观解释

一文带你了解 「图数据库」Nebula 的存储设计和思考