Linux 进程管理工具 supervisor 的安装及使用教程

发布于 2020-02-03

Linux 进程管理工具 supervisor 的安装及使用教程

Supervisor 是用 Python 实现的一个进程管理工具,可以很方便用来管理进程,包括启动、关闭及重启等操作,经常被用来监听 web 服务,一旦服务挂掉,可以让服务自动重启。Supervisor 管理的程序都必须是非 daemon 程序。

使用方法

安装supervisor

$ yum install supervisor

配置supervisor

$ vi /etc/supervisord.conf

将文件末尾:

[include]
files = supervisord.d/*.ini

修改为:

[include]
files = supervisord.d/*.conf

新建文件

为了方便管理,在自定义配置文件目录下,创建项目的配置文件。

$ cd /etc/supervisord.d/
$ vim leanote.conf #新建一个自定义配置文件

其中内容为:

[program:leanote]                    #程序名
command=bash /opt/leanote/run.sh     #需要执行的命令
autostart=true                       #是否跟随supervisor一起启动
autorestart=true                     #如果该程序挂了,是否重新启动
startsecs=10                         #自动重启间隔
stdout_logfile=/var/log/leanote.log  #终端标准输出重定向文件
stdout_logfile_maxbytes=2MB          #文件最大大小
stdout_logfile_backups=30            #文件备份最大数量
stdout_capture_maxbytes=2MB
stderr_logfile=/var/log/leanote.log  #终端错误输出重定向文件
stderr_logfile_maxbytes=2MB
stderr_logfile_backups=30
stderr_capture_maxbytes=2MB

启动服务

使用默认配置:

$ supervisord

或者指定配置文件:

$ /usr/bin/supervisord -c /etc/supervisord.conf

设置为开机自动启动

$ systemctl enable supervisord.service

一些常用命令

启动某个进程(假设进程名为 leanote)

supervisorctl stop leanote

停止某个进程(假设进程名为 leanote)

supervisorctl stop leanote

重启某个进程(假设进程名为 leanote)

supervisorctl restart leanote

停止全部进程

supervisorctl stop all

重新载入

supervisorctl reload

更新

supervisorctl update

结束语

Supervisord 是一个非常好用的进程管理工具,使用 Supervisord 有一个前提条件,那就是进程必须以非 daemon 的方式启动。例如:管理 nginx 的话,必须在 nginx 的配置文件里添加一行设置 daemon off,让 nginx 以非 daemon 的方式启动。

喜欢 0
奋楫笃行,臻于至善!

相关文章

通过脚本命令实现数据库定时自动备份

备份网站数据有很多种方法,今天为大家分享一下最常用的脚本备份命令。 编写脚本backup.sh #!/bin/bash tool=/usr/bin/mysqldump dd=`date +%Y%m%d...
阅读全文

Linux 自定义登录提示信息

想不想你的Linux登录界面个性一些?可以通过修改/etc/motd文件或/etc/issue文件的方式实现。/etc/issue文件的使用方法与/etc/motd文件相差不大,它们主要区别在于:当一...
阅读全文

Linux 查看端口占用情况

我们在使用一个新的端口时,有时候会发现它已经已经被其他进程占用了,在linux中如何查询端口被占用的情况呢,可以使用 lsof 和 netstat 命令。 1、lsof -i:端口号 用于查看某一端口...
阅读全文

Linux 的 chattr 命令详解

有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了。chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux...
阅读全文

在 Ubuntu / Debian 中用 UFW 配置防火墙

之前整理过一篇在 CenterOS 下如何开启防火墙与开放端口的文章,除了 CenterOS ,Ubuntu 也是我们经常使用的 Linux 操作系统,那么在 Ubuntu下该如何开启防火墙与开放端口...
阅读全文

Linux vi/vim 常用命令

之前发表过一篇Linux vi/vim 命令大全的文章,但由于里面的命令很多,没法一一记忆下来,本文收集了一些常用但经常忘记的命令,方便使用时查询。 Vim快速移动光标至行首和行尾 1、快速移动光...
阅读全文

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注