実行し続けるタスクを開始するにはどうすればいいですか

実行し続けるタスクを開始するにはどうすればいいですか

Ansible を使ってマシンにリモートインストールした WildFly サーバーがあるとします。standalone.shスクリプトを実行して Ansible を起動したいとします。

- name: start wildfly
      shell: "{{bin}}/standalone.sh -b 0.0.0.0 2>&1 >/dev/null "
      args:
        chdir: "/tmp/{{wildfly}}"

これを実行すると、サーバーは起動しますが、Ansible プレイブックはハングします。 を&コマンド ラインの最後に追加すると (これが shell タスクを使用する理由です)、サーバーが起動してすぐに強制終了されます。 (commandの代わりにを使用した場合も同様ですshell

このserviceタスクには、または同様のエントリが必要であることは理解していますが/etc/init.d、これはあまり役に立ちません。

答え1

サービス タスクにはエントリ/etc/init.dまたは類似のものが必要であることは理解していますが、これはあまり役に立ちません。

作成します。Upstart サービスは、数行の簡単なコードで作成できます。Papertrailの例ですremote_syslog

関連情報