ActiveMQ集群有两种方式
- Master-Slave
- Broker clusters
| 高可用 | 负载均衡 |
Master-Slave | 是 | 否 |
Broker clusters | 否 | 是 |
节点B与节点C组成master-slave集群,节点B与节点C分别与A组成Broker clusters集群。节点配置如下图,节点B、C通过共享文件锁竞争master。
| 服务端口 | 管理端口 | 存储 | 网络连机器 | 用途 |
A | 61616 | 8161 |
| B,C | 消费者 |
B | 61617 | 8162 | /share/hadb | A | 生产者、消费者 |
C | 61618 | 8163 | /share/hadb | A | 生产者、消费者 |
详细配置过程如下:
1、下载activemq,解压,在/usr/lcoal/activemq 下创建三个文件夹activemq-a,activemq-b,activemq-c,将解压后的内容复制到三个文件夹。
2、修改配置文件,打开activemq-a下的conf/activemq.xml,按照下图进行修改
3、修改配置文件,打开activemq-b下的conf/activemq.xml,同上注释掉不用的部分,添加网络连接器,同时修改持久化配置和修改服务端口
4、修改配置文件,修改配置文件,打开activemq-b下的conf/jetty.xml中的端口改为8162
5、同样的方法修改activemq-c下的两个配置文件,将服务端口改为61618,管理端口改为8163
6、启动这三个activemq,分别是
8、查看端口启动情况,可以看到61618端口没有启动,因为B和C组成的master-slave机制,B节点已经启动,所以C节点未启动服务。
9.我们停止B节点,同时在查看61618端口情况,可以看到61618端口启动服务。
10、访问http://ip:8161,http://ip:8162,http://ip:8163,这时候会发现8162端口无法打开。8162和8163只能同时启动一个。进入Manage ActiveMQ broker,用户名密码都是admin点击network可以看到负载机器