プロセス管理 - CLIでデーモンプロセスを追加する

プロセス管理 - CLIでデーモンプロセスを追加する

プログラムで制御できるように、CLI(追加、開始、停止、削除)で制御できるプロセスマネージャを探しています。

使ってみました。https://github.com/circus-tent/circusところで、問題は、CLIから追加すると、サーバーを再起動した後にプロセスが消えることです。私はそこに質問を開いた。https://github.com/circus-tent/circus/issues/937。まだSupervisordを試していませんが、同じ問題があるようです。https://github.com/mnaberez/supervisor_twiddler/issues/4

CLIでデーモンを追加し、設定ファイルに触れることなく再起動後も変更を保持できるプロセスマネージャはありますか?ありがとうございます。

私はCentos 7を使用しており、登録されている各ユーザーに対してPHP CLIスクリプトをデーモン化したいと思います。

申し訳ありません。この内容をよりよく説明する方法がわかりません。無限ループを持つPHP CLIスクリプトがあります。新着メッセージを受信するためにスクリプトが実行中です。スクリプトは、新しく登録されたユーザー(たとえば)から開始し、php listen.php --user_id=111ユーザーが削除されると停止する必要があります。

ベストアンサー1

私が推奨するパッケージdaemontoolsはDan Bernsteinです。

これは、システム全体のサービス監督および管理サービスを提供するツールバーです。サービスの開始と停止に興味があるだけでなく、サービスデーモンの実行も監視します。何よりも、PIDファイルなしでサービスデーモンにシグナルを送信する信頼性の高いインターフェース、および自動ログファイルの回転とディスク容量の制限を備えたロギング機能を提供します。

あなたのすべての要件を満たしています。非常に安定しており、一度設定して使用方法を知ったら、メンテナンスはほとんど必要ありません。システムに問題がある場合は、daemontoolsの問題ではありません。

  1. すべての制御はコマンドラインを介して行われます。
  2. システムが再起動すると、デーモンが再起動します。
  3. デーモンはCLIで停止、開始、停止、および中断できます。
  4. また、デーモン固有のロギングも処理されます。
  5. クイック再起動(プログラムがすばやく終了する場合)を管理します。

このパッケージと基本的なデザインは頑丈です。ソースコードは何年も変更されていませんが、だまされないでください。正確なので変更する必要はありません。

私は個人的にこのパッケージを使用して、単一のシステム上で同時に何百ものデーモンを確実に制御しました。

新しいクライアントの設定は、指定されたディレクトリに制御ファイルを配置するのと同じくらい簡単です。ユーザーが介入しない限り、自動的に起動して再起動します。ファイルの外観がわかったら、テンプレートを作成するか、ファイルの生成をパラメータ化する方法を作成できます。

最善の方法は、githubのkteruからRPMソースパッケージをインポートして独自のRPMを構築することです。構築は簡単ですが、RPMを使用するとシステムの管理と複製がより簡単になります。

ホームページと文書は次の場所にあります。http://cr.yp.to/daemontools.html

CentOS 4-7 RPMソースパッケージはgithubで利用できます。 https://github.com/kteru/daemontools-rpm

ライセンスと展開の制限がなく、より柔軟なディレクトリレイアウト戦略を備えたフォークとrunit考えられるパッケージもあります。 Debianリポジトリにありますが、これがCentOSの場合であるかどうかはわかりません。daemontoolsdaemontools

おすすめ記事