A-A+

supervisor守护进程

2016年06月16日 运维 暂无评论 阅读 129 次

supervisor守护进程,Linux进程守护,supervisor守护Linux进程

一、安装:

  • sudo pip install supervisor
  • sudo easy_install supervisor
  • apt-get install supervisor
  • yum install supervisor

二、supervisor的配置文件默认路径为:

  • /etc/supervisord.d ;存放着supervisor监管的进程的配置信息,一个进程对应一个配置文件
  • /etc/supervisord.conf ;supervisor的主配置文件,定义服务名称以及接口等等

三、如果没有配置文件,创建配置文件:

root下执行:echo_supervisord_conf > /etc/supervisord.conf

四、Supervisor配置:

用supervisor监控一个脚本进程,需要在/etc/supervisor.d中新建一个关于这个脚本进程的配置文件

示例1:

vim script.conf:

[program:srcipt]     #程序的名字,在supervisor中可以用这个名字来管理该程序。
command=scirpt.php   #启动程序的命令
autorstart=true      #设置该程序是否随supervisor的启动而启动
directory=page/to/your/        #相当于在该目录下执行程序
autorestart=true               #程序停止之后是否需要重新将其启动
startsecs=10                   #重新启动时,等待的时间
startretries=36                #重启程序的次数
redirect_stderr=true           #是否将程序错误信息重定向的到文件
stdout_logfile=/home/hadoop/supervisor_log/log.txt #将程序输出重定向到该文件
stderr_logfile=/home/hadoop/supervisor_log/err.txt #将程序错误信息重定向到该文件

示例2:

vim nginx.conf:

[program:nginx]    
command=/usr/local/nginx/sbin/nginx    ;要执行的命令,即启动需要守护的进程
priority=1                             ;优先级
numprocs=1                             ;启动的进程数目
autostart=true                         ;supervisor启动的时候是否随着同时启动
autorestart=true                       ;当supervisor程序crash的时候,这个进程会自动重启(很重要

五、supervisor提供两个命令:

  • /usr/bin/supervisord ;supervisor服务守护进程
  • /usr/bin/supervisorctl ;supervisor控制台进程

supervisorctl详细使用用法:

  1. supervisord,初始启动Supervisord,启动、管理配置中设置的进程。
  2. supervisorctl status, 查看状态
  3. supervisorctl stop programxxx,停止某一个进程(programxxx),programxxx为[program:chatdemon]里配置的值,这个示例就是chatdemon。
  4. supervisorctl start programxxx,启动某个进程
  5. supervisorctl restart programxxx,重启某个进程
  6. supervisorctl stop groupworker: ,重启所有属于名为groupworker这个分组的进程(start,restart同理)
  7. supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。(用stop停止掉的进程,用reload或者update都不会自动重启)
  8. supervisorctl reload,载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程。
  9. supervisorctl update,根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启。

Copyright:www.cplusplus.me Share、Open- C/C++程序员之家

给我留言