Linux プロセス管理ツール スーパーバイザーのインストールと設定のチュートリアル

Linux プロセス管理ツール スーパーバイザーのインストールと設定のチュートリアル

環境: CentOS 7

公式ドキュメント: http://supervisord.org/

インストール

# yum インストール -y epel-release
# yum install -y スーパーバイザー

起動する

# supervisord -c /etc/supervisord.conf
# ps -ef | grep スーパーバイザー
ルート 19703 1 0 17:32 ? 00:00:00 /usr/bin/python /usr/bin/supervisord -c /etc/supervisord.conf
root 19715 19495 0 17:32 pts/0 00:00:00 grep --color=auto スーパーバイザー

設定手順

設定ファイルのアドレス: /etc/supervisor.conf

設定ファイルがない場合は、次のコマンドで生成できます。

echo_supervisord_conf > /etc/supervisord.conf

設定ファイルの詳細:

[unix_http_サーバー]
file=/tmp/supervisor.sock ;UNIXソケットファイル、supervisorctlが使用する
;chmod=0700 ;ソケットファイルモード、デフォルトは0700
;chown=nobody:nogroup ;ソケットファイルの所有者、形式: uid:gid

;[inet_http_server] ;Web管理インターフェースを提供するHTTPサーバー
;port=127.0.0.1:9001 ;Web管理バックエンドのIPとポート。パブリックネットワークに公開されている場合は、セキュリティに注意する必要があります
;username=user ;管理バックエンドにログインするためのユーザー名
;password=123 ;管理バックエンドにログインするためのパスワード

[監督者]
logfile=/tmp/supervisord.log; ログファイル、デフォルトは $CWD/supervisord.log
logfile_maxbytes=50MB; ログ ファイルのサイズが制限を超えるとローテーションされます。デフォルト値は 50MB です。0 に設定すると、サイズに制限がないことを意味します。
logfile_backups=10; ログ ファイルのバックアップのデフォルト数は 10 です。0 に設定すると、バックアップは行われません。
loglevel=info; ログレベル、デフォルトは info、その他: debug、warn、trace
pidfile=/tmp/supervisord.pid ;pidファイル
nodaemon=false; フォアグラウンドで起動するかどうか。デフォルトは false で、デーモンモードで起動します。
minfds=1024; 開くことができるファイル記述子の最小数。デフォルトは1024です。
minprocs=200; 開くことができるプロセスの最小数。デフォルトは200です。

[スーパーバイザーctl]
serverurl=unix:///tmp/supervisor.sock ; UNIXソケット経由でsupervisordに接続します。パスはunix_http_server部分のファイルと一致します。
;serverurl=http://127.0.0.1:9001 ; HTTP経由でsupervisordに接続

; [program:xx]は管理対象プロセスの設定パラメータ、xxはプロセス名です
[プログラム:xx]
command=/opt/apache-tomcat-8.0.35/bin/catalina.sh run ; プログラム起動コマンド
autostart=true; supervisord が起動すると自動的に起動します
startsecs=10; 起動後10秒経過しても異常終了がない場合は、プロセスが正常に起動したことを意味します。デフォルトは1秒です。
autorestart=true; 終了後にプログラムを自動的に再起動します。オプションの値: [unexpected、true、false]、デフォルトはunexpectedで、予期せず終了した場合にのみプロセスが再起動されます。
startretries=3 ; 起動に失敗した場合の自動再試行回数。デフォルトは 3 です。
user=tomcat; プロセスを開始するために使用されるユーザー。デフォルトはrootです。
priority=999; プロセスの起動優先度。デフォルトは999。値が小さいほど優先度は高くなります。
redirect_stderr=true; stderr を stdout にリダイレクトします。デフォルトは false
stdout_logfile_maxbytes=20MB; stdout ログ ファイルのサイズ、デフォルトは 50MB
stdout_logfile_backups = 20 ; stdout ログファイルのバックアップ数。デフォルトは 10 です。
; stdout ログ ファイル。指定されたディレクトリが存在しない場合は正常に起動できないため、手動でディレクトリを作成する必要があります (supervisord はログ ファイルを自動的に作成します)。
stdout_logfile=/opt/apache-tomcat-8.0.35/logs/catalina.out
stopasgroup=false; デフォルトはfalseです。プロセスが強制終了されたときに、子プロセスを含むこのプロセスグループに停止信号を送信するかどうか
killasgroup=false; デフォルトは false で、子プロセスを含むプロセス グループに kill シグナルを送信します。

