ActiveMQ5.14.1+Zookeeper3.4.9高可用伪分布式部署
2017-09-17 13:26
162 查看
本文借鉴http://www.cnblogs.com/gossip/p/5977489.html,在此基础上进行了完善,使之成为一个完整版的伪分布式部署说明,在此记录一下!
一、本文目的
介绍如何在同一台虚拟机上搭建高可用的Activemq服务,集群数量包含3个Activemq,当Activemq可用数>=2时,整个集群可用。
本文Activemq的集群数量为3个,分别命名为mq1,mq2,mq3
二、概念介绍
1、伪集群
集群搭建在同一台虚拟机上,3个Activemq分别使用不同的端口提供服务,启用1个为Master,其它2个为Slaver,同一时间仅Master队列提供服务
2、高可用
3个Activemq服务,同一时间仅Master队列提供服务,当Master队列挂掉后,其它2个Slaver自动选举出1个成为Master,整个队列服务依然可用。当挂掉的队列重新恢复后,自动加入集群。当集群仅剩下1个队列时,整个队列不可用。
3、Activemq集群数据存储方式
a) kahaDB:文件共享,默认方式
b) JDBC:数据库共享
c) LevelDB:数据共享,本文使用方式
三、Activemq伪集群的搭建
1、Activemq的端口介绍
Activemq默认主要使用2个端口,8161(控制台使用)、61616(提供服务的端口),如果需要搭建集群,还需要开放集群间通讯的端口(主要用于选举Master)
2、Activemq集群端口的分配
服务接口没有使用默认的61611是因为activemq默认还会使用61613,61614等端口;
3、修改activemq配置
a) 安装activemq,本文使用Activemq版本为5.14.1,下载地址http://activemq.apache.org/activemq-5141-release.html;[b](前提条件,电脑已安装java JDK,不然启动时会提示)[/b]
解压文件到任意目录,然后打开CMD命令窗口,输入命令“[b]解压目录\
至此,activemq单机模式安装成功。
b) 修改配置文件activemq.xml,路径为conf/activemq.xml
1、broker(所有activemq的brokerName必须一致,才能加入同一个集群)[b][/b]
2、配置levelDB,在<broker>节点内添加(原始配置文件中是不存在<replicatedLevelDB>节点的,另外红色方框标示的是集群通信接口)
bind:集群间通讯的ip和端口
zkAddress:ZooKeeper地址,多个可用,逗号分隔
hostname:主机名,可在/etc/hosts中进行配置,默认“localhost”
zkPath:zkPath目录(自定义),可在ZooInspetor中进行查看
2、配置服务接口,在<transportConnectors>节点内,仅修改红色方框标注的地方
3、配置控制台端口,conf\jetty.xml文件中,在id="jettyPort"的<bean>节点内,仅修改红色方框标注的地方
c) 将整个activemq的安装目录复制成三个,并命名mq1,mq2,mq3;并修改mq2和mq3中的配置文件(安如上方法),更改其服务接口为“51512”,“51513”和控制台端口“8162”,“8163”以及集群通信接口“61602”,“61603”。
四、Zookeeper单机模式安装
下载zookeeper3.4.9,https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.9/ 并解压至任意目录,确保以及安装java JDK
[b]启动zookeeper,打开cmd命令窗口,输入“解压目录\bin\zkServer.cmd” ,回车[/b]
打开另外一个CMD窗口,输入命令“netstat -ano|findstr "2181" ”查看zookeeper是否启动成功,如图端口2181已经打开,说明启动成功
五、测试ActiveMQ伪分布式是否安装成功
1. cmd启动zookeeper,输入命令“[b][b]zookeeper解压目录\bin\zkServer.cmd[/b]”;
[/b]
2. 分别启动三个activemq,打开三个cmd窗口,分别输入如下命令:
“D:\apache-activemq-5.14.1-bin\mq1\bin\activemq start”
“D:\apache-activemq-5.14.1-bin\mq2\bin\activemq start”
“D:\apache-activemq-5.14.1-bin\mq3\bin\activemq start”
mq1:
mq2:
mq3:同上。
浏览器中输入http://127.0.0.1:8161/admin/(此时master为mq1)
此时可以看到作为master的是端口为8161的activemq即mq1;当关闭mq1的命令窗口,此时mq2变为master,mq3变为slave
再次查看http://127.0.0.1:8161/admin/ ,可以看到服务已经关闭了;而此时,zookeeper已经将master切换到了mq2上了,可以查看mq2的地址http://127.0.0.1:8162/admin/
至此,伪分布式activemq的部署已经完成了,欢迎交流指正!
一、本文目的
介绍如何在同一台虚拟机上搭建高可用的Activemq服务,集群数量包含3个Activemq,当Activemq可用数>=2时,整个集群可用。
本文Activemq的集群数量为3个,分别命名为mq1,mq2,mq3
二、概念介绍
1、伪集群
集群搭建在同一台虚拟机上,3个Activemq分别使用不同的端口提供服务,启用1个为Master,其它2个为Slaver,同一时间仅Master队列提供服务
2、高可用
3个Activemq服务,同一时间仅Master队列提供服务,当Master队列挂掉后,其它2个Slaver自动选举出1个成为Master,整个队列服务依然可用。当挂掉的队列重新恢复后,自动加入集群。当集群仅剩下1个队列时,整个队列不可用。
3、Activemq集群数据存储方式
a) kahaDB:文件共享,默认方式
b) JDBC:数据库共享
c) LevelDB:数据共享,本文使用方式
三、Activemq伪集群的搭建
1、Activemq的端口介绍
Activemq默认主要使用2个端口,8161(控制台使用)、61616(提供服务的端口),如果需要搭建集群,还需要开放集群间通讯的端口(主要用于选举Master)
2、Activemq集群端口的分配
控制台 | 服务接口 | 集群通讯接口 | |
mq1 | 8161 | 51511 | 61601 |
mq2 | 8162 | 51512 | 61602 |
mq3 | 8163 | 51513 | 61603 |
3、修改activemq配置
a) 安装activemq,本文使用Activemq版本为5.14.1,下载地址http://activemq.apache.org/activemq-5141-release.html;[b](前提条件,电脑已安装java JDK,不然启动时会提示)[/b]
解压文件到任意目录,然后打开CMD命令窗口,输入命令“[b]解压目录\
bin\activemq start”
,在浏览器里输入“http://127.0.0.1:8161/admin/”默认账号密码都是“admin”.如图:[/b]
至此,activemq单机模式安装成功。
b) 修改配置文件activemq.xml,路径为conf/activemq.xml
1、broker(所有activemq的brokerName必须一致,才能加入同一个集群)[b][/b]
2、配置levelDB,在<broker>节点内添加(原始配置文件中是不存在<replicatedLevelDB>节点的,另外红色方框标示的是集群通信接口)
bind:集群间通讯的ip和端口
zkAddress:ZooKeeper地址,多个可用,逗号分隔
hostname:主机名,可在/etc/hosts中进行配置,默认“localhost”
zkPath:zkPath目录(自定义),可在ZooInspetor中进行查看
2、配置服务接口,在<transportConnectors>节点内,仅修改红色方框标注的地方
3、配置控制台端口,conf\jetty.xml文件中,在id="jettyPort"的<bean>节点内,仅修改红色方框标注的地方
c) 将整个activemq的安装目录复制成三个,并命名mq1,mq2,mq3;并修改mq2和mq3中的配置文件(安如上方法),更改其服务接口为“51512”,“51513”和控制台端口“8162”,“8163”以及集群通信接口“61602”,“61603”。
四、Zookeeper单机模式安装
下载zookeeper3.4.9,https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.9/ 并解压至任意目录,确保以及安装java JDK
[b]启动zookeeper,打开cmd命令窗口,输入“解压目录\bin\zkServer.cmd” ,回车[/b]
打开另外一个CMD窗口,输入命令“netstat -ano|findstr "2181" ”查看zookeeper是否启动成功,如图端口2181已经打开,说明启动成功
五、测试ActiveMQ伪分布式是否安装成功
1. cmd启动zookeeper,输入命令“[b][b]zookeeper解压目录\bin\zkServer.cmd[/b]”;
[/b]
2. 分别启动三个activemq,打开三个cmd窗口,分别输入如下命令:
“D:\apache-activemq-5.14.1-bin\mq1\bin\activemq start”
“D:\apache-activemq-5.14.1-bin\mq2\bin\activemq start”
“D:\apache-activemq-5.14.1-bin\mq3\bin\activemq start”
mq1:
mq2:
mq3:同上。
浏览器中输入http://127.0.0.1:8161/admin/(此时master为mq1)
此时可以看到作为master的是端口为8161的activemq即mq1;当关闭mq1的命令窗口,此时mq2变为master,mq3变为slave
再次查看http://127.0.0.1:8161/admin/ ,可以看到服务已经关闭了;而此时,zookeeper已经将master切换到了mq2上了,可以查看mq2的地址http://127.0.0.1:8162/admin/
至此,伪分布式activemq的部署已经完成了,欢迎交流指正!
相关文章推荐
- activemq5.14+zookeeper3.4.9实现高可用
- 分布式架构学习之:028--ActiveMQ高可用集群(zookeeper+leveldb)安装、配置、高可用测试
- 分布式架构高可用架构篇_02_activemq高可用集群(zookeeper+leveldb)安装、配置、高可用测试
- 分布式架构高可用架构篇_activemq高可用集群(zookeeper+leveldb)安装、配置、高可用测试
- 分布式架构学习之:ActiveMQ高可用集群(zookeeper+leveldb)安装、配置、高可用测试
- 分布式架构高可用架构篇_02_activemq高可用集群(zookeeper+leveldb)安装、配置、高可用测试
- ActiveMQ实现负载均衡+高可用部署方案
- 4000 ActiveMQ实现负载均衡+高可用部署方案
- [置顶] Java集群优化——dubbo+zookeeper构建高可用分布式集群 【转】
- 031 分布式中,zookeeper的部署
- 开源jms服务ActiveMQ的负载均衡+高可用部署方案探索
- (10)Zookeeper 3.4.9 集群部署
- 分布式架构高可用架构篇_01_zookeeper集群的安装、配置、高可用测试
- zookeeper分布式部署方案
- Java集群优化——dubbo+zookeeper构建高可用分布式集群
- ActiveMQ实现负载均衡+高可用部署方案
- [置顶] Java集群优化——dubbo+zookeeper构建高可用分布式集群
- Java集群优化——dubbo+zookeeper构建高可用分布式集群
- Linux部署Apache ActiveMQ 5.14.1
- Java集群优化——dubbo+zookeeper构建高可用分布式集群