1.rocketmq
1) Maven環境
a.下載
apache-maven-3.3.3-bin.tar.gz
b.解壓
tar -zxfapache-maven-3.3.3-bin.tar.gz
c.加入環境變量
MAVEN="/data/Application/apache-maven/bin" JAVA_HOME="/usr/java/jdk1.7.0_45/" exportPATH=$MAVEN:/usr/java/jdk1.7.0_45/bin/:/usr/local/mysql/bin/:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sersync/bin:/root/bin
加入到PATH下
d.測試查看:
[root@IQJ-JQ-RocketMQ100-34tools]# mvn -version ApacheMaven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06;2015-04-22T19:57:37+08:00) Mavenhome: /data/Application/apache-maven Javaversion: 1.7.0_45, vendor: Oracle Corporation Javahome: /usr/java/jdk1.7.0_45/jre Defaultlocale: en_US, platform encoding: UTF-8 OS name:"linux", version: "2.6.32-431.el6.x86_64", arch:"amd64", family: "unix"
2) RocketMQ
a.安裝
alibaba-rocketmq-3.2.6.tar.gz #→解壓至/data/Application目錄 tar -zxfalibaba-rocketmq-3.2.6.tar.gz mvalibaba-rocketmq rocketmq mvrocketmq /data/Application 執行優化腳本os.sh(/data/server/scripts/os.sh)
b.主主配置
cd /data/Application/rocketmq&& mkdir data/store/commitlog -p cd /data/Application/rocketmq/conf&& sed -i 's#${user.home}#/data#g' *.xml
(1) Master-a配置
$ vim 2m-noslave/broker-a.properties brokerClusterName=AdpMqCluster brokerName=broker-a brokerId=0 namesrvAddr=RocketMQ01:9876;RocketMQ02:9876 defaultTopicQueueNums=4 autoCreateTopicEnable=true autoCreateSubscriptionGroup=true listenPort=10911 deleteWhen=04 fileReservedTime=120 mapedFileSizeCommitLog=1073741824 mapedFileSizeConsumeQueue=50000000 destroyMapedFileIntervalForcibly=120000 redeleteHangedFileInterval=120000 diskMaxUsedSpaceRatio=88 storePathRootDir=/data/Application/rocketmq/data/store storePathCommitLog=/data/Application/rocketmq/data/store/commitlog maxMessageSize=65536 flushCommitLogLeastPages=4 flushConsumeQueueLeastPages=2 flushCommitLogThoroughInterval=10000 flushConsumeQueueThoroughInterval=60000 brokerRole=ASYNC_MASTER flushDiskType=ASYNC_FLUSH checkTransactionMessageEnable=false sendMessageThreadPoolNums=128 pullMessageThreadPoolNums=128
(2)Master-b配置
$ vim2m-noslave/broker-b.properties brokerClusterName=AdpMqCluster brokerName=broker-b brokerId=1 namesrvAddr=RocketMQ01:9876;RocketMQ02:9876 defaultTopicQueueNums=4 autoCreateTopicEnable=true autoCreateSubscriptionGroup=true listenPort=10911 deleteWhen=04 fileReservedTime=120 mapedFileSizeCommitLog=1073741824 mapedFileSizeConsumeQueue=50000000 destroyMapedFileIntervalForcibly=120000 redeleteHangedFileInterval=120000 diskMaxUsedSpaceRatio=88 storePathRootDir=/data/Application/rocketmq/data/store storePathCommitLog=/data/Application/rocketmq/data/store/commitlog maxMessageSize=65536 flushCommitLogLeastPages=4 flushConsumeQueueLeastPages=2 flushCommitLogThoroughInterval=10000 flushConsumeQueueThoroughInterval=60000 brokerRole=ASYNC_MASTER flushDiskType=ASYNC_FLUSH checkTransactionMessageEnable=false sendMessageThreadPoolNums=128 pullMessageThreadPoolNums=128
(3)runbroker.sh參數調整
runbroker.sh需要根據內存大小進行適當地調整
JAVA_OPT="${JAVA_OPT}-server -Xms32g -Xmx32g -Xmn8g -XX:PermSize=1g -XX:MaxPermSize=1g"
PS: 配置權限
chown -Rnobody.nobody Application
(4)服務啓動(此處用root啓動的)
PS:在這裏需要修改runserver.sh
註釋檢測JAVA_HOME地址一行,提供加入JAVA地址.否則啓動有錯誤
a.啓動NameServer[master-a,master-b]
cd /data/Application/rocketmq/bin sudo -u nobody nohup sh/data/Application/rocketmq/bin/mqnamesrv & b.啓動BrokerA[master-a] sudo -u nobody nohup sh/data/Application/rocketmq/bin/mqbroker -c/data/Application/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null2>&1 & c.啓動BrokerB[master-b] sudo -u nobody nohup sh/data/Application/rocketmq/bin/mqbroker -c/data/Application/rocketmq/conf/2m-noslave/broker-b.properties >/dev/null2>&1 &
d.檢查
netstat -lntp |grep -E '9876|109' jps
3) RocketMQ服務健康檢查
1.依賴組件
yuminstall -y namp
2.nameserver監控
請查看附件
4) web平臺監控
安裝tomcat
這裏就省略了。
將war放入webapps下,修改vimWEB-INF/classes/config.properties
rocketmq.namesrv.addr=RocketMQ01:9876 #這裏只能寫一個
throwDone=true