0

現在、openmq クラスター (glassfish 3.0.1 を使用) を管理しようとしていますが、奇妙な動作に遭遇します。

クラスタは、登録された 2 つのブローカーで問題なく 7 か月間動作します。

ここで、一時的にクラスターに他の 2 つのブローカーを追加する必要があります。これが私が前に持っているものです:

-------------------------
ホストのプライマリ ポート
-------------------------
ローカルホスト 7676

クラスタ ID MyCluster
クラスタは高可用性です true

-------------------------------------------------- -------------------------------------------------- ----------
                                                                          ブローカーの ID 前回からの経過時間
 ブローカー ID アドレス ステート ストア実行中のメッセージ テイクオーバー ステータス タイムスタンプ
-------------------------------------------------- -------------------------------------------------- ----------
Broker1 192.168.0.1:7676 動作中 5 6 秒
Broker2 192.168.0.2:7676 動作中 8 6 秒

次に、他の2つのサーバーで他の2つのブローカーを正常に起動し、次のようになりました:

-------------------------
ホストのプライマリ ポート
-------------------------
ローカルホスト 7676

クラスタ ID MyCluster
クラスタは高可用性です true

-------------------------------------------------- -------------------------------------------------- ----------
                                                                          ブローカーの ID 前回からの経過時間
 ブローカー ID アドレス ステート ストア実行中のメッセージ テイクオーバー ステータス タイムスタンプ
-------------------------------------------------- -------------------------------------------------- ----------
Broker1 192.168.0.1:7676 動作中 5 6 秒
Broker2 192.168.0.2:7676 動作中 8 6 秒
Broker3 192.168.0.3:7676 動作中 5 6 秒
Broker4 192.168.0.4:7676 動作中 8 6 秒

アプリケーションは、2 つの新しいブローカーを自動的に使用して、構成で適切に実行されます。この問題は、次のコマンドを使用してクラスターからブローカーを停止すると発生します。

./imqcmd shutdown bkr

サーバーの1つに。の結果./imqcmd list bkrは次のとおりです。

-------------------------
ホストのプライマリ ポート
-------------------------
ローカルホスト 7676

クラスタ ID MyCluster
クラスタは高可用性です true

-------------------------------------------------- -------------------------------------------------- ----------
                                                                          ブローカーの ID 前回からの経過時間
 ブローカー ID アドレス ステート ストア実行中のメッセージ テイクオーバー ステータス タイムスタンプ
-------------------------------------------------- -------------------------------------------------- ----------
Broker1 192.168.0.1:7676 動作中 5 6 秒
Broker2 192.168.0.2:7676 動作中 8 6 秒
Broker3 192.168.0.3:7676 TAKEOVER_COMPLETE 0 Broker1 6 秒
Broker4 192.168.0.4:7676 動作中 8 6 秒

すべて問題ないようです。Broker1 によってテイクオーバーが実行されますが、グラスフィッシュの server.log を見ると、次の行が見つかりました。

[C4003]: Error occurred on connection creation [192.168.0.3:7676]. - cause: java.net.ConnectException: Connection refused|#]

グラスフィッシュがシャットダウンされたブローカーに接続しようとした場合のように。

私が逃したものはありますか?

ご協力いただきありがとうございます。

4

1 に答える 1

0

欠落しているコマンドラインは次のとおりです。

imqdbmgr remove bkr -n Broker3
次に、リストが出力されます。

-------------------------------------------------- -------------------------------------------------- ---------
                                                                          ブローカーのID最後からの時間
 テイクオーバーステータスのタイムスタンプを実行しているストア内のブローカーIDアドレス状態メッセージ
-------------------------------------------------- -------------------------------------------------- ---------
Broker1 192.168.0.1:7676 OPERATING56秒
Broker2 192.168.0.2:7676 OPERATING86秒
Broker4 192.168.0.4:7676 OPERATING86秒

Broker3はブローカーHAクラスターに登録されなくなりました。

于 2011-10-17T15:07:07.680 に答える