雙RocketMq集群的搭建


一、雙Master RocketMq集群的搭建

  1、服務器環境:

序號 IP 用戶名 角色 模式
1 192.168.211.128 root nameServer1,brokerServer1 Master1
2 192.168.211.129 root nameServer2,brokerServer2 Master1

 

 

 

  2、添加hosts信息

  vim /etc/hosts

IP NAME
192.168.211.128 rocketmq-nameserver1
192.168.211.128 rocketmq-master1
192.168.211.129 rocketmq-nameserver2
192.168.211.129 rocketmq-master2

 

 

 

 

 

  3、上傳解壓rocketMq到服務器

  上傳alibaba-rocketmq-3.2.6.tar.gz文件至/usr/local/install
  解壓tar -zxvf alibaba-rocketmq-3.2.6.tar.gz -C /usr/local/software

 

  4、創建軟連接(兩台機器)

  ln -s alibaba-rocketmq rocketmq

  

  5、創建存儲路徑(兩台機器)

  # mkdir /usr/local/software/rocketmq/store
  # mkdir /usr/local/software/rocketmq/store/commitlog
  # mkdir /usr/local/software/rocketmq/store/consumequeue
  # mkdir /usr/local/software/rocketmq/store/index

 

  6、RocketMQ配置文件(兩台機器)

  

  # vim /usr/local/software/rocketmq/conf/2m-noslave/broker-a.properties
  # vim /usr/local/software/rocketmq/conf/2m-noslave/broker-b.properties

  

 1 將a.properties和b.properties文件中的內容全部清掉(用下面的內容替換掉)
 2     #所屬集群名字
 3     brokerClusterName=rocketmq-cluster
 4     #broker名字,注意此處不同的配置文件填寫的不一樣  例如:在a.properties 文件中寫 broker-a  在b.properties 文件中寫 broker-b
 5     brokerName=broker-a|broker-b
 6     #0 表示 Master,>0 表示 Slave
 7     brokerId=0
 8     #nameServer地址,分號分割
 9     namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
10     #在發送消息時,自動創建服務器不存在的topic,默認創建的隊列數
11     defaultTopicQueueNums=4
12     #是否允許 Broker 自動創建Topic,建議線下開啟,線上關閉
13     autoCreateTopicEnable=true
14     #是否允許 Broker 自動創建訂閱組,建議線下開啟,線上關閉
15     autoCreateSubscriptionGroup=true
16     #Broker 對外服務的監聽端口
17     listenPort=10911
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=/usr/local/software/rocketmq/store
32     #commitLog 存儲路徑
33     storePathCommitLog=/usr/local/software/rocketmq/store/commitlog
34     #消費隊列存儲路徑存儲路徑
35     storePathConsumeQueue=/usr/local/software/rocketmq/store/consumequeue
36     #消息索引存儲路徑
37     storePathIndex=/usr/local/software/rocketmq/store/index
38     #checkpoint 文件存儲路徑
39     storeCheckpoint=/usr/local/software/rocketmq/store/checkpoint
40     #abort 文件存儲路徑
41     abortFile=/usr/local/software/rocketmq/store/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=ASYNC_MASTER
53     #刷盤方式
54     #- ASYNC_FLUSH 異步刷盤
55     #- SYNC_FLUSH 同步刷盤
56     flushDiskType=ASYNC_FLUSH
57     #checkTransactionMessageEnable=false
58     #發消息線程池數量
59     #sendMessageThreadPoolNums=128
60     #拉消息線程池數量
61     #pullMessageThreadPoolNums=128

  7、修改日志文件(兩台機器)

  

  # mkdir -p /usr/local/software/rocketmq/logs
  # cd /usr/local/software/rocketmq/conf && sed -i 's#${user.home}#/usr/local/software/rocketmq#g' *.xml

 

  8、修改啟動腳本參數(修改啟動腳本參數兩台機器)

  

  8.1、vim /usr/local/software/rocketmq/bin/runbroker.sh

  #===========================================================================================
  # JVM Configuration
  #===========================================================================================

  JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m -
  XX:PermSize=128m -XX:MaxPermSize=320m"

  8.2、vim /usr/local/software/rocketmq/bin/runserver.sh
  JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m -
  XX:PermSize=128m -XX:MaxPermSize=320m"

  

  9、啟動NameServer(特別注意:在啟動 BrokerServer 之前先關閉防火牆)

  

  # cd /usr/local/software/rocketmq/bin
  # nohup sh mqnamesrv &

  10、啟動BrokerServer A【192.168.211.128】

  # cd /usr/local/software/rocketmq/bin
  # nohup sh mqbroker -c /usr/local/software/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null 2>&1 &
  # netstat -ntlp
  # jps
  # tail -f -n 500 /usr/local/software/rocketmq/logs/rocketmqlogs/broker.log
  # tail -f -n 500 /usr/local/software/rocketmq/logs/rocketmqlogs/namesrv.log

 

  11、啟動BrokerServer B 【192.168.211.129】

  

  # cd /usr/local/software/rocketmq/bin
  # nohup sh mqbroker -c /usr/local/software/rocketmq/conf/2m-noslave/broker-b.properties >/dev/null 2>&1 &
  # netstat -ntlp
  # jps
  # tail -f -n 500 /usr/local/software/rocketmq/logs/rocketmqlogs/broker.log
  # tail -f -n 500 /usr/local/software/rocketmq/logs/rocketmqlogs/namesrv.log

 

  12、停止服務

    先停止 broker 在停止  namesrv
    cd /usr/local/software/rocketmq/bin
    # sh mqshutdown broker
    # sh mqshutdown namesrv

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM