Rudder サーバーは正常に動作していますが、5分ごとに、HTMLセッションが開始され、「Rudderがロードされています。しばらくお待ちください」という画面が表示されます。しばらくすると、普通にまた使えます。
その動作を停止するにはどうすればよいですか?
ラダーのサーバーには、「ラダーサーバーが起動していてアクセス可能である必要があります。そうでない場合は、再起動してみてください」という構成ルールがあります。デフォルトでは、エージェントは5分ごとにルールをチェックします。
ルールは、URL http://localhost:8080/rudder/api/status
にアクセスし、200OKステータスの「OK」テキスト応答を期待することによってチェックされます。
したがって、問題がそのルールにリンクされていることを検証するには、Rudderサーバーでrootとして次のコマンドを実行してみてください。
$ /var/rudder/cfengine-community/bin/cf-agent -KI
そして、出力にそのようなものがあるかどうかを確認します。
2014-10-07T10:06:03+0200 info: /default/root_component_check/methods/'any'/default/generic_alive_check/commands/'/usr/bin/curl -s http://localhost:8080/rudder/api/status |/bin/grep -q OK'[0]: Executing 'no timeout' ... '/usr/bin/curl -s http://localhost:8080/rudder/api/status |/bin/grep -q OK'
2014-10-07T10:06:03+0200 error: /default/root_component_check/methods/'any'/default/generic_alive_check/commands/'/usr/bin/curl -s http://localhost:8080/rudder/api/status |/bin/grep -q OK'[0]: Finished command related to promiser '/usr/bin/curl -s http://localhost:8080/rudder/api/status |/bin/grep -q OK' -- an error occurred, returned 1
2014-10-07T10:06:03+0200 info: /default/root_component_check/methods/'any'/default/generic_alive_check/commands/'/usr/bin/curl -s http://localhost:8080/rudder/api/status |/bin/grep -q OK'[0]: Completed execution of '/usr/bin/curl -s http://localhost:8080/rudder/api/status |/bin/grep -q OK'
R: @@server-roles@@result_error@@server-roles@@server-roles-directive@@0@@Check rudder status@@None@@2014-10-07 08:06:02+00:00##root@#The http://localhost:8080/rudder/api/status web application failed to respond for the second time. Restarting jetty NOW !
その場合は、ラダーを再起動した後、次のコマンドを手動で実行します。
curl -v -X GET http://localhost:8080/rudder/api/status
それでも「HTTP/1.1200OK」と「OK」が返されない場合は、テストの成功を妨げるものがあります。チェックする可能性が最も高いケースは次のとおりです。
最後のケースの場合:Java IPv6 over IPv4を使用するように一生懸命努力してください。したがって、/ etc/hostsにある場合:
::1 localhost
問題が発生する可能性があります。次のように変更してみてください。
::1 ip6-localhost
そして、次のような行があることを確認します。
127.0.0.1 localhost