开发者社区 > 云原生 > 消息队列 > 正文

以RocketMQ5.1.3版本controller嵌入nameserver的模式去部署集群怎么配置

以RocketMQ5.1.3版本的controller嵌入nameserver的模式去部署集群,需要怎么配置broker.conf中的参数来实现1个master对应1个slave?我试了下brokerId和brokerRole是controller自动分配的,如下图。我想要的是在一个Cluster下有3组1master-1slave
487a1de8622393af28131c3c869d9cc7.png

展开
收起
2401。 2023-07-31 12:38:44 122 0
2 条回答
写回答
取消 提交回答
  • brokerName相同的是一组,你要3组,就要有3个不同的brokerName,每2个broker用相同的一个。你这个相当于一组。
    此回答整理自钉群“群2-Apache RocketMQ 中国开发者钉钉群”。

    2023-08-01 13:37:11
    赞同 展开评论 打赏
  • 如果你想在RocketMQ 5.1.3版本中使用Controller嵌入NameServer的模式来配置一个集群,每个Master对应一个Slave,可以按照以下步骤进行配置:

    1. broker.conf文件中,设置以下参数:

      brokerClusterName=your_cluster_name
      brokerName=your_broker_name
      brokerId=0
      brokerRole=ASYNC_MASTER
      

      这里将brokerRole设置为ASYNC_MASTER表示该Broker是Master。

    2. 复制一份broker.conf文件,并重命名为slave-broker.conf

    3. slave-broker.conf文件中,设置以下参数:

      brokerClusterName=your_cluster_name
      brokerName=your_broker_name
      brokerId=1
      brokerRole=SLAVE
      

      这里将brokerRole设置为SLAVE表示该Broker是Slave。

    4. 启动Master和Slave两个Broker分别使用不同的配置文件,例如:

      ./mqbroker -n localhost:9876 -c ../conf/broker.conf
      ./mqbroker -n localhost:9876 -c ../conf/slave-broker.conf
      

    这样就实现了一个集群下的三组Master-Slave架构。

    请确保配置文件中的brokerNamebrokerClusterName参数与其他Broker的配置保持一致,以确保它们属于同一个Cluster。。

    2023-07-31 14:21:40
    赞同 展开评论 打赏

多个子产品线联合打造金融级高可用消息服务以及对物联网的原生支持,覆盖多行业。

相关产品

  • 云消息队列 MQ
  • 热门讨论

    热门文章

    相关电子书

    更多
    RocketMQ Client-GO 介绍 立即下载
    RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载
    基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载