美文网首页
RocketMQ环境搭建以及控制台(一)

RocketMQ环境搭建以及控制台(一)

作者: 丶兔小胖 | 来源:发表于2021-03-22 14:13 被阅读0次
    1. 下载 解压 重命名 自行操作
    wget https://archive.apache.org/dist/rocketmq/4.6.1/rocketmq-all-4.6.1-bin-release.zip
    
    2. 安装
    unzip rocketmq-all-4.6.1-bin-release.zip
    #给他一个位置
    mv rocketmq-all-4.6.1-bin-release /usr/local/rocketmq
    
    3. 环境变量
    echo 'export ROCKETMQ_HOME=/usr/local/rocketmq' >> /etc/profile
    echo 'export PATH=$ROCKETMQ_HOME/bin:$PATH' >> /etc/profile
    
    source /etc/profile
    
    4. 修改默认启动配置

    RocketMQ默认配置要求很高,开始启动前需要先修改这些参数,否则的话,我们很有可能会遇到内存分配或者不够的问题(memory alloc failed):

    4.1 bin/runserver.sh
    JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
    
    4.2 bin/runbroker.sh
    JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m"
    
    4.3 bin/tools.sh
    JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m"
    
    5. 修改 broker 配置

    broker的配置文件为conf/broker.conf,参考内容如下:

    # 所属集群名字(同一主从下: Master 和 Slave 名称要一致)
    brokerClusterName = DefaultCluster
    
    # Broker 名字,注意此处不同的配置文件填写的不一样
    brokerName = broker-a
    
    # 0 表示 Master,> 0 表示 Slave
    brokerId = 0
    
    # Broker 对外服务的监听端口, 如果一台机器上启动了多个Broker,则要设置不同的端口号,避免冲突
    listenPort = 10911
    
    # nameServer地址,如果nameServer是多台集群的话,就用分号分割,比如
    # namesrvAddr=192.168.0.1:9876;192.168.0.2:9876
    namesrvAddr = 127.0.0.1:9876
    
    # 是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
    autoCreateTopicEnable = false
    
    # 是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
    autoCreateSubscriptionGroup = false
    
    # 与fileReservedTime参数呼应,表明在几点做消息删除动作,默认值04表示凌晨4点
    deleteWhen = 04
    
    # 在磁盘上保存消息的时长,单位是小时,自动删除超时的消息
    fileReservedTime = 48
    
    # brokerRole有3种:SYNC_MASTER、ASYNC_MASTER、SLAVE
    # 关键词 SYNC 和 ASYNC 表示 Master 和 Slave 之间同步消息的机制
    # SYNC 的意思是当 Slave 和 Master 消息同步完成后,再返回发送成功的状态
    brokerRole = ASYNC_MASTER
    
    # 刷盘方式 ASYNC_FLUSH 异步刷盘; SYNC_FLUSH 同步刷盘
    flushDiskType = ASYNC_FLUSH
    
    
    6. 启动
    6.1 运行 namesrv 节点
    nohup sh mqnamesrv & 
    
    6.2 运行 broker 节点
    nohup sh mqbroker -n localhost:9876 &
    
    7. 停止服务
    sh mqshutdown broker
    sh mqshutdown namesrv
    
    8. 部署RocketMQ Console
    #照着文档做就可以
    https://github.com/apache/rocketmq-externals/tree/master/rocketmq-console
    

    修改配置:

    #修改resources下的配置
    rocketmq.config.namesrvAddr=localhost:9876
    rocketmq.config.isVIPChannel=false
    #正常启动开放端口就能访问了
    

    相关文章

      网友评论

          本文标题:RocketMQ环境搭建以及控制台(一)

          本文链接:https://www.haomeiwen.com/subject/nepzcltx.html