Enlace original: https://blog.51cto.com/4259679
El clúster consta de dos instancias de servidor de nombres y cuatro instancias de intermediario.
Dos servicios implementan MQ al mismo tiempo, consulte Dry Goods-Deploy RocketMQ para una construcción específica
1. servidor 192.168.20.40
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store /
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store / broker-a
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store / broker-a / commitlog
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store / broker-b
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store / broker-b / commitlog
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store / broker-as
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store / broker-as / commitlog
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store / broker-bs
[root @ k8s-master ~] # mkdir / usr / local / rocketmq / store / broker-bs / commitlog
[root @ k8s-master ~] # cd / usr / local / rocketmq / conf / 2m-2s-sync /
[root @ k8s-master 2m-2s-sync] # ls
broker-a.properties broker-as.properties broker-b.properties broker-bs.properties
Modificar el archivo de configuración
[root @ k8s-master 2m-2s-sync] # más broker-a.properties
brokerClusterName = rocketmq-cluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = SYNC_MASTER
flushDiskType = ASYNC_FLUSH
listenPort = 10911
storePathRootDir = / usr / local / rocketmq / store / broker-a
storePathCommitLog = / usr / local / rocketmq / store / broker-a / commitlog
[root @ k8s-master 2m-2s-sync] # más broker-bs.properties
brokerClusterName = rocketmq-cluster
brokerName = broker-b
brokerId = 1
deleteWhen = 04
fileReservedTime = 48
brokerRole = SLAVE
flushDiskType = ASYNC_FLUSH
listenPort = 11911
storePathRootDir = / usr / local / rocketmq / store / broker-bs
storePathCommitLog = / usr / local / rocketmq / store / broker-bs / commitlog
[root @ k8s-master 2m-2s-sync] #
2. servidor 192.168.20.430
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store /
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store / broker-a
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store / broker-a / commitlog
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store / broker-b
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store / broker-b / commitlog
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store / broker-as
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store / broker-as / commitlog
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store / broker-bs
[root @ k8s-node2 ~] # mkdir / usr / local / rocketmq / store / broker-bs / commitlog
[root @ k8s-node2 ~] # cd / usr / local / rocketmq / conf / 2m-2s-sync /
Modificar el archivo de configuración
[root @ k8s-node2 2m-2s-sync] # grep -v "^ #" broker-as.properties
brokerClusterName = rocketmq-cluster
brokerName = broker-a
brokerId = 1
deleteWhen = 04
fileReservedTime = 48
brokerRole = SLAVE
flushDiskType = ASYNC_FLUSH
listenPort = 11911
storePathRootDir = / usr / local / rocketmq / store / broker-as
storePathCommitLog=/usr/local/rocketmq/store/broker-as/commitlog
[root@k8s-node2 2m-2s-sync]# grep -v "^#" broker-b.properties
brokerClusterName=rocketmq-cluster
brokerName=broker-b
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=SYNC_MASTER
flushDiskType=ASYNC_FLUSH
listenPort=10911
storePathRootDir=/usr/local/rocketmq/store/broker-b
storePathCommitLog=/usr/local/rocketmq/store/broker-b/commitlog
3、启动服务
启动两个 name server
[root@k8s-master bin]# nohup sh mqnamesrv &
[1] 8048
[root@k8s-node2 bin]# nohup sh mqnamesrv &
[1] 8510
在192.168.20.40上启动 broker a 主服务器:
[root@k8s-master bin]# nohup sh mqbroker -n '192.168.20.40:9876;192.168.20.39:9876' -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a.properties &
[2] 8099
[root@k8s-master bin]# nohup: ignoring input and appending output to ‘nohup.out’
在192.168.20.43上启动 broker a 从服务器:
[root@k8s-node2 bin]# nohup sh mqbroker -n '192.168.20.40:9876;192.168.20.39:9876' -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a-s.properties &
[2] 8588
[root@k8s-node2 bin]# nohup: 忽略输入并把输出追加到"nohup.out"
在192.168.20.43上启动 broker b 主服务器:
[root@k8s-node2 bin]# nohup sh mqbroker -n'192.168.20.40:9876;192.168.20.39:9876' -c /usr/local/rocketmq/conf/2m-2s-sync/broker-b.properties &
[3] 8672
[root@k8s-node2 bin]# nohup: 忽略输入并把输出追加到"nohup.out"
在192.168.20.40上启动 broker b 从服务器:
[root@k8s-master bin]# nohup sh mqbroker -n '192.168.20.40:9876;192.168.20.39:9876' -c /usr/local/rocketmq/conf/2m-2s-sync/broker-b-s.properties &
[3] 8211
[root@k8s-master bin]# nohup: ignoring input and appending output to ‘nohup.out’
4、检查服务
确认两台服务上分别运行name server和两个broker。
192.168.20.40
192.168.20.43
结束MQ双主双从部署
----------------------fin---------------------
Lectura recomendada: