当前位置:   article > 正文

Linux Centos 环境下搭建RocketMq集群(双主双从)_rocketmq 启动命令

rocketmq 启动命令

1、下载rocketmq的包

下载 | RocketMQ

2、配置环境变量

  1. 1、编辑环境变量文件:vim /etc/profile
  2. 2、加入如下配置:
  3. #rocketmq 4.9.8
  4. ROCKETMQ_HOME=/home/rocketmq/rocketmq-4.9.8
  5. export PATH=${ROCKETMQ_HOME}/bin:${PATH}
  6. 3、刷新配置:source /etc/profile

3、修改相关参数

修改bin目录下的runserver.sh如下:

修改bin目录下的runbroker.sh如下:

4、启动和停止nameserver

  1. 1、启动命令
  2. nohup sh /bin/mqnamesrv &
  3. 2、查看日志
  4. tail -f ~/logs/rocketmq/namesrv.log
  5. 3、停止
  6. ./mqshutdown namesrv

5、启动和停止broker

  1. 1、启动命令
  2. nohup sh /bin/mqbroker autoCreateTopicEnable=true &
  3. 2、查看日志
  4. tail -f ~/logs/rocketmq/broker.log
  5. 3、停止
  6. ./mqshutdown broker

6、rocketmq集群配置

worker1 只需要启动nameserver即可

worker2中配置两个文件:broker-a.properties、broker-b-s.properties

worker3中配置两个文件:broker-b.properties、broker-a-s.properties

四个配置文件如下:

broker-a.properties

  1. #所属集群名字,名字一样的节点就在同一个集群内
  2. brokerClusterName=rocketmq-cluster
  3. brokerIP1=192.168.10.200
  4. brokerIP2=192.168.10.200
  5. #broker名字,名字一样的节点就是一组主从节点。
  6. brokerName=broker-a
  7. #brokerid,0就表示是Master,>0的都是表示 Slave
  8. brokerId=0
  9. #nameServer地址,分号分割
  10. namesrvAddr=192.168.10.200:9876;192.168.10.201:9876
  11. #在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
  12. defaultTopicQueueNums=4
  13. #是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
  14. autoCreateTopicEnable=true
  15. #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
  16. autoCreateSubscriptionGroup=true
  17. #Broker 对外服务的监听端口
  18. listenPort=10911
  19. #删除文件时间点,默认凌晨 4
  20. deleteWhen=04
  21. #文件保留时间,默认 48 小时
  22. fileReservedTime=120
  23. #commitLog每个文件的大小默认1G
  24. mapedFileSizeCommitLog=1073741824
  25. #ConsumeQueue每个文件默认存30W条,根据业务情况调整
  26. mapedFileSizeConsumeQueue=300000
  27. #destroyMapedFileIntervalForcibly=120000
  28. #redeleteHangedFileInterval=120000
  29. #检测物理文件磁盘空间
  30. diskMaxUsedSpaceRatio=88
  31. #存储路径
  32. storePathRootDir=/home/rocketmq-4.9.8/data
  33. #commitLog 存储路径
  34. storePathCommitLog=/home/rocketmq-4.9.8/data/commitlog
  35. #消费队列存储路径存储路径
  36. storePathConsumeQueue=/home/rocketmq-4.9.8/data/consumequeue
  37. #消息索引存储路径
  38. storePathIndex=/home/rocketmq-4.9.8/data/index
  39. #checkpoint 文件存储路径
  40. storeCheckpoint=/home/rocketmq-4.9.8/data/checkpoint
  41. #abort 文件存储路径
  42. abortFile=/home/rocketmq-4.9.8/data/abort
  43. #限制的消息大小
  44. maxMessageSize=65536
  45. #flushCommitLogLeastPages=4
  46. #flushConsumeQueueLeastPages=2
  47. #flushCommitLogThoroughInterval=10000
  48. #flushConsumeQueueThoroughInterval=60000
  49. #Broker 的角色
  50. #- ASYNC_MASTER 异步复制Master
  51. #- SYNC_MASTER 同步双写Master
  52. #- SLAVE
  53. brokerRole=ASYNC_MASTER
  54. #刷盘方式
  55. #- ASYNC_FLUSH 异步刷盘
  56. #- SYNC_FLUSH 同步刷盘
  57. flushDiskType=ASYNC_FLUSH
  58. #checkTransactionMessageEnable=false
  59. #发消息线程池数量
  60. #sendMessageThreadPoolNums=128
  61. #拉消息线程池数量
  62. #pullMessageThreadPoolNums=128

