rocketmq同步双写

安装jdk

 

配置域名

/etc/hosts

 

1

2

 

192.168.241.101 paascloud-rocketmq-001

192.168.241.102 paascloud-rocketmq-002

下载

 

1

2

 

wget http://ftp.jaist.ac.jp/pub/apache/rocketmq/4.2.0/rocketmq-all-4.2.0-bin-release.zip

scp rocketmq-all-4.2.0-bin-release.zip [email protected]:/root

解压

 

1

 

unzip rocketmq-all-4.2.0-bin-release.zip -d /usr/local/rocketmq

配置环境变量

 

1

 

vim /etc/profile

 

1

2

 

export ROCKETMQ_HOME=/usr/local/rocketmq

export PATH=$PATH::$ROCKETMQ_HOME/bin

 

1

 

# source /etc/profile

修改配置

解压目录conf下

broker-a.properties

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

 

brokerClusterName=paascloud-rocketmq-cluster

brokerName=broker-a

brokerId=0

namesrvAddr=paascloud-rocketmq-001:9876;paascloud-rocketmq-002:9876;

defaultTopicQueueNums=4

autoCreateTopicEnable=true

autoCreateSubscriptionGroup=true

listenPort=10911

deleteWhen=04

fileReservedTime=120

mapedFileSizeCommitLog=1073741824

mapedFileSizeConsumeQueue=300000

destroyMapedFileIntervalForcibly=120000

redeleteHangedFileInterval=120000

diskMaxUsedSpaceRatio=88

storePathRootDir=/usr/local/rocketmq/data/master/store

storePathCommitLog=/usr/local/rocketmq/data/master/store/commitlog

maxMessageSize=65536

flushCommitLogLeastPages=4

flushConsumeQueueLeastPages=2

flushCommitLogThoroughInterval=10000

flushConsumeQueueThoroughInterval=60000

checkTransactionMessageEnable=false

sendMessageThreadPoolNums=128

pullMessageThreadPoolNums=128

brokerRole=SYNC_MASTER

flushDiskType=SYNC_FLUSH

broker-a-s.properties

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

 

brokerClusterName=paascloud-rocketmq-cluster

brokerName=broker-a

brokerId=1

namesrvAddr=paascloud-rocketmq-001:9876;paascloud-rocketmq-002:9876;

defaultTopicQueueNums=4

autoCreateTopicEnable=true

autoCreateSubscriptionGroup=true

listenPort=10921

deleteWhen=04

fileReservedTime=120

mapedFileSizeCommitLog=1073741824

mapedFileSizeConsumeQueue=300000

destroyMapedFileIntervalForcibly=120000

redeleteHangedFileInterval=120000

diskMaxUsedSpaceRatio=88

storePathRootDir=/usr/local/rocketmq/data/slave/store

storePathCommitLog=/usr/local/rocketmq/data/slave/store/commitlog

maxMessageSize=65536

flushCommitLogLeastPages=4

flushConsumeQueueLeastPages=2

flushCommitLogThoroughInterval=10000

flushConsumeQueueThoroughInterval=60000

checkTransactionMessageEnable=false

sendMessageThreadPoolNums=128

pullMessageThreadPoolNums=128

brokerRole=SLAVE

flushDiskType=SYNC_FLUSH

broker-b.properties

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

 

brokerClusterName=paascloud-rocketmq-cluster

brokerName=broker-b

brokerId=0

namesrvAddr=paascloud-rocketmq-001:9876;paascloud-rocketmq-002:9876;

defaultTopicQueueNums=4

autoCreateTopicEnable=true

autoCreateSubscriptionGroup=true

listenPort=10911

deleteWhen=04

fileReservedTime=120

mapedFileSizeCommitLog=1073741824

mapedFileSizeConsumeQueue=300000

destroyMapedFileIntervalForcibly=120000

redeleteHangedFileInterval=120000

diskMaxUsedSpaceRatio=88

storePathRootDir=/usr/local/rocketmq/data/master/store

storePathCommitLog=/usr/local/rocketmq/data/master/store/commitlog

maxMessageSize=65536

flushCommitLogLeastPages=4

flushConsumeQueueLeastPages=2

flushCommitLogThoroughInterval=10000

flushConsumeQueueThoroughInterval=60000

checkTransactionMessageEnable=false

sendMessageThreadPoolNums=128

pullMessageThreadPoolNums=128

brokerRole=SYNC_MASTER

flushDiskType=SYNC_FLUSH

broker-b-s.properties

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

 

brokerClusterName=paascloud-rocketmq-cluster

brokerName=broker-b

brokerId=1

namesrvAddr=paascloud-rocketmq-001:9876;paascloud-rocketmq-002:9876;

defaultTopicQueueNums=4

