我目前正在尝试管理一个 openmq 集群(使用 glassfish 3.0.1),我遇到了一些奇怪的行为。
集群工作了七个月,注册了 2 个代理没有任何问题。
我现在需要在集群中临时添加另外两个代理。这是我以前的:
------------------------- 主机主端口 ------------------------- 本地主机 7676 集群 ID MyCluster 集群高可用 true -------------------------------------------------- -------------------------------------------------- --------- 经纪人ID 自上次以来的时间 执行接管状态时间戳的存储中的代理 ID 地址状态消息 -------------------------------------------------- -------------------------------------------------- --------- Broker1 192.168.0.1:7676 OPERATING 5 6 秒 Broker2 192.168.0.2:7676 OPERATING 8 6 秒
然后,我在另外两台服务器上成功启动了另外两个代理,我得到了:
------------------------- 主机主端口 ------------------------- 本地主机 7676 集群 ID MyCluster 集群高可用 true -------------------------------------------------- -------------------------------------------------- --------- 经纪人ID 自上次以来的时间 执行接管状态时间戳的存储中的代理 ID 地址状态消息 -------------------------------------------------- -------------------------------------------------- --------- Broker1 192.168.0.1:7676 OPERATING 5 6 秒 Broker2 192.168.0.2:7676 OPERATING 8 6 秒 Broker3 192.168.0.3:7676 OPERATING 5 6 秒 Broker4 192.168.0.4:7676 OPERATING 8 6 秒
应用程序在配置下运行良好,自动使用两个新代理。当我使用以下命令从集群中停止代理时会出现问题:
./imqcmd shutdown bkr
在其中一台服务器上。结果./imqcmd list bkr
如下:
------------------------- 主机主端口 ------------------------- 本地主机 7676 集群 ID MyCluster 集群高可用 true -------------------------------------------------- -------------------------------------------------- --------- 经纪人ID 自上次以来的时间 执行接管状态时间戳的存储中的代理 ID 地址状态消息 -------------------------------------------------- -------------------------------------------------- --------- Broker1 192.168.0.1:7676 OPERATING 5 6 秒 Broker2 192.168.0.2:7676 OPERATING 8 6 秒 Broker3 192.168.0.3:7676 TAKEOVER_COMPLETE 0 Broker1 6 秒 Broker4 192.168.0.4:7676 OPERATING 8 6 秒
一切似乎都很好,接管是由 Broker1 执行的,但是当我查看 glassfishs 的 server.log 时,我发现了以下行:
[C4003]: Error occurred on connection creation [192.168.0.3:7676]. - cause: java.net.ConnectException: Connection refused|#]
就像 glassfish 尝试连接到关闭的代理一样。
有什么我错过的吗?
谢谢你的帮助。