broker-b-s.properties

  1. #所属集群名字,名字一样的节点就在同一个集群内
  2. brokerClusterName=rocketmq-cluster
  3. brokerIP1=192.168.10.200
  4. #broker名字,名字一样的节点就是一组主从节点。
  5. brokerName=broker-b
  6. #brokerid,0就表示是Master,>0的都是表示 Slave
  7. brokerId=100
  8. #nameServer地址,分号分割
  9. namesrvAddr=192.168.10.200:9876;192.168.10.201:9876
  10. #在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
  11. defaultTopicQueueNums=4
  12. #是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
  13. autoCreateTopicEnable=true
  14. #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
  15. autoCreateSubscriptionGroup=true
  16. #Broker 对外服务的监听端口
  17. listenPort=11011
  18. #删除文件时间点,默认凌晨 4
  19. deleteWhen=04
  20. #文件保留时间,默认 48 小时
  21. fileReservedTime=120
  22. #commitLog每个文件的大小默认1G
  23. mapedFileSizeCommitLog=1073741824
  24. #ConsumeQueue每个文件默认存30W条,根据业务情况调整
  25. mapedFileSizeConsumeQueue=300000
  26. #destroyMapedFileIntervalForcibly=120000
  27. #redeleteHangedFileInterval=120000
  28. #检测物理文件磁盘空间
  29. diskMaxUsedSpaceRatio=88
  30. #存储路径
  31. storePathRootDir=/home/rocketmq-4.9.8/dataslave
  32. #commitLog 存储路径
  33. storePathCommitLog=/home/rocketmq-4.9.8/dataslave/commitlog
  34. #消费队列存储路径存储路径
  35. storePathConsumeQueue=/home/rocketmq-4.9.8/dataslave/consumequeue
  36. #消息索引存储路径
  37. storePathIndex=/home/rocketmq-4.9.8/dataslave/index
  38. #checkpoint 文件存储路径
  39. storeCheckpoint=/home/rocketmq-4.9.8/dataslave/checkpoint
  40. #abort 文件存储路径
  41. abortFile=/home/rocketmq-4.9.8/dataslave/storeSlave/abort
  42. #限制的消息大小
  43. maxMessageSize=65536
  44. #flushCommitLogLeastPages=4
  45. #flushConsumeQueueLeastPages=2
  46. #flushCommitLogThoroughInterval=10000
  47. #flushConsumeQueueThoroughInterval=60000
  48. #Broker 的角色
  49. #- ASYNC_MASTER 异步复制Master
  50. #- SYNC_MASTER 同步双写Master
  51. #- SLAVE
  52. brokerRole=SLAVE
  53. #刷盘方式
  54. #- ASYNC_FLUSH 异步刷盘
  55. #- SYNC_FLUSH 同步刷盘
  56. flushDiskType=ASYNC_FLUSH
  57. #checkTransactionMessageEnable=false
  58. #发消息线程池数量
  59. #sendMessageThreadPoolNums=128
  60. #拉消息线程池数量
  61. #pullMessageThreadPoolNums=128

