RocketMQ-Linux普通集群搭建

RocketMQ搭建

1. 普通集群搭建

  • 打开RocketMQ的安装路径:/usr/local/apache-rocketmq-all-5.1.0-bin-release

  • cd bin(修改内存配置)

    runbroker.sh文件

    JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m "

    runserver.sh

    JAVA_OPT=“${JAVA_OPT} -server -Xms256g -Xmx256g -Xmn128g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m”

  • cd conf(进入存放配置文件的文件夹)

在这里插入图片描述

borker.conf配置文件,文件内容

brokerId = 0 -------------------- 0表示Master(主),>0表示slave(从)
deleteWhen = 04 ----------------- 删除文件时间点,默认是凌晨4点
fileReservedTime = 48 ----------- 文件保留时间,默认48小时
brokerRole = ASYNC_MASTER ------- Broker的角色:ASYNC_MASTER异步复制Master,SYNC_MASTER同步双写Master,SLAVE从节点
flushDiskType = ASYNC_FLUSH ----- 异步刷盘
autoCreateTopicEnable = true ---- 是否允许Broker自动创建Topic,建议线下开启,线上关闭

2m-2s-async: 两主两从异步配置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L4iOE0jt-1679450027645)(G:\note\RocketMQ\images\1678238917634.jpg)]

broker-a.properties, broker-b.properties

brokerClusterName=DefaultCluster ----- 所属集群名字
brokerName=broker-a ------------------ borker的名称
brokerId=0 --------------------------- 0表示Master(主),>0表示slave(从)
deleteWhen=04 ------------------------ 删除文件时间点,默认是凌晨4点
fileReservedTime=48 ------------------ 文件保留时间,默认48小时
brokerRole=ASYNC_MASTER -------------- Broker的角色:ASYNC_MASTER异步复制Master,SYNC_MASTER同步双写Master,SLAVE从节点
flushDiskType=ASYNC_FLUSH ------------ 异步刷盘

broker-a-s.properties,broker-b-s.properties

brokerClusterName=DefaultCluster ----- 所属集群名字
brokerName=broker-a ------------------ borker的名称
brokerId=1 --------------------------- 0表示Master(主),>0表示slave(从)
deleteWhen=04 ------------------------ 删除文件时间点,默认是凌晨4点
fileReservedTime=48 ------------------ 文件保留时间,默认48小时
brokerRole=SLAVE -------------- Broker的角色:ASYNC_MASTER异步复制Master,SYNC_MASTER同步双写Master,SLAVE从节点
flushDiskType=ASYNC_FLUSH ------------ 异步刷盘

2m-2s-sync: 两主两从同步配置

2m-2s-sync文件夹内的文件同2m-2s-async的文件相同,文件内属性也是由:brokerClusterName,brokerName,brokerId,deleteWhen,fileReservedTime,brokerRole,flushDiskType这些属性,具体描述可以参考以上(两主两从异步配置)

2m-noslave: 两主无从配置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xZvDvW2Z-1679450027646)(G:\note\RocketMQ\images\20230308113928.png)]

2m-noslave文件夹中的文件:broker-a.properties,broker-b.properties和broker-trace.properties和2m-2s-async中的文件属性是一样的,也是由:brokerClusterName,brokerName,brokerId,deleteWhen,fileReservedTime,brokerRole,flushDiskType这些属性,具体描述可以参考以上(两主两从异步配置)

  • 启动RocketMQ

先启动namesrv

输入: nohup sh mqnamesrv &

输入: jps 查看是否启动成功

在这里插入图片描述

再启动broker

输入: nohup sh mqbroker -c /usr/local/server/mq/rocketmq/conf/2m-2s-async/broker-a.properties

输入: jps 查看是否启动成功

在这里插入图片描述

  • 关闭namesrv和broker

在/bin目录下边

sh mqshutdown namesrv

在这里插入图片描述

sh mqshutdown broker

在这里插入图片描述

jps 验证

在这里插入图片描述

