クラスタリング、分散コンピューティング、およびマルチキャスト モードでのメッセージングに Hazelcast に依存する小さなシステムを実行しています (ダウンロードで利用可能な標準構成)。「コア」Hazelcast インスタンスとして実行される多数のサーバー モジュールと、Hazelcast「ネイティブ クライアント」として実装される Java Swing アプリケーションがあります。これはすべてうまく機能し、システムを本番環境で試運転したいので、2 つの個別のクラスター (dev + prod) を実行する必要があり、そこで問題が発生します。
ドキュメントによると、必要なのは 2 つのクラスターに別々のグループ名とパスワードを使用することだけであり、2 つのクラスターは自動的に整理されるはずだと思います!? これはサーバー モジュールでは機能しているように見えますが、「クライアント」インスタンスを prod 環境に接続しようとすると、prod のサーバー モジュールの 1 つのログから、クライアントが正常に接続しているように見えることがわかります。
INFO: [prod] received auth from Connection [/192.168.0.2:55863 -> null] live=true,
client=true, type=JAVA_CLIENT, this group name:prod, auth group name:prod,
successfully authenticated
ただし、クライアントが prod のメンバーとして表示されることはありません。代わりに、prod に対して認証が行われたにもかかわらず、クライアントが開発環境のメンバーになっていることがわかりました。
2 つのクラスターが無意識に混ざり合うことは、明らかに私にとって大きな問題であり、ショーストッパーでもあります。私が間違っていることがあるかどうか、または問題を解決するためにできる構成変更があるかどうか、誰かが知っていますか?