broker-b.properties

  1. #所属集群名字,名字一样的节点就在同一个集群内
  2. brokerClusterName=rocketmq-cluster
  3. brokerIP1=192.168.10.201
  4. brokerIP2=192.168.10.201
  5. #broker名字,名字一样的节点就是一组主从节点。
  6. brokerName=broker-b
  7. #brokerid,0就表示是Master,>0的都是表示 Slave
  8. brokerId=0
  9. #nameServer地址,分号分割
  10. namesrvAddr=192.168.10.200:9876;192.168.10.201:9876
  11. #在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
  12. defaultTopicQueueNums=4
  13. #是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
  14. autoCreateTopicEnable=true
  15. #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
  16. autoCreateSubscriptionGroup=true
  17. #Broker 对外服务的监听端口
  18. listenPort=10911
  19. #删除文件时间点,默认凌晨 4
  20. deleteWhen=04
  21. #文件保留时间,默认 48 小时
  22. fileReservedTime=120
  23. #commitLog每个文件的大小默认1G
  24. mapedFileSizeCommitLog=1073741824
  25. #ConsumeQueue每个文件默认存30W条,根据业务情况调整
  26. mapedFileSizeConsumeQueue=300000
  27. #destroyMapedFileIntervalForcibly=120000
  28. #redeleteHangedFileInterval=120000
  29. #检测物理文件磁盘空间
  30. diskMaxUsedSpaceRatio=88
  31. #存储路径
  32. storePathRootDir=/home/rocketmq-4.9.8/data
  33. #commitLog 存储路径
  34. storePathCommitLog=/home/rocketmq-4.9.8/data/commitlog
  35. #消费队列存储路径存储路径
  36. storePathConsumeQueue=/home/rocketmq-4.9.8/data/consumequeue
  37. #消息索引存储路径
  38. storePathIndex=/home/rocketmq-4.9.8/data/index
  39. #checkpoint 文件存储路径
  40. storeCheckpoint=/home/rocketmq-4.9.8/data/checkpoint
  41. #abort 文件存储路径
  42. abortFile=/home/rocketmq-4.9.8/data/abort
  43. #限制的消息大小
  44. maxMessageSize=65536
  45. #flushCommitLogLeastPages=4
  46. #flushConsumeQueueLeastPages=2
  47. #flushCommitLogThoroughInterval=10000
  48. #flushConsumeQueueThoroughInterval=60000
  49. #Broker 的角色
  50. #- ASYNC_MASTER 异步复制Master
  51. #- SYNC_MASTER 同步双写Master
  52. #- SLAVE
  53. brokerRole=ASYNC_MASTER
  54. #刷盘方式
  55. #- ASYNC_FLUSH 异步刷盘
  56. #- SYNC_FLUSH 同步刷盘
  57. flushDiskType=ASYNC_FLUSH
  58. #checkTransactionMessageEnable=false
  59. #发消息线程池数量
  60. #sendMessageThreadPoolNums=128
  61. #拉消息线程池数量
  62. #pullMessageThreadPoolNums=128