2. 举例

  • 环境准备

    服务器:192.168.2.28     console(可视化界面,也可以配置在下边俩台中的任意一台服务器中) 
    服务器:192.168.2.32		nameserver 		broker-a		broker-b-s
    服务器:192.168.2.35   	nameserver 		broker-b		broker-a-s
    
  • 集群搭建

    • 第一台机器

      修改broker-a.properties

      namesrvAddr=192.168.2.32:8600;192.168.2.35:8600
      #集群名称,主从要一样
      brokerClusterName=ttparkCluster
      #broker名称,主从要一样,根据BrokerRole来确定谁是主谁是从
      brokerName=broker-a
      #brokerID 0是主,>0是从
      brokerId=0
      #删除日志时间为凌晨4点
      deleteWhen=04
      #文件保留时间48小时
      fileReservedTime=48
      #主从关系,异步复制
      brokerRole=ASYNC_MASTER
      #刷盘模式,异步刷盘
      flushDiskType=ASYNC_FLUSH
      defaultTopicQueueNums=4
      #存储路径
      storePathRootDir=/data/rocketmq-a/store
      #commitLog 存储路径
      storePathCommitLog=/data/rocketmq-a/store/commitlog
      #消费队列存储路径存储路径
      storePathConsumeQueue=/data/rocketmq-a/store/consumequeue
      #消息索引存储路径
      storePathIndex=/data/rocketmq-a/store/index
      #checkpoint 文件存储路径
      storeCheckpoint=/data/rocketmq-a/store/checkpoint
      #abort 文件存储路径
      abortFile=/data/rocketmq-a/store/abort
      listenPort=10911
      

      修改broker-b-s.properties

      namesrvAddr=192.168.2.32:8600;192.168.2.35:8600
      #集群名称,主从要一样
      brokerClusterName=ttparkCluster
      #broker名称,主从要一样,根据BrokerRole来确定谁是主谁是从
      brokerName=broker-b
      #brokerID 0是主,>0是从
      brokerId=1
      #删除日志时间为凌晨4点
      deleteWhen=04
      #文件保留时间48小时
      fileReservedTime=48
      #主从关系,异步复制
      brokerRole=SLAVE
      #刷盘模式,异步刷盘
      flushDiskType=ASYNC_FLUSH
      defaultTopicQueueNums=4
      #存储路径
      storePathRootDir=/data/rocketmq-b/store
      #commitLog 存储路径
      storePathCommitLog=/data/rocketmq-b/store/commitlog
      #消费队列存储路径存储路径
      storePathConsumeQueue=/data/rocketmq-b/store/consumequeue
      #消息索引存储路径
      storePathIndex=/data/rocketmq-b/store/index
      #checkpoint 文件存储路径
      storeCheckpoint=/data/rocketmq-b/store/checkpoint
      #abort 文件存储路径
      abortFile=/data/rocketmq-b/store/abort
      listenPort=10921
      
    • 第二胎机器

      修改broker-b.properties

      namesrvAddr=192.168.2.32:8600;192.168.2.35:8600
      #集群名称,主从要一样
      brokerClusterName=ttparkCluster
      #broker名称,主从要一样,根据BrokerRole来确定谁是主谁是从
      brokerName=broker-b
      #brokerID 0是主,>0是从
      brokerId=0
      #删除日志时间为凌晨4点
      deleteWhen=04
      #文件保留时间48小时
      fileReservedTime=48
      #主从关系,异步复制
      brokerRole=ASYNC_MASTER
      #刷盘模式,异步刷盘
      flushDiskType=ASYNC_FLUSH
      defaultTopicQueueNums=4
      #存储路径
      storePathRootDir=/data/rocketmq-b/store
      #commitLog 存储路径
      storePathCommitLog=/data/rocketmq-b/store/commitlog
      #消费队列存储路径存储路径
      storePathConsumeQueue=/data/rocketmq-b/store/consumequeue
      #消息索引存储路径
      storePathIndex=/data/rocketmq-b/store/index
      #checkpoint 文件存储路径
      storeCheckpoint=/data/rocketmq-b/store/checkpoint
      #abort 文件存储路径
      abortFile=/data/rocketmq-b/store/abort
      listenPort=10911
      

      修改borker-a-s.properties

      namesrvAddr=192.168.2.32:8600;192.168.2.35:8600
      #集群名称,主从要一样
      brokerClusterName=ttparkCluster
      #broker名称,主从要一样,根据BrokerRole来确定谁是主谁是从
      brokerName=broker-a
      #brokerID 0是主,>0是从
      brokerId=1
      #删除日志时间为凌晨4点
      deleteWhen=04
      #文件保留时间48小时
      fileReservedTime=48
      #主从关系,异步复制
      brokerRole=SLAVE
      #刷盘模式,异步刷盘
      flushDiskType=ASYNC_FLUSH
      defaultTopicQueueNums=4
      #存储路径
      storePathRootDir=/data/rocketmq-a/store
      #commitLog 存储路径
      storePathCommitLog=/data/rocketmq-a/store/commitlog
      #消费队列存储路径存储路径
      storePathConsumeQueue=/data/rocketmq-a/store/consumequeue
      #消息索引存储路径
      storePathIndex=/data/rocketmq-a/store/index
      #checkpoint 文件存储路径
      storeCheckpoint=/data/rocketmq-a/store/checkpoint
      #abort 文件存储路径
      abortFile=/data/rocketmq-a/store/abort
      listenPort=10921
      
  • 启动

    • 创建commitLog,队列(consumequeue),日志(index)等存储路径

      mkdir commitlog consumequeue index
      
    • 启动第一台机器的nameserver

      nohup sh bin/mqnamesrv -c conf/namesrv.properties &
      
    • 启动第二台机器的nameserver

      nohup sh bin/mqnamesrv -c conf/namesrv.properties &
      
    • 启动broker-a

      nohup bin/mqbroker -c conf/2m-2s-async/broker-a.properties &
      
    • 启动broker-b

      nohup bin/mqbroker -c conf/2m-2s-async/broker-b.properties &
      
    • 启动broker-a-s

      nohup bin/mqbroker -c conf/2m-2s-async/broker-a-s.properties &
      
    • 启动broker-b-s

      nohup bin/mqbroker -c conf/2m-2s-async/broker-b-s.properties &
      
  • 查看集群的启动状况

    ./mqadmin clusterList -n 192.168.2.32:8600

    #ClusterName	#BrokerName		#BID  #Addr                  #Version      #InTPS(LOAD)       #OutTPS(LOAD) #PCWait(ms) #Hour 		#SPACE
    ttparkCluster     broker-a      0     192.168.2.32:10911     V4_4_0        0.00(0,0ms)         0.00(0,0ms)  0 			444721.04 	0.1022
    ttparkCluster     broker-a      1     192.168.2.35:10921     V4_4_0        0.00(0,0ms)         0.00(0,0ms)  0 			444721.04 	0.0586
    ttparkCluster     broker-b      0     192.168.2.35:10911     V4_4_0        0.00(0,0ms)         0.00(0,0ms)  0 			444721.04 	0.0586
    ttparkCluster     broker-b      1     192.168.2.32:10921     V4_4_0    
    