autoCreateTopicEnable=true

autoCreateSubscriptionGroup=true

listenPort=10921

deleteWhen=04

fileReservedTime=120

mapedFileSizeCommitLog=1073741824

mapedFileSizeConsumeQueue=300000

destroyMapedFileIntervalForcibly=120000

redeleteHangedFileInterval=120000

diskMaxUsedSpaceRatio=88

storePathRootDir=/usr/local/rocketmq/data/slave/store

storePathCommitLog=/usr/local/rocketmq/data/slave/store/commitlog

maxMessageSize=65536

flushCommitLogLeastPages=4

flushConsumeQueueLeastPages=2

flushCommitLogThoroughInterval=10000

flushConsumeQueueThoroughInterval=60000

checkTransactionMessageEnable=false

sendMessageThreadPoolNums=128

pullMessageThreadPoolNums=128

brokerRole=SLAVE

flushDiskType=SYNC_FLUSH

创建存储&日志文件

 

1

2

3

4

5

6

7

 

# mkdir -p /usr/local/rocketmq/data/master/store/commitlog

# mkdir -p /usr/local/rocketmq/data/slave/store/commitlog

# mkdir -p /usr/local/rocketmq/data/master/store/consumequeue

# mkdir -p /usr/local/rocketmq/data/slave/store/consumequeue

# mkdir -p /usr/local/rocketmq/data/master/store/index

# mkdir -p /usr/local/rocketmq/data/slave/store/index

# mkdir -p /usr/local/rocketmq/logs

修改日志配置文件

 

1

 

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

修改启动脚本参数

 

1

2

 

vim /usr/local/rocketmq/bin/runbroker.sh

JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m"

 

1

2

 

vim /usr/local/rocketmq/bin/runserver.sh

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

启动服务

  1. 启动NameServer A 192.168.241.101
 

1

 

nohup sh /usr/local/rocketmq/bin/mqnamesrv &

  1. 启动NameServer A 192.168.241.101
 

1

 

nohup sh /usr/local/rocketmq/bin/mqnamesrv &

  1. 启动BrokerServer A-master 192.168.241.101
 

1

 

nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a.properties&

  1. 启动BrokerServer A-slave 192.168.241.101
 

1

 

nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-2s-sync/broker-a-s.properties&

  1. 启动BrokerServer B-master 192.168.241.102
 

1

 

nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-b.properties&

  1. 启动BrokerServer B-slave 192.168.241.102
 

1

 

nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-b-s.properties&

是否启动成功

rocketmq同步双写_第1张图片这里写图片描述

 

1

2

3

4

 

# netstat -ntlp

# jps

# tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.log

# tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log

查看集群监控状态

 

1

 

# sh /usr/local/rocketmq/bin/mqadmin clusterlist -n 192.168.241.101:9876

rocketmq同步双写_第2张图片这里写图片描述

停止服务

 

1

2

 

# sh /usr/local/rocketmq/bin/mqshutdown namesrv

# sh /usr/local/rocketmq/bin/mqshutdown broker

清理数据

 

1

2

3

4

5

6

7

8

 

# rm -rf /usr/local/rocketmq/data/master

# rm -rf /usr/local/rocketmq/data/slave

# mkdir -p /usr/local/rocketmq/data/master/store/commitlog

# mkdir -p /usr/local/rocketmq/data/slave/store/commitlog

# mkdir -p /usr/local/rocketmq/data/master/store/consumequeue

# mkdir -p /usr/local/rocketmq/data/slave/store/consumequeue

# mkdir -p /usr/local/rocketmq/data/master/store/index

# mkdir -p /usr/local/rocketmq/data/slave/store/index

rocketmq-console-ng

查看端口是否开放

telnet 192.168.124.14 9876 

查看已经开放的端口:

firewall-cmd --list-ports
开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent

命令含义:

--zone #作用域

--add-port=80/tcp  #添加端口,格式为:端口/通讯协议

--permanent  #永久生效,没有此参数重启后失效

 

查看当前firewall状态

firewall-cmd --state
重启firewall
firewall-cmd --reload

1、idea获取源码

修改application.properties

rocketmq.config.namesrvAddr=192.168.124.14:9876;192.168.124.13:9876;

启动后访问即可

rocketmq-console-ng.bat

 

1

2

3

 

@echo off

java -jar rocketmq-console-ng-1.0.0.jar --server.port=12581 --rocketmq.config.namesrvAddr=192.168.241.101:9876;192.168.241.102:9876;

@pause

 

效果图
rocketmq同步双写_第3张图片这里写图片描述

参考文章

https://www.jianshu.com/p/9d4e0ff358c6
http://blog.csdn.net/lovesomnus/article/details/51769977

你可能感兴趣的:(微服务)