broker-a-s.properties

  1. #所属集群名字,名字一样的节点就在同一个集群内
  2. brokerClusterName=rocketmq-cluster
  3. brokerIP1=192.168.10.201
  4. #broker名字,名字一样的节点就是一组主从节点。
  5. brokerName=broker-a
  6. #brokerid,0就表示是Master,>0的都是表示 Slave
  7. brokerId=100
  8. #nameServer地址,分号分割
  9. namesrvAddr=192.168.10.200:9876;192.168.10.201:9876
  10. #在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
  11. defaultTopicQueueNums=4
  12. #是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
  13. autoCreateTopicEnable=true
  14. #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
  15. autoCreateSubscriptionGroup=true
  16. #Broker 对外服务的监听端口
  17. listenPort=11011
  18. #删除文件时间点,默认凌晨 4
  19. deleteWhen=04
  20. #文件保留时间,默认 48 小时
  21. fileReservedTime=120
  22. #commitLog每个文件的大小默认1G
  23. mapedFileSizeCommitLog=1073741824
  24. #ConsumeQueue每个文件默认存30W条,根据业务情况调整
  25. mapedFileSizeConsumeQueue=300000
  26. #destroyMapedFileIntervalForcibly=120000
  27. #redeleteHangedFileInterval=120000
  28. #检测物理文件磁盘空间
  29. diskMaxUsedSpaceRatio=88
  30. #存储路径
  31. storePathRootDir=/home/rocketmq-4.9.8/dataslave
  32. #commitLog 存储路径
  33. storePathCommitLog=/home/rocketmq-4.9.8/dataslave/commitlog
  34. #消费队列存储路径存储路径
  35. storePathConsumeQueue=/home/rocketmq-4.9.8/dataslave/consumequeue
  36. #消息索引存储路径
  37. storePathIndex=/home/rocketmq-4.9.8/dataslave/index
  38. #checkpoint 文件存储路径
  39. storeCheckpoint=/home/rocketmq-4.9.8/dataslave/checkpoint
  40. #abort 文件存储路径
  41. abortFile=/home/rocketmq-4.9.8/dataslave/storeSlave/abort
  42. #限制的消息大小
  43. maxMessageSize=65536
  44. #flushCommitLogLeastPages=4
  45. #flushConsumeQueueLeastPages=2
  46. #flushCommitLogThoroughInterval=10000
  47. #flushConsumeQueueThoroughInterval=60000
  48. #Broker 的角色
  49. #- ASYNC_MASTER 异步复制Master
  50. #- SYNC_MASTER 同步双写Master
  51. #- SLAVE
  52. brokerRole=SLAVE
  53. #刷盘方式
  54. #- ASYNC_FLUSH 异步刷盘
  55. #- SYNC_FLUSH 同步刷盘
  56. flushDiskType=ASYNC_FLUSH
  57. #checkTransactionMessageEnable=false
  58. #发消息线程池数量
  59. #sendMessageThreadPoolNums=128
  60. #拉消息线程池数量
  61. #pullMessageThreadPoolNums=128

7、集群启动

启动顺序为:先启动3台服务器的nameserver,再启动worker2和worker3中的broker.

   启动nameserv:

  1. #3台机器分别进入rocketmq安装目录,执行下面的命令:
  2. nohup sh bin/mqnamesrv &

  启动broker:

  1. 进入worker2,进入rocketmq的安装目录,执行一下两行,
  2. nohup bin/mqbroker -c conf/broker-a.properties autoCreateTopicEnable=true &
  3. nohup bin/mqbroker -c conf/broker-b-s.properties autoCreateTopicEnable=true &
  4. 查看日志:
  5. tail -f ~/logs/rocketmq/broker.log
  6. 进入worker3,进入rocketmq的安装目录,执行一下两行,
  7. nohup bin/mqbroker -c conf/broker-b.properties autoCreateTopicEnable=true &
  8. nohup bin/mqbroker -c conf/broker-a-s.properties autoCreateTopicEnable=true &

8、rockermq-console图形化管理界面

  1. 下载地址:
  2. 拉取rocketmq-console的源代码
  3. github克隆项目到本地:git clone 
  4. https://github.com/apache/rocketmq-externals.git
  5. gitee克隆项目到本地:git clone 
  6. https://gitee.com/zjj19941/rocketmq-externals-master.git
  7. 修改启动端口
  8. 对rocketmq-console模块进行打包
  9. 将打好的jar包上传至对应的服务器
  10. maven打包命令:mvn package -DskipTests
  11. 使用nohup对jar包进行后台启动:nohup java -jar rocketmq-console-ng-xxx.jar &
  12. 如果没配置地址的话,可以在启动命令那儿加以下配置:
  13. // > /home/soft/rocketmq/rocketmq-console.log 表示将标准输出重定向到指定的日志文件中;
  14. // 2>&1 表示将标准错误输出也重定向到标准输出中;
  15. nohup java -jar rocketmq-console-ng-1.0.0.jar --rocketmq.config.namesrvAddr='ip1:9876;ip2:9876' > /home/soft/rocketmq/rocketmq-console.log 2>&1 &

 浏览器访问localhost:端口,效果如下:

集群信息如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/747383
推荐阅读
相关标签
  

闽ICP备14008679号