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"

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

    结束!!!

    参考链接

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

  • 相关阅读:
    BZOJ1264 [AHOI2006]基因匹配Match 动态规划 树状数组
    BZOJ1845 [Cqoi2005] 三角形面积并 扫描线 计算几何
    BZOJ1258 [CQOI2007]三角形tri 模拟
    BZOJ4972 八月月赛 Problem B 小Q的方格纸 二维前缀和
    BZOJ1218 [HNOI2003]激光炸弹 二维前缀和
    BZOJ1263 [SCOI2006]整数划分 高精度
    BZOJ1209 [HNOI2004]最佳包裹 三维凸包 计算几何
    BZOJ1207 [HNOI2004]打鼹鼠 动态规划
    BZOJ1202 [HNOI2005]狡猾的商人 spfa
    BZOJ1201 [HNOI2005]数三角形 大力出奇迹
  • 原文地址:https://www.cnblogs.com/98record/p/13648568.html
Copyright © 2011-2022 走看看