Zookeeper + Replicated LevelDB集群配置:

Zookeeper + Replicated LevelDB集群配置:
ActiveMQ的多节点集群
从ActiveMQ5.9开始,ActiveMQ的集群实现方式取消了传统的Master-Slave方式,
增加了基于ZooKeeper + LevelDB的Master-Slave实现方式,从5.9版本后也是官网的推荐。

基于Zookeeper 和 LevelDB搭建ActiveMQ集群。集群仅提供主备方式的高可用集群功能,避免单点故障。

原理说明:
使用Zookeeper集群注册所有的ActiveMQ Broker但只有其中一个Broker可以提供服务它将被视为Master,其他的Broker处于待机状态
视为Slave.

如果Master因故障而不能提供服务,Zookeeper会从Slave中选举一个Broker充当Master.
Slave连接Master并同步他们的存储状态,Slave不接受客户端连接,所有的存储操作都将被复制到连接至Master的Slaves。
如果Master宕机得到了最新更新的Slave会成为Master。故障节点在恢复后会重新加入到集群中并连接Master进入Slave模式。

推荐集群最少:3个节点(包括主节点)
apache-activemq-5.15.13-bin.tar.gz
zookeeper-3.4.9.tar.gz

配置ip:port列表:
主机 zookeeper集群端口 AMQ集群bind端口 AMQ消息tcp端口 管理控制台端口 AMQ节点安装目录
192.168.111.136 2181 bind="tcp://0.0.0.0:63631 61616 8161 /mq_cluster/mq_node01
192.168.111.136 2182 bind="tcp://0.0.0.0:63632 61617 8162 /mq_cluster/mq_node02
192.168.111.136 2183 bind="tcp://0.0.0.0:63633 61618 8163 /mq_cluster/mq_node03

1 具备zk集群并成功启动
2 创建3台集群目录(ActiveMQ复制三份)
3 修改管理控制台端口: jetty.xml
4 hostname名字映射(linux: etc/hosts)
5 ActiveMQ集群配置: 持久化配置Replicated LevelDB activemq.xml


6 修改各节点的消息端口 activemq.xml

7 修改集群名称brokerName: activemq.xml

8 按顺序启动ActiveMQ节点。

集群启动脚本:
#!bin/sh
cd /mq_cluster/mq_node01/bin
./activemq start

cd mq_cluster/mq_node02/bin
./activemq start

cd /mq_cluster/mq_node03/bin
./activemq start

8 zookeeper查看activemq集群是否搭建成功:
ls /activemq/leveldb-stores

查看activemq主节点:
在zookeeper客户端命令中,查看activemq各个节点数据信息:
elected:“有值” 则为master
elected:“null” 则为slave

ActiveMQ的客户端只能访问Mster的Broker,其他处于Slave的Broker不能访问,所以客户端连接的Broker应该使用
failover协议(失败转移)

当一个ActiveMQ节点挂掉或者一个zookeeper节点挂掉,Activemq服务依然正常运转,如果仅剩一个ActiveMQ节点,由于
不能选举Master,所以ActiveMQ不能正常运行。

同理:
如果zookeeper仅剩一个节点活动,不管ActiveMQ各节点存活,ActiveMQ也不能正常提供服务。(ActiveMQ集群的高可用,依赖于zookeeper集群的高可用)

注意:zookeeper+Replicated LevelDB集群配置版本号,要对应的上,不然集群可能有问题。
已验证没有问题的搭配版本:
zookeeper-3.4.9.tar
apache-activemq-5.15.9-bin.tar

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值