logo资料库

rocketmq双主集群搭建.docx

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
配置 IP 映射 # vi /etc/hosts #rocketmq 配置 192.168.2.222 rocketmq-nameserver-1 192.168.2.222 rocketmq-master-1 192.168.2.223 rocketmq-nameserver-2 192.168.2.223 rocketmq-master-2 互 ping,重启网卡 service network restart 上传解压 # 上传 alibaba-rocketmq-3.2.6.tar.gz 文件至/usr/local # tar -zxvf alibaba-rocketmq-3.2.6.tar.gz -C /usr/local # mv alibaba-rocketmq alibaba-rocketmq-3.2.6 # ln -s alibaba-rocketmq-3.2.6 rocketmq 创建存储路径 # mkdir -p rocketmq/store/{commitlog,consumequeue,index} 修改配置文件(替换成以下内容) # vim /usr/local/rocketmq/conf/2m-noslave/broker-a.properties # vim /usr/local/rocketmq/conf/2m-noslave/broker-b.properties #所属集群名字 brokerClusterName=rocketmq-cluster #broker 名字,注意此处不同的配置文件填写的不一样 brokerName=broker-a|broker-b #0 表示 Master,>0 表示 Slave brokerId=0 #nameServer 地址,分号分割 namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876 # 在发送消息时,自动创建服务器不存在的 topic,默认创建的队列数 defaultTopicQueueNums=4 # 是否允许 Broker 自动创建 Topic,建议线下开启,线上关闭 autoCreateTopicEnable=true # 是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭 autoCreateSubscriptionGroup=true # Broker 对外服务的监听端口 listenPort=10911 # 删除文件时间点,默认凌晨 4 点 deleteWhen=04 #文件保留时间,默认 48 小时 fileReservedTime=120 #commitLog 每个文件的大小默认 1G mapedFileSizeCommitLog=1073741824
#ConsumeQueue 每个文件默认存 30W 条,根据业务情况调整 mapedFileSizeConsumeQueue=300000 #destroyMapedFileIntervalForcibly=120000 #redeleteHangedFileInterval=120000 #检测物理文件磁盘空间 diskMaxUsedSpaceRatio=88 #存储路径 storePathRootDir= /usr/local/rocketmq/store #commitLog 存储路径 storePathCommitLog= /usr/local/rocketmq/store /commitlog #消费队列存储路径存储路径 storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue #消息索引存储路径 storePathIndex=/usr/local/rocketmq/store/index #checkpoint 文件存储路径 storeCheckpoint=/usr/local/rocketmq/store/checkpoint #abort 文件存储路径 abortFile=/usr/local/rocketmq/store/abort #限制的消息大小 maxMessageSize=65536 #flushCommitLogLeastPages=4 #flushConsumeQueueLeastPages=2 #flushCommitLogThoroughInterval=10000 #flushConsumeQueueThoroughInterval=60000 #Broker 的角色 #- ASYNC_MASTER 异步复制 Master #- SYNC_MASTER 同步双写 Master #- SLAVE brokerRole=ASYNC_MASTER #刷盘方式 #- ASYNC_FLUSH 异步刷盘 #- SYNC_FLUSH 同步刷盘 flushDiskType=ASYNC_FLUSH #checkTransactionMessageEnable=false #发消息线程池数量 #sendMessageThreadPoolNums=128 #拉消息线程池数量 #pullMessageThreadPoolNums=128 注意:brokerName 的值跟配置文件一致 修改日志配置文件 # mkdir -p /usr/local/rocketmq/logs # cd /usr/local/rocketmq/conf && sed -i 's#${user.home}#/usr/local/rocketmq#g' *.xml
修改启动脚本参数(JVM 调优,包括 nameserver 和 broker。Rocketmq 最少的堆是 1g,否 则无法启动) # vim /usr/local/rocketmq/bin/runbroker.sh #============================================================ ================== # 开发环境 JVM Configuration #============================================================ ================== JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m - XX:PermSize=128m -XX:MaxPermSize=320m" # vim /usr/local/rocketmq/bin/runserver.sh JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m - XX:PermSize=128m -XX:MaxPermSize=320m" 启动:先启 namerserver 再启 broker 启动 nameserver # cd /usr/local/rocketmq/bin # nohup sh mqnamesrv & # tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log # jps 启动 brokerserver(节点 1 用的是 a.properties,节点 2 用的是 b.properties) # cd /usr/local/rocketmq/bin # sh mqbroker /usr/local/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null 2>&1 & nohup -c # 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 关闭 nameserver 和所有的 broker: # sh mqshutdown namesrv # sh mqshutdown broker 部署管控台 在 tomcat 中部署 rocketmq-console.war 修改 WEB-INF/classes/config.properties
启动 界面比较简洁,最好进入 Topic 界面进行 mqadmin 操作命令 数据清理 # cd /usr/local/rocketmq/bin # sh mqshutdown broker # sh mqshutdown namesrv # --等待停止 # rm -rf /usr/local/rocketmq/store # mkdir /usr/local/rocketmq/store # mkdir /usr/local/rocketmq/store/commitlog # mkdir /usr/local/rocketmq/store/consumequeue # mkdir /usr/local/rocketmq/store/index # --按照上面步骤重启 NameServer 与 BrokerServer
分享到:
收藏