2019独角兽企业重金招聘Python工程师标准>>>

安装

输入以下命令即可安装

sudo apt-get install supervisor

配置文件说明

配置文件存放目录在

cd /etc/supervisor/conf.d

一个服务对应一个.conf文件

以下是我的redis配置文件redis.conf

[program:redis]
command=/usr/local/bin/redis-server /var/lib/redis/redis.conf
autostart=true
autorestart=true
user=redis
stdout_logfile=/var/log/redis/redis-stdout.log
stderr_logfile=/var/log/redis/redis-stderr.log

program:后面表示服务名字, 会显示在管理工具里面,我给它命名为redis

command表示需要运行的命令,每次start都会执行这个命令

autostart表示服务是否需要跟随supervisor启动

autorestart表示当服务挂掉的时候是否需要自动重启

user表示使用哪个用户运行该命令,我新建了一个专门的redis来跑redis服务,一般使用自己的账号就行了,除非需要特殊权限

stdout_logfilestderr_logfile用户存储标准输出和错误的日志文件

还有一些其他的参数,如environment存储环境标量,redirect_stderrstdout_logfile_backups等参数可以参考官方的文档说明

http://supervisord.org/configuration.html

使用方法

先进入管理界面

sudo supervisorctl

输入help可以看到有很多命令

一般最常用的就是start启动服务 stop停止服务  还有update就是重新读取所有的服务的配置,如果有新增的配置文件就会增一个服务,如果服务配置有更改会重启服务(慎用,如果你改了配置文件而不想立刻重启服务)

supervisor> stop redis
redis: stopped
supervisor> start redis
redis: started
supervisor> restart redis
redis: stopped
redis: started
supervisor>

管理一组程序

有时候会有希望同时启动或者关闭一组程序,那你可以使用程序组,只需要在配置目录下面加上一个额外的配置文件即可

/etc/supervisor/conf.d

程序组的配置文件,在programs赋值为你需要管理的成员的服务名称,例如我这个组名叫test-group,它有两个成员test-group-1和test-group-2,每个成员之间用逗号隔开即可

[group:test-group]
programs=test-group-1,test-group-2

组成员的配置文件和普通成员没什么区别

[program:test-group-1]
command=xxx
autostart=true
autorestart=true
user=redis
stdout_logfile=xxx
stderr_logfile=xxx
[program:test-group-2]
command=xxx
autostart=true
autorestart=true
user=redis
stdout_logfile=xxx
stderr_logfile=xxx

启动这个组的所有服务只需要在supervisorctl下面使用命令

supervisor> start test-group:*

停止和重启以及更新等其它命令类似使用

相当于supervisorctl内部的服务名字从test-group-1变为test-group:test-group-1 ,组名冒号服务名的格式。

转载于:https://my.oschina.net/u/111188/blog/539661

supervisor来管理和监控进程相关推荐

  1. Linux 进程管理与监控(supervisor and monit)

    一.Supervisor 1.安装 宿主机环境:( Centos 6.5 ) pip2.7 install supervisor 2.创建配置文件 通过 echo_supervisord_conf 命 ...

  2. Flask部署| gunicorn、nginx部署flask项目,并用supervisor来管理进程

    本科的时候做公众号,开始提供学生教务查询服务,后端从PHP转到Python,无论是使用django还是flask,部署都没PHP那么方便,每次修改程序完,都是ps ax,然后再kill,再run.em ...

  3. python怎么打开程序管理器_Python 进程管理工具 Supervisor 使用教程

    因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,Python 进程管理工具 Supervisor 使用教程 Supervisor ...

  4. docker之使用supervisor管理多个进程

    docker题外话: centos7安装supervisor: 源码编译安装: 下载源码文件:supervisor-3.3.1.tar.gz 下载地址:https://pypi.python.org/ ...

  5. python怎么打开程序管理器_python进程管理工具supervisor的安装与使用教程

    前言 在一个分布式环境中,每台机器上可能需要启动和停止多个进程,使用命令行方式一个一个手动启动和停止非常麻烦,而且查看每个进程的状态也很不方便.如果有一个工具能够实现每台机器上多个进程的简单高效中心化 ...

  6. 进程管理命令 动态监控进程 rpm yum

    学习视频:074_韩顺平Linux_服务管理(2)_哔哩哔哩_bilibili 目录 进程管理命令基本介绍 PS命令 显示系统执行的进程 终止进程kill和killall 查看进程树pstree 服务 ...

  7. Linux实操-网络配置、进程管理、服务管理、动态监控进程、监控网络状态

    网络配置 网络配置原理图 查看网络IP和网关 查看虚拟网络编辑器 修改虚拟网卡ip地址 查看网关 linux网络环境配置 第一种方法(自动获取) 第二种方法(指定固定的 ip) 进程管理(重点) 显示 ...

  8. centos上安装supervisor来管理dotnetcore等应用程序

    supervisor 介绍: 这是一款用python编写的进程管理工具,可以守护他管理的所有进程,防止异常退出,以及提供一个可视化的web界面来手动管理,打开关闭重启各种应用,界面如下: 关于在cen ...

  9. Supervisor 后台进程管理

    文章目录 一.Supervisor组成部分 二.supervisor配置 2.1 supervisor安装 2.2 supervisor 服务端配置 2.3 supervisor监控管理 三.supe ...

  10. Supervisor 为服务创建守护进程

    今天需要再服务上部署一个.net 方面的项目:当时开启服务的命令只能在前台执行:使用nohub CMD &等放在后台开启服务都会宕机:所以搜寻了Supervisor 这个解决办法,为服务创建守 ...

最新文章

  1. Java架构演进之路
  2. 基于容器的ETCD集群脚本
  3. Java工程师成神之路 转
  4. SuperTuxKart 1.0 发布,开源赛车游戏
  5. Visual Studio 2005 Beta 2 will ship on April 25th
  6. 台湾大学林轩田机器学习基石课程学习笔记1 -- The Learning Problem
  7. 基于TensorFlow开发人脸识别
  8. ISE14.7兼容性问题集锦
  9. 数据类型之Integer与int
  10. ☆【CodeForces - 764C】Timofey and a tree (思维题,树的性质)
  11. oracle 改变受限模式,oracle之受限模式修改
  12. Intellj(IDEA)部署新项目, “warning no artifacts configured” 完美解决方案
  13. 【每天play】为了学好python需要从脚下做起,Linux基础-用户权限与组管理 P60-70
  14. 一招判断云主机IP是不是原生IP
  15. 江苏省电子税务局中文点选验证码识别研究
  16. html 闪电的动态效果图,HTML5 CSS3实现的街道雷雨闪电动画
  17. 记录一个有关QT生成PDF的过程
  18. 纪中20日c组模拟赛T1 2121. 简单游戏
  19. [附源码]计算机毕业设计JAVA社区健康服务平台管理系统lunwen
  20. 深入浅出leveldb之基础知识

热门文章

  1. DropDownList的项按字母顺序排列
  2. Layui动态修改列名
  3. 百度付费会员下载真是神速,每秒百兆
  4. LINUX虚拟机与WINDOWS主机,直接复制交换文件会有问题
  5. 蚂蚁如果上市成功,价格崩盘是必然的
  6. OpenJDK8 272在MIPS上的编译修改记录
  7. 编译出错:self-encoder.context-me_method = ME_UMH;
  8. 编译OpenJDK8:CoreLibraries.gmk:37/e_acos.obj/BuildJdk.gmk:70/Main.gmk:116/错误
  9. 晶体管制程极限之后,多层CPU是否可能?
  10. ubuntu安装Nvidia-docker2详细步骤