Linux部署rocketmq和可视化客户端
镜像下载、域名解析、时间同步请点击 阿里云开源镜像站
部署rocketmq和可视化客户端
一、 服务器资源
服务名称:Linux
服务器
IP:[请查看资源分配文档]
操作系统:CentOS 7.8 x64
二、rocketmq安装
2.1下载
下载地址:rocketmq.apache.org/dowloading/…
这里,咋们下载4.8.0版本
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
# jps
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
# jps
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下载
4.2源码打包
mvn clean package -Dmaven.test.skip=true
如果你下载依赖慢,可以配置一下maven仓库地址,修改
maven
的settings.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地址
可以看到启动成功!!!
- 直接访问localhost:7777,即可看到
rocketmq
的可视化客户端
好了,rocketmq
部署成功,可视化客户端
部署成功!!!