文章目录
1.环境搭建
1.1 准备
首先需要安装JDK,准备linux服务器,下载安装包:RocketMQ下载
2.2 安装
上传压缩包到 /usr/local/src 下,解压unzip
2.3 搭建NameServer
2.3.1修改JVM参数
进入到安装包的bin目录下进行操作
如果服务器的配置不是很好的话,那就按照一下修改即可,配置很好 那就默认即可。
vim runserver.sh
JAVA_MAJOR_VERSION=$("$JAVA" -version 2>&1 | sed -r -n 's/.* version "([0-9]*).*$/\1/p')
# 根据JDK的版本选择合适的GC参数,RocketMq最低需要JDK8,所以如果是1开头就是10以及之后的JDK版本
if [ -z "$JAVA_MAJOR_VERSION" ] || [ "$JAVA_MAJOR_VERSION" -lt "9" ] ; then
JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=32m -XX:MaxMetaspaceSize=50m"
JAVA_OPT="${JAVA_OPT} -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+CMSClassUnloadingEnabled -XX:SurvivorRatio=8 -XX:-UseParNewGC"
JAVA_OPT="${JAVA_OPT} -verbose:gc -Xloggc:${GC_LOG_DIR}/rmq_srv_gc_%p_%t.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps"
JAVA_OPT="${JAVA_OPT} -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=30m"
else
# 10以后得版本参数
## 堆内存(初始堆内存)为 4 g,新生代 2g,其他空间为 2g。元空间初始化128m,最大的扩容元空间为320mb
JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
JAVA_OPT="${JAVA_OPT} -XX:+UseG1GC -XX:G1HeapRegionSize=16m -XX:G1ReservePercent=25 -XX:InitiatingHeapOccupancyPercent=30 -XX:SoftRefLRUPolicyMSPerMB=0"
JAVA_OPT="${JAVA_OPT} -Xlog:gc*:file=${GC_LOG_DIR}/rmq_srv_gc_%p_%t.log:time,tags:filecount=5,filesize=30M"
fi
2.3.2启动NameServer
一定要注意修改Jvm的配置文件与启动文件不是一个
nohup sh bin/mqnamesrv &
tail -f ~/logs/rocketmqlogs/namesrv.log
2.4 搭建Broker
2.3.1修改JVM参数
进入到安装包的bin目录下进行操作
默认堆大小为8g
vim runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g"
2.3.2 修改 Broker 配置
将注册中心的地址进行填写 namesrvAddr 如果是集群以;分开。
brokerIP1:当前broker监听的IP。
brokerIP2:broker为master-slave模式时,broker的从节点通过brokerIP2和主节点进行连接。
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
brokerIP1 = 192.168.90.111
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
namesrvAddr= localhost:9876
2.3.3启动Broker
nohup sh mqbroker -c conf/broker.conf &
tail -f ~/logs/rocketmqlogs/broker.log
3. 关闭
# 关闭 broker
bin/mqshutdown broker
# 关闭 nameserver
bin/mqshutdown namesrv