linux进程管理工具:supervisor

Posted 龙叔运维

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux进程管理工具:supervisor相关的知识,希望对你有一定的参考价值。

        各种各样的程序运行情况中,或多或少都会有一些服务是用脚本跑起来的,我们通常的做法一般都是让其在后台运行,例如使用nohup,&等命令。

        而这样的方法并不十分可靠,所以在这里推荐一个非常好用的进程管理工具:supervisor,它可以很可靠的管理linux上的各种进程,甚至当进程挂掉,会帮你自动拉起来。

1、安装

yum install supervisor

或者

apt-get install supervisor
 

2、配置

supervisor有两类配置文件,主配置文件和进程配置文件。

2.1、主配置文件

        默认路径:/etc/supervisord.conf

        这个主配置文件一般不用动,需要管理进程的话,给进程单独创建一个配置文件就好。

 

 2.2、进程配置文件

        默认路径:/etc/supervisord.d/*.ini (默认是ini后缀,可以在主配置文件中修改)

        每个进程的管理配置可以在主配置文件中直接添加,但是建议每个进程单独创建一个配置文件,这样方便管理维护

        举例 

[program:test]【项目名,进程名】
command = java -jar /data/test/test-service-server-test.jar  【运行进程的命令】
directory = /data/test 【进程文件目录】
autostart=true【是否随着supervisor启动而启动,默认true】 
autorestart=ture 【是否自动启动,程序退出会自动拉起】
user = root【运行进程的用户】
startsecs = 3【进程启动多少秒之后,如果进程状态是running,则我们认为启动成功,默认值为1】
redirect_stderr = true【把stderr重定向到stdout,默认 false】
stdout_logfile_maxbytes = 50MB【stdout日志文件大小,默认 50MB】
stdout_logfile_backups = 10【stdout日志文件备份数】
stdout_logfile = /data/test/logs/test.log 【日志输入路径】

3、使用

3.1、启动

supervisord -c /etc/supervisord.conf (-c 指定主配置文件)

centos服务器还可以如下操作:

systemctl start supervisord.service (加载默认配置文件 /etc/supervisord.conf

systemctl stop supervisord.service (停止)

systemctl enable supervisord.service (加入开机启动)

3.2、管理进程命令

supervisorctl status        //查看所有进程的状态
supervisorctl stop test   //停止test (如果是all  则是操作全部管理的进程)
supervisorctl start test   //启动test(如果是all  则是操作全部管理的进程)
supervisorctl restart test       //重启test(如果是all  则是操作全部管理的进程)
supervisorctl update        //配置文件修改后使用该命令加载新的配置
supervisorctl reload        //重新启动配置中的所有程序

 

 

4、图形界面

        在主进程配置文件中配置下面内容(默认是注释掉的),然后重启就可以使用图形管理界面来管理进程了。

[inet_http_server] 
port=0.0.0.0:9001 
username=admin
password=admin

        然后访问 http:IP:9001  就可以了

欢迎关注我的公众号:龙叔运维

持续分享运维经验

 

以上是关于linux进程管理工具:supervisor的主要内容,如果未能解决你的问题,请参考以下文章

linux进程管理工具:supervisor

Linux Supervisor的安装与使用入门

linux 使用进程管理工具 supervisor

Linux Supervisor的安装与使用入门

[转]Linux后台进程管理利器:supervisor

Linux Supervisor的安装与使用入门---SuSE