障害発生時に自動的に再起動するようにAmazon Linuxサービスを設定するにはどうすればよいですか?

障害発生時に自動的に再起動するようにAmazon Linuxサービスを設定するにはどうすればよいですか?

私はAmazon Linuxを使用しています。サービスを開始および停止するbashで書かれたスクリプトがあります。

/etc/init.d/wildfly

たとえば、さまざまなランレベルには、スクリプトの起動と停止を保証するシンボリックリンクがあります。

/etc/rc.d/rc3.d/S80wildfly
/etc/rc.d/rc2.d/S80wildfly

しかし、私の質問は、サービスが失敗した場合に自動的に再起動されるようにするにはどうすればよいですか? CentOSでディレクティブを使用してファイル(例: "wildfly.service")を生成できることを読んでいます。

Restart=always
RestartSec=3

Amazon Linux で対応するガイドラインはどこにありますか?

ベストアンサー1

Amazon Linux 2

Amazon Linux バージョンが 2.0 以降の場合、デフォルトでは systemd があります。この場合、CentOSで使用されているのと同じ単位ファイルと再起動手順を使用できる必要があります。

Amazon Linux AMI

Amazon Linux AMIを実行している場合は、別々のハイパーバイザーを使用してプロセスを監視するか(poigeで説明されているように)、/ etc / inittabを使用する必要があります。

たとえば、sysvinitにプロセスを自動的に再起動させるには、/ etc / inittabに次のように追加します。

# Start and respawn process
mydaemon:2345:respawn:/path/to/executable argument1 argument2

これはsysvinitに実行レベル2、3、4、5でプロセスを開始し、終了時に再起動するように指示します。

また、起動時に実行される実行可能ファイルの周りにいくつかのコマンドを追加したい場合は、実行可能ファイルパスは、フォアグラウンドでプログラムを実行するスクリプトを参照できます。

おすすめ記事