机器规划
10.1.1.1
10.1.1.2
10.1.1.3
在3台机器上新建用户rocketmq
groupadd rocketmq
useradd -g rocketmq rocketmq
vi /etc/sudoers
rocketmq ALL=(ALL) ALL
在3台机器上传安装包
将安装包上传到/opt目录下,并解压
cd /opt/
unzip rocketmq-all-4.9.2-bin-release.zip
ll
drwxr-xr-x. 6 rocketmq rocketmq 4096 Oct 22 13:56 rocketmq-4.9.2
在3台机器上启动NameServer
启动NameServer
cd bin/
nohup sh mqnamesrv &
验证Name Server 是否启动成功
tail -f ~/logs/rocketmqlogs/namesrv.log
2022-01-07 15:56:17 INFO main - The Name Server boot success. serializeType=JSON
编写broker配置
每个 RocketMQ-on-DLedger Group 至少准备三台机器(本文假设为 3)。
编写 3 个配置文件,建议参考 conf/dledger 目录下的配置文件样例。
关键配置介绍:
每个 RocketMQ-on-DLedger Group 至少准备三台机器(本文假设为 3)。
编写 3 个配置文件,建议参考 conf/dledger 目录下的配置文件样例。
关键配置介绍:
name | 含义 | 举例 |
enableDLegerCommitLog | 是否启动 DLedger | TRUE |
dLegerGroup | DLedger Raft Group的名字,建议和 brokerName 保持一致 | RaftNode00 |
dLegerPeers | DLedger Group 内各节点的端口信息,同一个 Group 内的各个节点配置必须要保证一致 | n0-127.0.0.1:40911;n1-127.0.0.1:40912;n2-127.0.0.1:40913 |
dLegerSelfId | 节点 id, 必须属于 dLegerPeers 中的一个;同 Group 内各个节点要唯一 | n0 |
sendMessageThreadPoolNums | 发送线程个数,建议配置成 Cpu 核数 | 16 |
修改 10.1.1.1 机器上 conf/dledger/broker-n0.conf 的配置。
brokerClusterName=auditCluster
brokerName=RaftNode00
listenPort=30911
namesrvAddr=10.1.1.1:9876;10.1.1.2:9876;10.1.1.3:9876
storePathRootDir=/opt/rocketmq-4.9.2/rmqstore/node00
storePathCommitLog=/opt/rocketmq-4.9.2/rmqstore/node00/commitlog
enableDLegerCommitLog=true
autoCreateTopicEnable=true
dLegerGroup=RaftNode00
dLegerPeers=n0-10.1.1.1:40911;n1-10.1.1.2:40911;n2-10.1.1.3:40911
## must be unique
dLegerSelfId=n0
sendMessageThreadPoolNums=16
#是否添加认证,如果是true的话需要同步修改plain_acl.yml文件
#aclEnable=true
其他两台主机需要同步做上述修改
认证文件plain_acl.yml配置:
globalWhiteRemoteAddresses:
- 10.10.103.*
- 192.168.0.*
accounts:
- accessKey: RocketMQ
secretKey: 12345678
whiteRemoteAddress:
admin: false
defaultTopicPerm: DENY
defaultGroupPerm: SUB
topicPerms:
- topicA=DENY
- topicB=PUB|SUB
- topicC=SUB
groupPerms:
# the group should convert to retry topic
- groupA=DENY
- groupB=PUB|SUB
- groupC=SUB
- accessKey: testname
secretKey: testpasswd
# if it is admin, it could access all resources
admin: true
启动 Broker
在每台机器上新建/opt/rocketmq-4.9.2/rmqstore和/opt/rocketmq-4.9.2/rmqstore/node00目录以及/opt/rocketmq-4.9.2/rmqstore/node00/commitlog文件。
mkdir -p rmqstore/ rmqstore/node00
touch rmqstore/node00/commitlog
三台机器上
nohup sh bin/mqbroker -c conf/dledger/broker-n0.conf &
验证Broker是否启动成功
tail -f ~/logs/rocketmqlogs/broker.log
RocketMQ控制台部署
将jar包传至任意与MQ部署主机网络联通的主机即可
启动
注意按需替换IP地址及端口
没加认证启动:
nohup java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar --rocketmq.config.namesrvAddr="10.1.1.1:9876;10.1.1.2:9876;10.1.1.3:9876" --server.port=8082 > rocketmq-dashboard.log 2>&1 &
如果加了认证:
nohup java -jar rocketmq-dashboard-1.0.1-SNAPSHOT.jar --rocketmq.config.namesrvAddr="10.1.1.1:9876;10.1.1.2:9876;10.1.1.3:9876" --server.port=8082 --rocketmq.config.accessKey=csa_audit --rocketmq.config.secretKey=audit@1234! > rocketmq-dashboard.log 2>&1 &
访问
http://10.1.1.1:8082/#/cluster