3. Docker搭建RocketMQ

3.1 Docker搭建单机
  • 搜索镜像

    docker search rocketmq

在这里插入图片描述

  • 拉取(下载镜像) 镜像选用rocketmqinc/rocketmq

    docker pull rocketmqinc/rocketmq

在这里插入图片描述

  • 拉取rocketmq可视化图形界面

    docker pull pangliang/rocketmq-console-ng

在这里插入图片描述

  • 镜像拉取成功,可输入docker images查看

在这里插入图片描述

  • 创建namesrv数据存储路径

    mkdir -p /opt/docker/rocketmq/data/namesrv/log

    mkdir -p /opt/docker/rocketmq/data/namesrv/store

  • 创建namesrv容器

    docker run -d --restart=always
    –name rmqnamesrv
    -p 9876:9876
    -v /opt/docker/rocketmq/data/namesrv/logs:/root/logs
    -v /opt/docker/rocketmq/data/namesrv/store:/root/store
    -e “MAX_POSSIBLE_HEAP=100000000”
    rocketmqinc/rocketmq
    sh mqnamesrv

在这里插入图片描述

创建容器成功之后返回容器的ID

  • 创建broker节点

    • 创建broker数据存储路径

    mkdir -p /opt/docker/rocketmq/data/broker/logs

    mkdir -p /opt/docker/rocketmq/data/broker/store

    mkdir -p /opt/docker/rocketmq/conf

    • /opt/docker/rocketmq/conf目录下创建broker.conf文件,文件内容为:
    # 所属集群名称,如果节点较多可以配置多个
    brokerClusterName = DefaultCluster
    #broker名称,master和slave使用相同的名称,表明他们的主从关系
    brokerName = broker-a
    #0表示Master,大于0表示不同的slave
    brokerId = 0
    #表示几点做消息删除动作,默认是凌晨4点
    deleteWhen = 04
    #在磁盘上保留消息的时长,单位是小时
    fileReservedTime = 48
    #有三个值:SYNC_MASTER,ASYNC_MASTER,SLAVE;同步和异步表示Master和Slave之间同步数据的机制;
    brokerRole = ASYNC_MASTER
    #刷盘策略,取值为:ASYNC_FLUSH,SYNC_FLUSH表示同步刷盘和异步刷盘;SYNC_FLUSH消息写入磁盘后才返回成功状态,ASYNC_FLUSH不需要;
    flushDiskType = ASYNC_FLUSH
    # 设置broker节点所在服务器的ip地址
    brokerIP1 = 192.168.52.136
    # 磁盘使用达到95%之后,生产者再写入消息会报错 CODE: 14 DESC: service not available now, maybe disk full
    diskMaxUsedSpaceRatio = 95
    
    • 创建容器

    docker run -d
    –restart=always
    –name rmqbroker
    –link rmqnamesrv:namesrv
    -p 10911:10911
    -p 10909:10909
    -v /opt/docker/rocketmq/data/broker/logs:/root/logs
    -v /opt/docker/rocketmq/data/broker/store:/root/store
    -v/opt/docker/rocketmq/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
    -e “NAMESRV_ADDR=namesrv:9876”
    -e “MAX_POSSIBLE_HEAP=200000000”
    -e “autoCreateTopicEnable=true”
    rocketmqinc/rocketmq
    sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf

    在这里插入图片描述

