1.安裝
宿主機環(huán)境:(Centos7)
宿主機環(huán)境
#yum install python-setuptools
yum install python-setuptools
#easy_install supervisor
easy_install supervisor
測試安裝是否成功:
#echo_supervisord_conf
echo_supervisord_conf
2.創(chuàng)建配置文件
創(chuàng)建supervisor配置文件目錄/etc/supervisor/
#mkdir -m 755 -p /etc/supervisor/
mkdir -m 755 -p /etc/supervisor/
創(chuàng)建主配文件supervisord.conf
#echo_supervisord_conf > /etc/supervisor/supervisord.conf
echo_supervisord_conf > /etc/supervisor/supervisord.conf
創(chuàng)建項目配置文件目錄
# mkdir -m 755 conf.d
# mkdir -m 755 conf.d
3.調(diào)試
在/home/k1ic/supervisor_simple 目錄下創(chuàng)建test.c
test.c
編譯為test #gcc -o test test.c
gcc -o test test.c
在/etc/supervisor/conf.d 目錄下創(chuàng)建 test.ini
test.ini
在主配文檔中引入test.ini
files = ./conf.d/*.ini
啟動supervisor
# supervisord -c /etc/supervisor/supervisord.conf
supervisord -c /etc/supervisor/supervisord.conf
pstree -p | grep supervisord
查看supervisord.log發(fā)現(xiàn)program test已啟動
# cat /tmp/supervisord.log
# cat /tmp/supervisord.log
用 supervisorctl 查看已經(jīng)被監(jiān)控的program(注:直接用 #supervisorctl 會提示:http://localhost:9001 refused connection)
#supervisorctl -c /etc/supervisor/supervisord.conf
supervisorctl -c /etc/supervisor/supervisord.conf
增加一例監(jiān)控php腳本
創(chuàng)建skud.ini
skud.ini
[program:skuld]
在/home/k1ic/supervisor_simple目錄下創(chuàng)建skuld.php
skuld.php
重啟監(jiān)控服務
reload
pstree
================分割線================
這才是重點^^
0. supervisor 比較適合監(jiān)控業(yè)務應用,且只能監(jiān)控前臺程序,php fork方式實現(xiàn)的daemon不能用它監(jiān)控亭珍,否則supervisor> status 會提示:BACKOFF? Exited too quickly (process log may have details)
BACKOFF? Exited too quickly (process log may have details)
cat supervisord.log
1.每次修改配置文件后需進入supervisorctl午阵,執(zhí)行reload凫碌, 改動部分才能生效
reload
2.兩個命令
supervisord : supervisor的服務器端部分邻吭,用于supervisor啟動
supervisorctl:啟動supervisor的命令行窗口格嗅,在該命令行中可執(zhí)行start捏雌、stop臭脓、status、reload等操作腹忽。
3.web管理界面
將supervisord.conf中[inet_http_server]部分做相應配置来累,在supervisorctl中reload即可啟動web管理界面
[inet_http_server]
http://107.170.249.52:9001/?message=Page%20refreshed%20at%20Tue%20Sep%2029%2016%3A20%3A40%202015
參考文獻:
Supervisor的安裝與使用入門
http://fukun.org/archives/07102224.html
按需講解之Supervisor
http://www.cnblogs.com/yjf512/archive/2012/03/05/2380496.html
supervisord entered FATAL state, too many start retries too quickly錯誤處理
http://beginman.cn/linux/2015/09/25/error-about-supervisord/
Supervisor監(jiān)控PHP進程
http://www.phpddt.com/php/supervisor.html
關于進程監(jiān)控及自動啟動
http://www.vimer.cn/2013/07/%E5%85%B3%E4%BA%8E%E8%BF%9B%E7%A8%8B%E7%9B%91%E6%8E%A7%E5%8F%8A%E8%87%AA%E5%8A%A8%E5%90%AF%E5%8A%A8.html
Supervisor學習
http://beginman.cn/linux/2015/04/06/Supervisor/
通過進程模型進行擴展
http://12factor.net/zh_cn/concurrency