Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台

废话不多说,直接上操作

  • ======= 《下载安装包》=======
  • 安装JDK
  • 安装RocketMQ
  • ======= 《MQ配置详情》=======
  • 配置内存
  • 配置日志
  • 启动MQ服务(单机模式)
  • 启动MQ服务(集群模式+多主多从)
    • 安装MQ
    • 配置a服务器:
    • 配置b服务器:
  • ======= 《Rocketmq-dashboard控制台页面》=======
  • 安装Rocketmq-dashboard
    • 查看MQ控制台页面

======= 《下载安装包》=======

安装JDK

下载Jdk1.8: https://www.oracle.com/java/technologies/downloads/
编辑环境变量配置:vim /etc/profile

 export JAVA_HOME=/目录/jdk1.8.0_261
 export PATH=$PATH:$JAVA_HOME/bin
 export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

重新加载配置:source /etc/profile,查看是否配置成功:java -version

安装RocketMQ

下载RocketMQ:https://rocketmq.apache.org/download/
解压文件:tar -zxvf rocketmq-all-4.9.2-bin-release.tar.gz

======= 《MQ配置详情》=======

配置内存

调整内存大小:-server -Xms256m -Xmx256m -Xmn256m -XX:PermSize=128m-XX:MaxPermSize=128m
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第1张图片

修改配置runbroker.sh:vim runbroker.sh
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第2张图片
修改配置runserver.sh:runserver.sh
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第3张图片

修改配置tools.sh:tools.sh
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第4张图片

配置日志

自定义日志文件输出位置
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第5张图片

启动MQ服务(单机模式)

自定义端口号:
创建配置文件:namesrv.properties
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第6张图片
自定义端口号:listenPort=9876
在这里插入图片描述

进入bin目录:cd /bin
自定义端口号 启动MQ服务:
nohup sh mqnamesrv -c /usr/local/application/rocketmq/4.9.2/conf/namesrv.properties &
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第7张图片

Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第8张图片

启动MQ服务(集群模式+多主多从)

安装MQ

准备2台服务器,分别在2台服务器安装RocktMQ
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第9张图片

配置a服务器:

找到配置 目录:rocketmq-4.9.2/conf/2m-2s-async/
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第10张图片

修改(主)配置文件:broker-a.properties

#所属集群名字,同一个集群名字相同
brokerClusterName=rocketmq-cluster
#broker名字
brokerName=broker-server-a
#0:主服务master   1:从服务slave
brokerId=0
#删除文件的时间点,凌晨4点
deleteWhen=04
#文件保留时间 默认是48小时
fileReservedTime=168
#Broker 的角色,ASYNC_MASTER=异步复制Master,SYNC_MASTER=同步双写Master,SLAVE=slave节点
brokerRole=ASYNC_MASTER
#刷盘方式,ASYNC_FLUSH=异步刷盘,SYNC_FLUSH=同步刷盘 
flushDiskType=ASYNC_FLUSH
#Broker 对外服务的监听端口
listenPort=10911
#nameServer地址,这里nameserver是单台,如果nameserver是多台集群的话,就用分号分割(即namesrvAddr=ip1:port1;ip2:port2;ip3:port3)
namesrvAddr= A服务器IP:9876;B服务器IP:9876
#每个topic对应队列的数量,默认为4,实际应参考consumer实例的数量,值过小不利于consumer负载均衡
defaultTopicQueueNums=8
#是否允许 Broker 自动创建Topic,生产建议关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,生产建议关闭
autoCreateSubscriptionGroup=true
#设置A服务器IP
brokerIP1=A服务器IP
#存储路径
storePathRootDir=/usr/local/application/rocketmq/4.9.2/data/store-a
#commitLog 存储路径
storePathCommitLog=/usr/local/application/rocketmq/4.9.2/data/store-a/commitlog
#消费队列存储路径存储路径
storePathConsumerQueue=/usr/local/application/rocketmq/4.9.2/data/store-a/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/application/rocketmq/4.9.2/data/store-a/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/application/rocketmq/4.9.2/data/store-a/checkpoint
#abort 文件存储路径
abortFile=/usr/local/application/rocketmq/4.9.2/data/store-a/abort
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000

修改(从)配置文件:broker-a-s.properties

#================ (slave-a)从服务器配置 ================
brokerClusterName=rocketmq-cluster
brokerName=broker-server-a
#0:主服务master   1:从服务slave
brokerId=1
#删除文件的时间点,凌晨4点
deleteWhen=04
#文件保留时间 默认是48小时
fileReservedTime=168
#异步复制SLAVE
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH
#Broker 对外服务的监听端口
listenPort=11011
#nameServer地址,这里nameserver是单台,如果nameserver是多台集群的话,就用分号分割(即namesrvAddr=ip1:port1;ip2:port2;ip3:port3)
namesrvAddr=A服务器:9876;B服务器:9876
#每个topic对应队列的数量,默认为4,实际应参考consumer实例的数量,值过小不利于consumer负载均衡
defaultTopicQueueNums=8
#是否允许 Broker 自动创建Topic,生产建议关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,生产建议关闭
autoCreateSubscriptionGroup=true
#真实场景 设置BrokerIP服务器127.0.0.1的ip地址
brokerIP1=当前A服务器地址
#存储路径
storePathRootDir=/usr/app/rocketmq-4.9.2/data/store-b
#commitLog 存储路径
storePathCommitLog=/usr/app/rocketmq-4.9.2/data/store-b/commitlog
#消费队列存储路径存储路径
storePathConsumerQueue=/usr/app/rocketmq-4.9.2/data/store-b/consumequeue
#消息索引存储路径
storePathIndex=/usr/app/rocketmq-4.9.2/data/store-b/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/app/rocketmq-4.9.2/data/store-b/checkpoint
#abort 文件存储路径
abortFile=/usr/app/rocketmq-4.9.2/data/store-b/abort
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000

