概要: init システムに systemd を使用する Linux ディストリビューション (Debian 8 以降、CentOS/RedHat 7 以降、Ubuntu 18 以降) の場合、特定のサービスがクラッシュすると、Plesk が systemd にこれらのサービスの再起動を指示します。

このトピックでは、クラッシュしたサービスの自動的な再起動をカスタマイズする方法を学習します。

以下のサービスは systemd 経由で自動的に再起動されます。

  • Plesk サービス(sw-cp-server、sw-engine)
  • ホスティングサービス(PHP-FMP、nginx)
  • その他の特定のサービス(Dovecot、MariaDB など)

systemd 再起動には次のような設定があり、panel.ini ファイルでカスタマイズできます。

  • respawn 設定:クラッシュしたサービスが自動で再起動するかどうかを制御します。この設定はデフォルトで有効になっています。オフにするには、respawn 設定の値を off に変更します。

  • Service.RestartSec 設定:systemd がクラッシュしたサービスを再起動するまでのダウンタイムを秒単位で指定します(デフォルトで 5 秒)。

  • Service.Restart 設定:サービスを再起動すべき条件を指定します。この設定のデフォルト値は on-failure で、ゼロ以外の終了コードで終了すると、サービスが再起動します。

    Service.Restart 設定:以下の値を受け付けます。no|always|on-success|on-failure|on-abnormal|on-abort|on-watchdog。これらの値の意味はこちらをご覧ください。

クラッシュしたサービスの systemd による自動再起動をカスタマイズするには:

  1. 変更したい systemd 設定を panel.ini ファイルの [systemd] セクションの下に追加します。例:

    [systemd]
    Service.RestartSec = 7
    Service.Restart = always
    
  2. カスタマイズした設定を有効化するには、以下のパターンでコマンドを実行します。

    /usr/local/psa/admin/sbin/register_service --enable <service>
    

    ここで <service> は、このリストの任意のサービスです。

    例:

    /usr/local/psa/admin/sbin/register_service --enable sw-engine
    

これでカスタマイズした設定が適用されます。

注釈: 特定のサービス(Fail2Ban、PostgreSQL など)には、独自の systemd 再起動設定があり、デフォルトと異なる場合があります。これらのサービスには、panel.ini でカスタマイズした再起動設定が適用されません。