zoukankan      html  css  js  c++  java
  • docker部署Broketrmq集群

    部署Broketrmq集群

    通过docker-compose形式部署

    • 首先创建 broker 配置文件,配置文件如下:
    brokerClusterName = DefaultCluster  #集群名
    brokerName = broker-a  #node名,集群内唯一
    brokerId = 0 #配置节点是主还是从,0为主,1为从
    deleteWhen = 04  
    fileReservedTime = 48
    brokerRole = ASYNC_MASTER
    flushDiskType = SYNC_FLUSH
    listenPort = 10911
    namesrvAddr=10.228.83.120:9876   #配置namesrvAddr注册中心地址
    autoCreateTopicEnable=true  		#配置是否自动创建 Topic
    autoCreateSubscriptionGroup=true	#配置是否自动创建 SubscriptionGroup 订阅组
    storePathRootDir=/home/rocketmq/store	#配置数据存储位置,持久化使用
    storePathCommitLog=/home/rocketmq/store/commitlog	#配置日志存储位置
    brokerIP1=10.228.83.120		#配置主机IP地址
    

    配置文件参考

    • 创建yml文件,vim docker-compose.yml,配置文件如下:
    version: '2'
    services:
      namesrv:
        image: rocketmqinc/rocketmq
        container_name: rmqnamesrv
        ports:
          - 9876:9876
        volumes:
          - /opt/namesrv/logs:/home/rocketmq/logs
          - /opt/namesrv/store:/home/rocketmq/store
        command: sh mqnamesrv
      broker:
        image: rocketmqinc/rocketmq
        container_name: rmqbroker
        ports:
          - 10909:10909
          - 10911:10911
          - 10912:10912
        volumes:
          - /opt/rocketmq/logs:/home/rocketmq/logs
          - /opt/rocketmq/store:/home/rocketmq/store
          - /opt/rocketmq/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf
        command: sh mqbroker  -n rmqnamesrv:9876 autoCreateTopicEnable=true  -c ../conf/broker.conf &  
        depends_on:
          - namesrv
        environment:
          - JAVA_HOME=/usr/lib/jvm/jre
      console:
        image: styletang/rocketmq-console-ng
        container_name: rocketmq-console-ng
        ports:
          - 8087:8080
        depends_on:
          - namesrv
        environment:
          - JAVA_OPTS= -Dlogging.level.root=info   -Drocketmq.namesrv.addr=rmqnamesrv:9876
          - Dcom.rocketmq.sendMessageWithVIPChannel=false
    

    console 可不部署,就是一个可视化的web界面。可作为集群是否部署成功的一个参考,如下:
    在这里插入图片描述

    • 如果后面需要添加集群的可参考如下操作

      • 同台主机添加

          1. 参考之前docker-compose.yml配置,创建相关broker文件夹
          2. 参考之前broker配置,创建broker配置文件
          3. 参考之前docker-compose.yml配置,编写docker run命令,命令样例如下:
          docker run -itd --name rmqbroker_b  --network=rocketmq_default   -p 10919:10909  -p 10921:10911 -p 10922:10912  -v /opt/rocketmq_b/logs:/home/rocketmq/logs  -v /opt/rocketmq_b/store:/home/rocketmq/store  -v /opt/rocketmq_b/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf  rocketmqinc/rocketmq sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
          
      • 不同主机添加

          1. 参考之前docker-compose.yml配置,创建相关broker文件夹

          2. 参考之前broker配置,创建broker配置文件

          3. 参考之前docker-compose.yml配置,编写docker run命令,命令样例如下:

            docker run -itd --name rmqbroker_d    --privileged  -p 10929:10909  -p 10931:10911 -p 10932:10912  -v /opt/rocketmq_c/logs:/home/rocketmq/logs  -v /opt/rocketmq_c/store:/home/rocketmq/store  -v /opt/rocketmq_c/conf/broker.conf:/opt/rocketmq-4.4.0/conf/broker.conf  -e "JAVA_OPT_EXT=-server -Xms2048m -Xmx2048m -Xmn2048m"    rocketmqinc/rocketmq   sh mqbroker -c /opt/rocketmq-4.4.0/conf/broker.conf
            

            -e "JAVA_OPT_EXT=-server -Xms2048m -Xmx2048m -Xmn2048m"

            此参数待考证可不加,与同主机添加的不同就是网络模式指定的不同

    结束!!!

    参考链接

    参考一
    参考二
    参考三
    参考四
    参考五

  • 相关阅读:
    k3 cloud套打模板中出现单元格数据为空的情况,及无法正确的选择数据源
    k3 cloud中列表字段汇总类型中设置了汇总以后没有显示出汇总值
    k3 cloud查看附件提示授予目录NetWorkService读写权限
    k3 cloud中提示总账期末结账提示过滤条件太长,请修改此过滤条件
    金蝶云k3 cloud采购入库单校验日期不通过
    C# Code First 配置(二)
    C# Azure 远程调试
    C# ABP源码详解 之 BackgroundJob,后台工作(一)
    C# 在webapi项目中配置Swagger(最新版2017)
    高并发之
  • 原文地址:https://www.cnblogs.com/98record/p/13648568.html
Copyright © 2011-2022 走看看