使用supervisor管理进程

马谦马谦马谦 2017年9月23日20:31:47 2
文章最后编辑于:2017-11-30 22:37:12

一、摘要

supervisor是一个进程管理工具,刚工作就接触到了,不过当时因为被脚本封装好了,所以都是直接用,对它的理解也仅仅是知道了有这么一个东西, 想着有机会了再深入了解。

一早因为机缘巧合要把oss挂载到主机,挂载的时候要用到supervisor,本来打算按照教程先搞一个,没想到中途遇到麻烦,走不下去了。没办法,只能先停下来好好钻研一下了,反正以后也要用到,于是就开始了一天的supervisor之旅。

supervisor是一个用python写的进程管理工具,可以很方便的用来启动、重启、关闭进程。除了对单个进程的控制,还可以同时启动、关闭多个进程,比如很不幸的服务器出问题导致所有应用程序都被杀死,此时可以用 supervisor 同时启动所有应用程序而不是一个一个地敲命令启动。

二、安装方法

安装有两种方式:

一种是直接使用yum命令安装,这种安装的好处是安装后不用设置链接,直接就能使用命令。

第二种是使用python的pip工具安装,然后手动创建软链接:

三、运行

supervisor包含三大部分:supervisord supervisorctl 和我们的应用程序,supervisord是服务端,supervistorctl 是客户端。

在命令行输入supervisord即可运行服务端,通常会加上-c选项来指定配置文件目录,服务端开启后使用supervisorctl控制客户端,用法如下:

四、服务端配置

默认配置

安装后会有个默认配置文件,位于/usr/local/python27/bin/目录下的echo_supervisord_conf

运行以重定向到默认的配置文件/etc/supervisord.conf中:

配置说明

默认的配置为有很多,但是默认情况下需要用的很少,有一些需要我们去修改:

五、进程客户端的配置

详见:supervisor子进程的配置文件

本文共执行44次查询,耗时0.272秒!
马谦马谦马谦

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: