环境准备:CentOS_6.5_x64
IP: 192.168.0.249   dbTest249    Master1
IP: 192.168.0.251   webTest251   Master2

下载 alibaba-rocketmq 软件

https://github.com/alibaba/RocketMQ/releases

=================================================================================================================================================

一、安装rocketmq

# tar zxf alibaba-rocketmq-3.2.4-beta1.tar.gz -C /usr/local/
# cd /usr/local/
# ln -s /usr/local/alibaba-rocketmq /usr/local/rocketmq
# cd rocketmq/

二、配置主从

1、分别在249、251上编辑配置文件

# hostname
# vim conf/2m-noslave/broker-a.properties
 1 #####################Master1服务器配置文件#####################
2 brokerClusterName=FusionCluster
3 brokerName=broker-a
4 brokerId=0
5 namesrvAddr=dbTest249:9876;webTest251:9876
6 deleteWhen=04
7 fileReservedTime=120
8
9 brokerRole=ASYNC_MASTER
10 flushDiskType=ASYNC_FLUSH
11 sstorePathRootDir=/data/rocketmq/store
12 storePathCommitLog=/data/rocketmq/store/commitlog
 1 #####################Master2服务器配置文件#####################
2 brokerClusterName=FusionCluster
3 brokerName=broker-b
4 brokerId=1
5 namesrvAddr=dbTest249:9876;webTest251:9876
6 deleteWhen=04
7 fileReservedTime=120
8
9 brokerRole=ASYNC_MASTER
10 flushDiskType=ASYNC_FLUSH
11 listenPort=10911
12 sstorePathRootDir=/data/rocketmq/store
13 storePathCommitLog=/data/rocketmq/store/commitlog

2、编辑JAVA内存块

# vim bin/runbroker.sh

如果服务器内存不够,可以修改runserver.sh脚本(mqnamesrv文件中通过runserver.sh脚本调用Name Server的主函数com.alibaba.rocketmq.namesrv.NamesrvStartup启动Name Server)中的JAVA_OPT_1参数
[plain] view plaincopy在CODE上查看代码片派生到我的代码片

1 JAVA_OPT_1="-server -Xms512m -Xmx1g -XX:PermSize=128m -XX:MaxPermSize=320m"

3、创建数据目录

# mkdir -p /data/rocketmq/store/commitlog
# mkdir /data/logs
# cd conf/
# sed -i 's#${user.home}#/data#g' *.xml      //将conf目录下所有xml文件中的${user.home}替换成/data,进入rocketmq/conf目录下执行该命令

4、启动RocketMQ

# cd ../bin/
# nohup sh mqnamesrv >/var/log/ns.log &
# nohup sh mqbroker -c ../conf/2m-noslave/broker-a.properties > /var/log/mq.log 2>&1 &

5、查看启动日志

# tail -f /var/log/ns.log
# tail -f /var/log/mq.log

6、查看启动端口

# netstat -tunpl
# jps
# kill -9 22596
# kill -9 22564
# kill -9 9967
# netstat -tunpl
# netstat -tunpl |grep java

7、关闭RocketMQ

# sh mqshutdown
1 Useage: mqshutdown broker | namesrv
# sh mqshutdown broker
# sh mqshutdown namesrv

8、再次启动

# nohup sh mqnamesrv >/var/log/ns.log &
# nohup sh mqbroker -c ../conf/2m-noslave/broker-a.properties > /var/log/mq.log 2>&1 &

9、验证状态

# jps

Linux分布式消息队列RocketMQ部署与监控--双Master的更多相关文章

  1. (原创)Rocketmq分布式消息队列的部署与监控

    -------------------------------------------------------------------------------------------- 一.Rocke ...

  2. 分布式消息队列RocketMQ部署

    一.RocketMQ简介: RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点: 1.支持严格的消息顺序: 2.支持Topic与Queue两种模式: 3.亿级消息堆积能力: 4.比较友好 ...

  3. 分布式消息队列RocketMQ(一)安装与启动

    分布式消息队列RocketMQ 一.RocketMQ简介 RocketMQ(火箭MQ) 出自于阿里,后开源给apache成为apache的顶级开源项目之一,顶住了淘宝10年的 双11压力 是电商产品的 ...

  4. 分布式消息队列RocketMQ与Kafka架构上的巨大差异

    分布式消息服务 Kafka 是一个高吞吐.高可用的消息中间件服务,适用于构建实时数据管道.流式数据处理.第三方解耦.流量削峰去谷等场景,具有大规模.高可靠.高并发访问.可扩展且完全托管的特点,是分布式 ...

  5. 分布式消息列队RocketMQ部署

    模式: 多Master多Slave模式,异步复制: 每个 Master 配置一个 Slave,有多对Master-Slave,HA 采用异步复制方式,主备有短暂消息延迟,毫秒级. 优点:即使磁盘损坏, ...

  6. 分布式消息队列RocketMQ与Kafka架构上的巨大差异之1 -- 为什么RocketMQ要去除ZK依赖?

    我们知道,在早期的RocketMQ版本中,是有依赖ZK的.而现在的版本中,是去掉了对ZK的依赖,转而使用自己开发的NameSrv. 并且这个NameSrv是无状态的,你可以随意的部署多台,其代码也非常 ...

  7. 分布式消息队列RocketMQ&Kafka -- 消息的“顺序消费”

    在说到消息中间件的时候,我们通常都会谈到一个特性:消息的顺序消费问题.这个问题看起来很简单:Producer发送消息1, 2, 3... Consumer按1, 2, 3...顺序消费. 但实际情况却 ...

  8. RocketMQ 消息队列单机部署及使用

    转载请注明来源:http://blog.csdn.net/loongshawn/article/details/51086876 相关文章: <RocketMQ 消息队列单机部署及使用> ...

  9. EQueue - 一个纯C#写的分布式消息队列介绍2

    一年前,当我第一次开发完EQueue后,写过一篇文章介绍了其整体架构,做这个框架的背景,以及架构中的所有基本概念.通过那篇文章,大家可以对EQueue有一个基本的了解.经过了1年多的完善,EQueue ...

随机推荐

  1. Runtime 源码阅读

    Runtime 属性说明 /** * 每一个 Java 应用程序都有一个关联的运行时对象 * * @author unascribed * @see java.lang.Runtime#getRunt ...

  2. c#/netcore/mvc视图中调用控制器方法

    1: public class HomeController : Controller     {         public ActionResult Index()         {     ...

  3. openstack核心组件--keystone(1)

    一.keystone介绍 keystone 是OpenStack的组件之一,用于为OpenStack家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户权限的定义等等 ...

  4. Spring学习之==>AOP

    一.概述 AOP(Aspect Oriented Programming)称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等等,Struts2的拦截器设计就是基于A ...

  5. linux 基础 文件操作

    cat -A /etc/passwdnl -ba passwd cat -A man_db.conf more man_db.conf less man_db.conf head -n 5 /var/ ...

  6. 国内npm源

    永久使用lnpm config set registry https://registry.npm.taobao.org // 配置后可通过下面方式来验证是否成功 npm config get reg ...

  7. Elasticsearch mapping映射文件设置没有生效

    Elasticsearch mapping映射文件设置没有生效 问题背景 我们一般会预先创建 Elasticsearch index的 mapping.properties 文件(类似于MySQL中的 ...

  8. web端测试之封装公共部分

    from time import * from selenium import webdriver def login(self,username,passwd): self.dr=webdriver ...

  9. BeanFactory 和FactoryBean的区别

    转自:https://www.cnblogs.com/aspirant/p/9082858.html BeanFacotry是spring中比较原始的Factory.如XMLBeanFactory就是 ...

  10. 电脑的sid

    SID的查询方法:1.Win键+R键,打开运行,输入CMD2.输入:whoami /user3.就可以看到本机的SID了 SID的修改方法1.下载NewSID软件,并打开 2.可以指定一个SID,也可 ...