创建容器成功之后返回容器的ID

  • 创建RocketMQ图形化界面服务容器

    docker run -d
    –restart=always
    –name rmqadmin
    -e “JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.0.85:9876
    -Dcom.rocketmq.sendMessageWithVIPChannel=false”
    -p 9999:8080
    pangliang/rocketmq-console-ng

在这里插入图片描述

创建图形化界面服务容器成功,并返回容器ID
在这里插入图片描述

3.2 Docker搭建集群
  • 搭建服务器要求: [采用交叉部署的方式,优点是从机上备份的数据不会丢]
服务器资源IP端口
192.168.0.85broker-a(Master):10911;broker-b-s(Slave):10900;nameserver:9876
192.168.0.114broker-b(Master):10911;broker-a-s(Slave):10900;nameserver:9876
  • 防火墙配置

    # 关闭防火墙
    systemctl stop firewalld.service 
    # 查看防火墙的状态
    firewall-cmd --state 
    # 禁止firewall开机启动
    systemctl disable firewalld.service
    
  • 端口放行

    #开放nameserver默认端口
    firewall-cmd --remove-port=9876/tcp --permanent
    #开放master默认端口
    firewall-cmd --remove-port=10911/tcp --permanent
    #开放slave默认端口
    firewall-cmd --remove-port=11011/tcp --permanent
    #重启防火墙
    firewall-cmd --reload
    
  • 创建docker容器的映射目录

    • 192.168.0.85服务器上配置 broker-a ,broker-b-s
    mkdir -p /opt/docker/rocketmq/data/broker-a/conf 
    mkdir -p /opt/docker/rocketmq/data/broker-a/logs 
    mkdir -p /opt/docker/rocketmq/data/broker-a/store
    mkdir -p /opt/docker/rocketmq/data/broker-b-s/conf 
    mkdir -p /opt/docker/rocketmq/data/broker-b-s/logs 
    mkdir -p /opt/docker/rocketmq/data/broker-b-s/store
    
    • 在/opt/docker/rocketmq/data/broker-a/conf下分创建:broker.conf,配置内容如下:

      #集群名称
      brokerClusterName=DefaultCluster
      #broker名称
      brokerName=broker-a
      #brokerId master用0 slave用其他
      brokerId=0
      #清理时机
      deleteWhen=4
      #文件保留时长 48小时
      fileReservedTime=48
      #broker角色 -ASYNC_MASTER异步复制 -SYNC_MASTER同步双写 -SLAVE
      brokerRole=SYNC_MASTER
      #刷盘策略 - ASYNC_FLUSH 异步刷盘 - SYNC_FLUSH 同步刷盘
      flushDiskType=ASYNC_FLUSH
      #主机ip
      brokerIP1=192.168.0.85
      brokerIP2=192.168.0.85
      #对外服务的监听接口,同一台机器上部署多个broker,端口号要不相同
      listenPort=10911
      #是否能够自动创建topic
      autoCreateTopicEnable=true
      
    
    
  • 在/opt/docker/rocketmq/data/broker-b-s/conf这个目录下创建broker.conf,配置内容如下

    #集群名称
    brokerClusterName=DefaultCluster
    #broker名称
    brokerName=broker-b
    #brokerId master用0 slave用其他
    brokerId=1
    #清理时机
    deleteWhen=4
    #文件保留时长 48小时
    fileReservedTime=48
    #broker角色 -ASYNC_MASTER异步复制 -SYNC_MASTER同步双写 -SLAVE
    brokerRole=SLAVE
    #刷盘策略 - ASYNC_FLUSH 异步刷盘 - SYNC_FLUSH 同步刷盘
    flushDiskType=ASYNC_FLUSH
    #主机ip
    brokerIP1=192.168.0.85
    #对外服务的监听接口,同一台机器上部署多个broker,端口号要不相同
    listenPort=11911
    #是否能够自动创建topic
    autoCreateTopicEnable=true
    
  • 在/opt/docker/rocketmq/docker-compose.yml

    version: "3"
    services:
      namesrv:
        image: rocketmqinc/rocketmq
        container_name: namesrv
        ports:
          - 9876:9876
        environment:
          JAVA_OPT: -server -Xms256m -Xmx256m
        command: sh mqnamesrv
    
      broker-a:
        image: rocketmqinc/rocketmq
        container_name: broker-a
        ports:
          - 10911:10911
          - 10909:10909
          - 10912:10912
        volumes:
          - /opt/docker/rocketmq/data/broker-a/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
          - /opt/docker/rocketmq/data/broker-a/logs:/root/logs
          - /opt/docker/rocketmq/data/broker-a/store:/root/store
        environment:
          JAVA_OPT_EXT: -Duser.home=/opt/rocketmq-4.4.0 -Xms512M -Xmx512M -Xmn128m
          NAMESRV_ADDR: namesrv:9876
        command: sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
        depends_on:
          - namesrv
      broker-b-s:
        image: rocketmqinc/rocketmq
        container_name: broker-b-s
        ports:
          - 11911:11911
          - 11909:11909
          - 11912:11912
        volumes:
          - /opt/docker/rocketmq/data/broker-b-s/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
          - /opt/docker/rocketmq/data/broker-b-s/logs:/root/logs
          - /opt/docker/rocketmq/data/broker-b-s/store:/root/store
        environment:
          JAVA_OPT_EXT: -Duser.home=/opt/rocketmq-4.4.0 -Xms512M -Xmx512M -Xmn128m
          NAMESRV_ADDR: namesrv:9876
        command: sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
        depends_on:
          - namesrv
    
      console:
        image: pangliang/rocketmq-console-ng
        container_name: console
        ports:
          - 19876:8080
        environment:
          JAVA_OPTS: -Drocketmq.namesrv.addr=namesrv:9876 -Dcom.rocketmq.sendMessageWithVIPChannel=falses
        depends_on:
          - namesrv
    
  • 一台一主一从的服务就配置好了
    在这里插入图片描述

  • 192.168.0.114服务器上配置 broker-b,broker-a-s

    mkdir -p /opt/docker/rocketmq/data/broker-a-s/conf 
    mkdir -p /opt/docker/rocketmq/data/broker-a-s/logs 
    mkdir -p /opt/docker/rocketmq/data/broker-a-s/store
    mkdir -p /opt/docker/rocketmq/data/broker-b/conf 
    mkdir -p /opt/docker/rocketmq/data/broker-b/logs 
    mkdir -p /opt/docker/rocketmq/data/broker-b/store
    
  • 在/opt/docker/rocketmq/data/broker-a-s/conf下分创建:broker.conf,配置内容如下:

    #集群名称
    brokerClusterName=DefaultCluster
    #broker名称
    brokerName=broker-a
    #brokerId master用0 slave用其他
    brokerId=1
    #清理时机
    deleteWhen=4
    #文件保留时长 48小时
    fileReservedTime=48
    #broker角色 -ASYNC_MASTER异步复制 -SYNC_MASTER同步双写 -SLAVE
    brokerRole=SLAVE
    #刷盘策略 - ASYNC_FLUSH 异步刷盘 - SYNC_FLUSH 同步刷盘
    flushDiskType=ASYNC_FLUSH
    #主机ip
    brokerIP1=192.168.0.114
    #对外服务的监听接口,同一台机器上部署多个broker,端口号要不相同
    listenPort=11911
    #是否能够自动创建topic
    autoCreateTopicEnable=true
    
  • 在/opt/docker/rocketmq/data/broker-b/conf这个目录下创建broker.conf,配置内容如下

    #集群名称
    brokerClusterName=DefaultCluster
    #broker名称
    brokerName=broker-b
    #brokerId master用0 slave用其他
    brokerId=0
    #清理时机
    deleteWhen=4
    #文件保留时长 48小时
    fileReservedTime=48
    #broker角色 -ASYNC_MASTER异步复制 -SYNC_MASTER同步双写 -SLAVE
    brokerRole=SYNC_MASTER
    #刷盘策略 - ASYNC_FLUSH 异步刷盘 - SYNC_FLUSH 同步刷盘
    flushDiskType=ASYNC_FLUSH
    #主机ip
    brokerIP1=192.168.0.114
    brokerIP2=192.168.0.114
    #对外服务的监听接口,同一台机器上部署多个broker,端口号要不相同
    listenPort=10911
    #是否能够自动创建topic
    autoCreateTopicEnable=true
    
    • 在/opt/docker/rocketmq/docker-compose.yml

      version: "3"
      services:
        broker-b:
          image: rocketmqinc/rocketmq
          container_name: broker-b
          ports:
            - 10911:10911
            - 10909:10909
            - 10912:10912
          volumes:
            - /opt/docker/rocketmq/data/broker-b/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
            - /opt/docker/rocketmq/data/broker-b/logs:/root/logs
            - /opt/docker/rocketmq/data/broker-b/store:/root/store
          environment:
            JAVA_OPT_EXT: -Duser.home=/opt/rocketmq-4.4.0 -Xms512M -Xmx512M -Xmn128m
            NAMESRV_ADDR: 192.168.0.85:9876
          command: sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
        broker-a-s:
          image: rocketmqinc/rocketmq
          container_name: broker-a-s
          ports:
            - 11911:11911
            - 11909:11909
            - 11912:11912
          volumes:
            - /opt/docker/rocketmq/data/broker-a-s/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
            - /opt/docker/rocketmq/data/broker-a-s/logs:/root/logs
            - /opt/docker/rocketmq/data/broker-a-s/store:/root/store
          environment:
            JAVA_OPT_EXT: -Duser.home=/opt/rocketmq-4.4.0 -Xms512M -Xmx512M -Xmn128m
            NAMESRV_ADDR: 192.168.0.85:9876
        command: sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
      
    • 到目前为止,在服务器上192.168.0.85,192.168.0.114两台服务器上两主两从,已部署完毕

    在这里插入图片描述

_name: broker-a-s
ports:
- 11911:11911
- 11909:11909
- 11912:11912
volumes:
- /opt/docker/rocketmq/data/broker-a-s/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
- /opt/docker/rocketmq/data/broker-a-s/logs:/root/logs
- /opt/docker/rocketmq/data/broker-a-s/store:/root/store
environment:
JAVA_OPT_EXT: -Duser.home=/opt/rocketmq-4.4.0 -Xms512M -Xmx512M -Xmn128m
NAMESRV_ADDR: 192.168.0.85:9876
command: sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
```

  • 到目前为止,在服务器上192.168.0.85,192.168.0.114两台服务器上两主两从,已部署完毕

    [外链图片转存中…(img-phXN6XfB-1679450027651)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值