# RocketMQ部署 ## 1、集群规划: > 两台机,部署两主两从4个broker,2个name server > - 【192.168.70.17】192.168.1.31 (dify) :部署1个name server,broker-a(主),broker-b-s(从),name server嵌入Controller > - 【192.168.70.15】19.168.1.8 (rocky) : 部署1个name server,broker-b(主),broker-a-s(从),name server嵌入Controller > 机器 VPN IP NameServer Broker Master Broker Slave > 本地A 192.168.70.17 ✅ broker-a broker-b-s(b的从) > 本地B 192.168.70.15 ✅ broker-b broker-a-s(a的从) | 模块 | 默认端口 | 作用 | 是否可修改 | 是否对外 | | --------------------- | ------------ | --------------------------------- | ------------------ | ---------- | | **NameServer** | 9876 | 注册中心,Producer/Consumer通过它查找Broker | ✅ 可改 | ✅ 通常暴露给客户端 | | **Broker ListenPort** | 10911 | Broker 服务监听端口(处理生产/消费请求) | ✅ 可改(listenPort) | ✅ 客户端访问 | | **Broker HA 端口** | 10912 | Broker 主从同步使用的端口(仅主监听) | ✅ 可改(haListenPort) | ❌ 仅内部通信 | | **DLedger 端口** | 自定义(如 40911) | DLedger 主从同步(替代 HA 模式) | ✅ 可改(dLegerPeers中) | ❌ 仅主从间同步 | | **Controller 端口** | 10909 | RocketMQ 5 中控制器模式下,主控端口 | ✅ 可改 | ❌ 控制集群 | | **Console Web UI** | 8080(或自定义) | Web 管理面板端口(SpringBoot 应用) | ✅ | ✅ 提供给运维/开发 | 生产者 Producer -------------------------+ | 消费者 Consumer ------------------------+--> [NameServer:9876] | ↓ [NameServer:9876] <----> [多个 Broker:listenPort,如10911] Broker 主 ←──→ Broker 从: [HA 模式用 10912] 或 [DLedger 用 40911/40912] Console Web UI(8080) 通过 9876 查询路由,10911 管理 Broker 状态 本地机器A: 本地局域网IP:192.168.1.31;腾讯云ssl openvpn IP(用于跟腾讯云服务器内网通信):192.168.70.17。 本地机器B: 本地局域网IP:192.168.1.8;腾讯云ssl openvpn IP(用于跟腾讯云服务器内网通信):192.168.70.15。 现在我在web加密看到的BrokerIP地址是192.168.1.x:10911,加云服务器能正常生产和消费到这里面吗? RocketMQ部署,初步规划: 线上的帖子分析: 两台机,部署两主两从4个broker,2个name server 本地机器A: 本地局域网IP:192.168.1.31;腾讯云ssl openvpn IP(用于跟腾讯云服务器内网通信):192.168.70.17。部署1个name server,broker-a(主),broker-b-s(从) 本地机器B: 本地局域网IP:192.168.1.8;腾讯云ssl openvpn IP(用于跟腾讯云服务器内网通信):192.168.70.15。部署1个name server,broker-b(主),broker-a-s(从) 有什么要优化的吗,这里的"主从",是只name server的主从还是broker的主从?还是这两者都有主从?可以自动切换主从吗?是要添加Controller?还是Controller就是在ame server内的? docker run -d --name rocketmq-dashboard -e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.70.15:9876" -p 8080:8080 -t apacherocketmq/rocketmq-dashboard:latest 机器A:broker-a(主) brokerClusterName = TestCluster brokerName=broker-a brokerId=0 brokerRole=SYNC_MASTER flushDiskType=SYNC_MASTER namesrvAddr=192.168.70.17:9876;192.168.70.15:9876 enableDLegerCommitLog=true dLegerGroup=dlmq-a dLegerPeers=n0-192.168.70.17:40911;n1-192.168.70.15:40911 dLegerSelfId=n0 storePathRootDir=/data/rocketmq/store/broker-a storePathCommitLog=/data/rocketmq/store/broker-a/commitlog storePathConsumeQueue=/data/rocketmq/store/broker-a/consumequeue storePathIndex=/data/rocketmq/store/broker-a/index storeCheckpoint=/data/rocketmq/store/broker-a/checkpoint abortFile=/data/rocketmq/store/broker-a/abort 机器B:broker-a(从) brokerClusterName = TestCluster brokerName=broker-a brokerId=0 brokerRole=SYNC_MASTER flushDiskType=SYNC_MASTER namesrvAddr=192.168.70.17:9876;192.168.70.15:9876 enableDLegerCommitLog=true dLegerGroup=dlmq-a dLegerPeers=n0-192.168.70.17:40911;n1-192.168.70.15:40911 dLegerSelfId=n1 storePathRootDir=/data/rocketmq/store/broker-a-s storePathCommitLog=/data/rocketmq/store/broker-a-s/commitlog storePathConsumeQueue=/data/rocketmq/store/broker-a-s/consumequeue storePathIndex=/data/rocketmq/store/broker-a-s/index storeCheckpoint=/data/rocketmq/store/broker-a-s/checkpoint abortFile=/data/rocketmq/store/broker-a-s/abort 机器B:broker-b(主) brokerClusterName = TestCluster brokerName=broker-b brokerId=0 brokerRole=SYNC_MASTER flushDiskType=SYNC_MASTER namesrvAddr=192.168.70.17:9876;192.168.70.15:9876 enableDLegerCommitLog=true dLegerGroup=dlmq-b dLegerPeers=n0-192.168.70.15:40911;n1-192.168.70.17:40911 dLegerSelfId=n0 storePathRootDir=/data/rocketmq/store/broker-b storePathCommitLog=/data/rocketmq/store/broker-b/commitlog storePathConsumeQueue=/data/rocketmq/store/broker-b/consumequeue storePathIndex=/data/rocketmq/store/broker-b/index storeCheckpoint=/data/rocketmq/store/broker-b/checkpoint abortFile=/data/rocketmq/store/broker-b/abort 机器A:broker-b-s(从) brokerClusterName = TestCluster brokerName=broker-b brokerId=0 brokerRole=SYNC_MASTER flushDiskType=SYNC_MASTER namesrvAddr=192.168.70.17:9876;192.168.70.15:9876 enableDLegerCommitLog=true dLegerGroup=dlmq-b dLegerPeers=n0-192.168.70.15:40911;n1-192.168.70.17:40911 dLegerSelfId=n1 storePathRootDir=/data/rocketmq/store/broker-b-s storePathCommitLog=/data/rocketmq/store/broker-b-s/commitlog storePathConsumeQueue=/data/rocketmq/store/broker-b-s/consumequeue storePathIndex=/data/rocketmq/store/broker-b-s/index storeCheckpoint=/data/rocketmq/store/broker-b-s/checkpoint abortFile=/data/rocketmq/store/broker-b-s/abort