JBoss EAPサーバーが起動するとすぐにデプロイしたい単純な「完全性チェック」Webアプリケーションがあります。ところで、「スタート」とはどういう意味ですか? JBoss レポートの完了後に jboss cli を呼び出すスクリプトが速すぎると、次のメッセージが表示されます。
{"WFLYDC0074: Operation failed or was rolled back on all servers. Server failures:" => {"server-group" => {"main-server-group" => {"host" => {"master" => {"master-1-server-1" => "WFLYCTL0379: System boot is in process; execution of remote management operations is not currently available"}}}}}}
JBossが次のようになるかどうかはどうすればわかりますか?本物展開を開始する準備ができましたか?
または起動時に自動的に何かを配布するメカニズムはありますか?
答え1
#!/bin/bash
while true
do
wildflyStarted=$(grep -ic "Wildfly.*started in.*ms.*Started.*of.*services" /opt/wildfly/standalone/log/server.log)
if [[ "$wildflyStarted" -eq "1" ]]; then
break;
else
sleep 1;
fi
done
while true
do
ejbcaStatus=$(/opt/wildfly/bin/jboss-cli.sh -c --commands="cd deployment,cd ejbca.ear,read-attribute status")
if [[ "$ejbcaStatus" -eq "OK" ]]; then
break;
else
sleep 5;
fi
done
このスクリプトは私にとって効果的です。