glassfishを使用して2つのノードを持つクラスタを作成しようとしています。4.1.1 build 1
1つのノードはローカルで、もう1つはsshです。私はそれが大丈夫応答するping。 (ノードNODE2に成功したSSH接続(gfNode2)) 私は、ノードを作成し、そのノード上のインスタンス(I2)を作成し、セットアップSSHを持っていますが、私はインスタンスを起動するときに私が取得:glassfish 4.1.1クラスタsshノードエラー
I2を:ノードnode2(gfNode2)でインスタンスi2を開始できませんでした。ノードnode2(gfNode2)でコマンドが失敗しました:2016年9月10日の以前の同期に失敗しました12:25:27 PM完全同期を実行します。インスタンスi2のすべてのキャッシュ状態を削除します。 CLI802ディレクトリ構成の同期に失敗しました。リモート障害:SynchronizeFiles:例外読み取り要求コマンドstart-local-instanceが失敗しました。この操作を完了するには、インストール場所は/ opt/glassfish4のGlassFishからホストgfNode2上でローカルに次のコマンドを実行します。LIB /スタート・ローカル・インスタンスをnadmin --nodeノード2 --sync通常I2
私は、このコマンドを実行した場合ノード2のマシンでは、
./nadmin start-local-instance --node node2 --sync normal i2
Previous synchronization failed at Sep 10, 2016 12:25:27 PM
Will perform full synchronization.
Removing all cached state for instance i2.
Enter admin user name> admin
Enter admin password for user "admin">
CLI802 Synchronization failed for directory config, caused by:
remote failure: SynchronizeFiles: Exception reading request
Command start-local-instance failed.
次は何を試していいですか?
更新:
DASは到達可能ですが、sshは正常に動作しています(ping-node-sshはdasから機能します)。
私が気づいたのは、(install-node-ssh)をインストールして(create-node-ssh)で作成しても、ノード2にはファイルがありません。
/glassfish4/glassfish/nodes/node2/i2には1つのファイルしかありません:.syncstateは空です。 node2/i2ディレクトリはそこにありますが、i2には何もありません。たぶん原因:インスタンスi2のすべてのキャッシュ状態を削除します。私は、DASログに得たものである
:
[2016-09-10T19:31:14.806+0000] [glassfish 4.1] [WARNING] [] [javax.enterprise.system.core] [tid: _ThreadID=106 _ThreadName=admin- listener(5)] [timeMillis: 1473535874806] [levelValue: 900] [[
Could not start instance i2 on node node2 (gfNode2).: Command ' /opt/glassfish4/glassfish/lib/nadmin --_auxinput - --interactive=false start-local-instance --node node2 --sync normal i2' failed on node node2 (gfNode2): Previous synchronization failed at Sep 10, 2016 12:25:27 PM
Will perform full synchronization.
Removing all cached state for instance i2.
Command start-local-instance failed.
CLI802 Synchronization failed for directory config, caused by:
remote failure: SynchronizeFiles: Exception reading request: To complete this operation run the following command locally on host gfNode2 from the GlassFish install location /opt/glassfish4:
lib/nadmin start-local-instance --node node2 --sync normal i2]]
[2016-09-10T19:31:14.818+0000] [glassfish 4.1] [SEVERE] [] [org.glassfish.admingui] [tid: _ThreadID=102 _ThreadName=admin-listener(1)] [timeMillis: 1473535874818] [levelValue: 1000] [[
RestResponse.getResponse() gives FAILURE. endpoint = 'https://localhost:4848/management/domain/servers/server/i2/start-instance'; attrs = '{}']]
[2016-09-10T19:31:14.820+0000] [glassfish 4.1] [SEVERE] [] [org.glassfish.admingui] [tid: _ThreadID=102 _ThreadName=admin-listener(1)] [timeMillis: 1473535874820] [levelValue: 1000] [[
Error in instanceAction ;
endpoint=https://localhost:4848/management/domain/servers/server/i2/start-instance;attrsMap=null]]
私はポストの最初のコードブロックに示したされているものだノード2からのコマンドを実行しようとすると...
のTh:
ドメインのログは次の場所にあります。それはかなり奇妙です。リモートノードにGlassFishをインストールできるのであれば、同期が失敗しているようなことは理解できません。インスタンスが作成されたときにリモートファイルが作成されなかったように見えます。 sync = normalは、DASに到達できない場合にはDASには影響しませんが、sync = fullはそれらを消去して再び開始する準備ができています。それは、ログの最後のメモが、コマンドを実行するために 'localhost'に行くと言うことは興味深いことです。リモートインスタンスが適切なホスト名の代わりにlocalhostにアクセスしてDASに連絡しようとしている場合、それはそれを説明するでしょう – Mike
私はワイプされたファイルは私がある程度同期を完全に実行した結果だと思います。私はそのローカルホストにも気づきましたが、なぜこのように呼び出すのかわかりません。私は検索を続けます。 –
が見つかりました!問題は、2台目のマシン(node2)のホストファイルが正しく設定されていないことと、gfNode1とgfNode2の両方が同じIPを持っていて、インスタンスが同期しようとしたときに、エラーは誤ったコピー/ペーストのためでした:( –