; その他の設定ファイルが含まれています
[含む]
files = supervisord.d/*.ini ; .iniで終わる1つ以上の設定ファイルを指定できます。

Tomcat テストの設定

: := _tomcat.ini ファイルのパス

[プログラム:tomcat]
コマンド=/opt/apache-tomcat-8.0.44/bin/catalina.sh 実行
stdout_logfile=/opt/apache-tomcat-8.0.44/logs/catalina.out
自動起動=true
自動再起動=true
開始秒数=5
優先度=1
stopasgroup=true
キラグループ=true

スーパーバイザーを再起動

supervisord -c /etc/supervisord.conf

チェック

[root@gr5bm1tynui4toof-0622769 システム]# supervisorctl
tomcat 実行中 pid 21609、稼働時間 0:25:15

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux運用保守ツールSupervisor(プロセス管理ツール)のインストールと使用
  • Linux でのプロセスデーモン スーパーバイザーのインストール、構成、および使用
  • Supervisor のインストールと構成の詳細な説明 (Linux/Unix プロセス管理ツール)
  • PHPプログラマーはスーパーバイザーを使用してデーモンプロセスを実装するLinuxシリーズをプレイします
  • スーパーバイザーウォッチドッグの使い方を3分で学ぶ

<<:  MySQL の null (IFNULL、COALESCE、NULLIF) に関する知識ポイントのまとめ

>>:  Vueテクノロジーに基づく再帰コンポーネントの実装方法

推薦する

Vue2.0+ElementUI+PageHelperで実装されたテーブルページング機能

序文最近、いくつかのフロントエンド プロジェクトに取り組んでおり、ページにいくつかのテーブルを表示す...

docker run 起動パラメータ コマンドを表示する方法 (推奨)

runlike を使用してコンテナの docker run 起動パラメータを表示します。 pipを...

Windows Server 2008 R2 リモート デスクトップのポート 3389 を変更する方法

Windows サーバー リモート デスクトップのデフォルトのポート番号は 3389 です。職場でサ...

Mac VMware Fusion CentOS7 静的 IP 構成チュートリアル図

目次CentOS7をインストールする静的IPの設定viを使用してファイルを編集するCentOS7をイ...

小規模プロジェクトで Vue が点滅するのを防ぐ方法

まとめHTML: 要素と v-cloak CSS: [v-cloak]{表示: なし}プロセスページ...

ボタンの権限判定を実装するためのVueカスタムv-has命令

アプリケーションシナリオバックグラウンド管理システムを例にとると、各ユーザーには異なるボタン権限があ...

CSS で平均レイアウトを実現するためにネガティブ マージン テクノロジーを使用する方法

通常、IE ブラウザでの CSS の互換性の問題を解決するために、フロート レイアウトが使用されます...

MYSQL ログとバックアップおよび復元の問題の詳細な説明

この記事では、参考までにMYSQLログとバックアップとリストアについて紹介します。具体的な内容は以下...

MySQL マスタースレーブ遅延問題の解決方法

今日は、マスタースレーブ遅延が発生する理由とその対処方法について説明します。しっかり座って出発の準備...

MySQL 5.7.17 とワークベンチのインストールと設定のグラフィックチュートリアル

この記事では、MySQL 5.7.17ワークベンチのインストールと設定方法を参考までに紹介します。具...

Linux環境にJDK1.8をインストールする

目次1. インストール環境2. インストール手順ステップ1: インストールパッケージをダウンロードす...

Web面接におけるJS事前解析と変数プロモーションの違い

目次事前分析とは何ですか?変数と関数の準備の違いvar 変数の繰り返し宣言変数と関数の昇格の優先順位...

Vue で rem 適応を使用する方法

1. 開発環境vue 2. コンピュータシステム Windows 10 Professional E...

MYSQL での Truncate の使用法の詳細な説明

この記事のガイド: テーブル内のデータを削除するには、削除と切り捨ての 2 つの方法があります。TR...