activemq 集群消息接受不到

公司有一套公共的Activemq环境供业务系统使用,由于信创,新搭建了一套6节点(三主三从)集群环境,业务系统接入时反应消息接受不到。

通过查看activemq日志发现有大量连接报错,去排查文件发现activemq.xml的brokerName 配置重复。

配置文件修改后重启,发现错误消失,自测时正常生产和消费消息。但业务系统反馈依然有消息消费不到。

通过对比新老环境的配置文件没有发现异常问题,测试连接老集群时发现只有主节点能接受消息,和访问控制台端口,从节点升为主之后才能访问。但是新集群的所有节点都能接受消息和访问,所以还是怀疑配置文件问题。对了一天也没发现。

第二天通过对比新老集群activemq的启动日志发现,老集群的从节点启动日志要少于新机器,通过对比发现

1
Database /ope/activemq/data/kahadb/lock is locked by another server

新集群的从节点没有这条日志直接去连接其他主节点服务器了
忽然想到,集群是基于kahadb共享存储实现的集群,应该是用的同一份存储,因为是部署在容器云上的,对比发现,主和从的挂载目录不一样。修改一致后集群正常。