Supervisor:簡單強大的進程管理工具

1、介紹

Supervisor是一個Linux下用Python開發的進程管理工具,提供了web管理界面,經過配置須要監控的進程,能夠很方便的監控並管理進程,更厲害的是,當監控的進程由於各類緣由斷開的時候,能自定重啓該進程。php

2、安裝

  1. Ubuntu下安裝很是方便:html

sudo apt-get install supervisor
  1. 安裝完成後,會在 /usr/bin 下加入三個命令:linux

  • echo_superisord_conf 生成一個配置文件示例(建議僅作學習瞭解使用)web

  • supervisord 服務端服務器

  • supervisorctl 客戶端運維

3.安裝完成後,會在 /etc 目錄下建立一個 supervisor 目錄用於存放supervisor的配置文件。socket

  • /etc/supervisor工具

    • /conf.d (文件夾)學習

    • supervisord.conf (文件)測試

方便起見,把supervisor服務器相關的配置寫入supervisord.conf中,把監控各個進程的配置,按照進程名存在 conf.d 目錄下。(這個能夠在supervisord.conf中的[include]部分下配置)

3、配置

  1. 個人supervisor.conf的配置如圖:

個人supervisor.conf的配置

簡單說明:

  • [unix_http_server] 配置socket鏈接部分

  • [supervisord] 配置supervisor服務器部分

  • [supervisorctl] 配置supervisor客戶端部分

  • [inet_http_server] 配置web管理界面

  • [include] 配置須要引入的其餘配置

2.個人監控進程配置(./conf.d/test.conf)如圖:

監控進程配置(./conf.d/test.conf)

這裏是一個測試程序,目的是使用supervisor管理test.php腳本進程,使其被kill後自動重啓。

3.關於配置的詳細說明:

官網配置文檔(很全很全,還有示例)
運維生存時間——使用 supervisor 管理進程

4、測試過程

1.準備一個簡單的PHP測試腳本 test.php

<?php
while(1){
    sleep(10);
}

2.啓動supervisor

啓動supervisor

3.查看test.php腳本的進程,kill掉,再次查看test.php的狀態,已經從新啓動

圖片描述

4.查看web管理界面

圖片描述

相關文章
相關標籤/搜索