背景
最近项目中需要用到Supervisor来保证进程能持续运行,Supervisor官网中是这样介绍的
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动,这样只要在supervisor的配置文件中,把要管理的进程的可执行文件的路径写进去即可。也实现当子进程挂掉的时候,父进程可以准确获取子进程挂掉的信息的,可以选择是否自己启动和报警。supervisor还提供了一个功能,可以为supervisord或者每个子进程,设置一个非root的user,这个user就可以管理它对应的进程。
配置过程
安装
服务器环境为CentOS7.2,使用wget命令下载源码安装,安装过程中可能会需要几个依赖的包,根据提示自行下载即可。
supervisor的配置
安装完成后,使用echo_supervisord_conf打印出一个配置文件的样本,样本如下
以上配置中[unix_http_server]下的file=/tmp/supervisor.sock最好改成/var/supervisor.sock,以防系统自动清除,其他配置中含有/tmp的最好也改一下,原因同上。还有一个问题就是如果想要使用web界面查看supervisor需要开启[inet_http_server]。
进程配置
|
|