启动a服务器的MQ主服务:
nohup sh bin/mqbroker -c /usr/local/application/rocketmq/4.9.2/conf/2m-2s-async/broker-a.properties &
启动a服务器的MQ从服务:
nohup sh bin/mqbroker -c /usr/local/application/rocketmq/4.9.2/conf/2m-2s-async/broker-a-s.properties &
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第11张图片

配置b服务器:

修改(主)配置文件:broker-b.properties

#所属集群名字,同一个集群名字相同
brokerClusterName=rocketmq-cluster
#broker名字
brokerName=broker-server-b
#0:主服务master   1:从服务slave
brokerId=0
#删除文件的时间点,凌晨4点
deleteWhen=04
#文件保留时间 默认是48小时
fileReservedTime=168
#Broker 的角色,ASYNC_MASTER=异步复制Master,SYNC_MASTER=同步双写Master,SLAVE=slave节点
brokerRole=ASYNC_MASTER
#刷盘方式,ASYNC_FLUSH=异步刷盘,SYNC_FLUSH=同步刷盘 
flushDiskType=ASYNC_FLUSH
#Broker 对外服务的监听端口
listenPort=10911
#nameServer地址,这里nameserver是单台,如果nameserver是多台集群的话,就用分号分割(即namesrvAddr=ip1:port1;ip2:port2;ip3:port3)
namesrvAddr=A服务器IP:9876;B服务器IP:9876
#每个topic对应队列的数量,默认为4,实际应参考consumer实例的数量,值过小不利于consumer负载均衡
defaultTopicQueueNums=8
#是否允许 Broker 自动创建Topic,生产建议关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,生产建议关闭
autoCreateSubscriptionGroup=true
#真实场景 B服务器IP
brokerIP1=B服务器IP
#存储路径
storePathRootDir=/usr/local/rocketmq/4.9.2/data/store-a
#commitLog 存储路径
storePathCommitLog=/usr/local/rocketmq/4.9.2/data/store-a/commitlog
#消费队列存储路径存储路径
storePathConsumerQueue=/usr/local/rocketmq/4.9.2/data/store-a/consumequeue
#消息索引存储路径
storePathIndex=/usr/local/rocketmq/4.9.2/data/store-a/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/local/rocketmq/4.9.2/data/store-a/checkpoint
#abort 文件存储路径
abortFile=/usr/local/rocketmq/4.9.2/data/store-a/abort
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000

修改(从)配置文件:broker-b-s.properties

#================ (slave-b)从服务器配置 ================
brokerClusterName=rocketmq-cluster
brokerName=broker-server-a
#0:主服务master   1:从服务slave
brokerId=1
#删除文件的时间点,凌晨4点
deleteWhen=04
#文件保留时间 默认是48小时
fileReservedTime=168
#异步复制SLAVE
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH
#Broker 对外服务的监听端口
listenPort=11011
#nameServer地址,这里nameserver是单台,如果nameserver是多台集群的话,就用分号分割(即namesrvAddr=ip1:port1;ip2:port2;ip3:port3)
namesrvAddr=A服务器:9876;B服务器:9876
#每个topic对应队列的数量,默认为4,实际应参考consumer实例的数量,值过小不利于consumer负载均衡
defaultTopicQueueNums=8
#是否允许 Broker 自动创建Topic,生产建议关闭
autoCreateTopicEnable=true
#是否允许 Broker 自动创建订阅组,生产建议关闭
autoCreateSubscriptionGroup=true
#真实场景 设置BrokerIP服务器127.0.0.1的ip地址
brokerIP1=当前A服务器地址
#存储路径
storePathRootDir=/usr/app/rocketmq-4.9.2/data/store-b
#commitLog 存储路径
storePathCommitLog=/usr/app/rocketmq-4.9.2/data/store-b/commitlog
#消费队列存储路径存储路径
storePathConsumerQueue=/usr/app/rocketmq-4.9.2/data/store-b/consumequeue
#消息索引存储路径
storePathIndex=/usr/app/rocketmq-4.9.2/data/store-b/index
#checkpoint 文件存储路径
storeCheckpoint=/usr/app/rocketmq-4.9.2/data/store-b/checkpoint
#abort 文件存储路径
abortFile=/usr/app/rocketmq-4.9.2/data/store-b/abort
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000

启动b服务器的MQ主服务:
nohup sh bin/mqbroker -c /usr/local/rocketmq/4.9.2/conf/2m-2s-async/broker-b.properties &
启动b服务器的MQ从服务:
nohup sh bin/mqbroker -c /usr/local/rocketmq/4.9.2/conf/2m-2s-async/broker-b-s.properties &
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第12张图片

======= 《Rocketmq-dashboard控制台页面》=======

安装Rocketmq-dashboard

下载Rocketmq-dashboard:https://github.com/apache/rocketmq-dashboard
打开项目 配置application.yml:application.yml
Liunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第13张图片
启动jar包:nohup java -jar -Dcom.sun.management.jmxremote.ssl=false -Xms125M -Xmx256M -Xmn128M -XX:SurvivorRatio=2 rocketmq-dashboard-1.0.1-SNAPSHOT.jar &

查看MQ控制台页面

http://地址:8080/#/clusterLiunx环境 安装RocketMQ服务+自定义端口号+搭建集群模式(多主多从)+整合Rocketmq-dashboard控制台_第14张图片

你可能感兴趣的:(java-rocketmq,rocketmq,java)