linux 使用进程管理工具 supervisor
1.supervisor是使用python进行开发的运行在linux服务器上的进程管理工具
老版本的supervisor需要运行在python2环境,如果需要使用supervisor管理python3的项目,需要借助于虚拟环境
事实上现在已经支持Python3了 https://github.com/Supervisor/supervisor 2.安装supervisor:
pip install supervisor python3环境安装:
pip3 install git+https://github.com/Supervisor/supervisor
3.生成配置文件:echo_supervisord_conf > /etc/supervisord.conf, 当进行到这一步时,终端提示需要
apt install supervisor,如果有该提示,执行命令进行安装即可,如果没有提示则忽略 4.编辑配置文件:vim /etc/supervisord.conf 1)修改最后两行,去掉前面的分号。
[include]
files = /etc/supervisord/*.conf files:管理进程的配置文件的路径,每一个进程都需要单独配置一个配置文件,这里需要根据实际情况配置 2)开启web控制台:找到如下几行,去掉注释 [inet_http_server] ; inet (TCP) server disabled by default
port=0.0.0.0:9001 ; ip_address:port specifier, *:port for all iface
username=admin ; default is no username (open server)
password=123456 ; default is no password (open server) 配置了这些参数以后就可以使用相应的用户名称和密码通过访问指定的ip和端口,从而通过web界面,管理进程,查看日志等 5.添加管理进程的目录
mkdir -p /etc/supervisord/
这里的目录需要和配置文件 supervisord.conf 里的 files 参数保持一致 6.新添加一个test1进程,进行管理
vim /etc/supervisord/test1.conf
路径需要和配置文件 supervisord.conf 里的 files 参数保持一致 [program:test1]
user=root
directory=/usr/local/test/
command=/usr/bin/python /usr/local/test/test.py
autostart=true
autorestart=true
loglevel=debug
log_stderr=true
stdout_logfile=/var/log/test1.log
redirect_stderr=true 说明:
1)每个进程的配置文件都必须拥有一个唯一的program名称
2)command 就是需要在终端进行输出的命令,通过命令启动进程
3)当有多个进程时,就需要定义多个进程管理配置文件 6.启动supervisor supervisord -c /etc/supervisord.conf 当启动supervisor管理工具时,也会同时启动所有添加到了管理中进程 7.查看添加到管理中的进程的状态
supervisorctl status 可以查看到每一个进程名称(program名称)所对应的状态 8.根据进程名称关闭,启动,重启进程
supervisorctl stop test1
supervisorctl start test1
supervisorctl restart test1 9.关闭supervisor
ps -ef | grep super 然后 kill -9 进程号 杀死进程 注意:
直接杀掉supervisor的主进程,被管理的进程仍然运行状态,所以记得先stop被管理的进程。
如果修改了任意一个配置文件,都需要重启supervisor。
linux 使用进程管理工具 supervisor的更多相关文章
- Linux之进程管理工具supervisor
环境:CentOS 7官方文档:http://supervisord.org/ 安装 # yum install -y epel-release # yum install -y supervisor ...
- Linux进程管理工具Supervisor的安装配置
目录 Linux进程管理工具Supervisor的安装配置 简介 安装Python包管理工具 安装Supervisor 配置 配置文件参数说明 配置进程管理 启动supervisor 控制进程 交互终 ...
- 进程管理工具supervisor
1. 简介 supervisor有两个组件:supervisord和supervisorctl,组成了client/server结构. supervisord负责读入配置文件,然后supervisor ...
- Supervisor安装与配置(Linux/Unix进程管理工具)
原文链接:http://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyth ...
- Supervisor(Linux/Unix进程管理工具)安装与配置
参考链接:https://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyt ...
- Linux进程管理工具——supervisor
介绍 Supervisord是用Python实现的一款非常实用的进程管理工具 安装 这里用源码 supervisor-.tar.gz .tar.gz cd supervisor- sudo pytho ...
- Python 进程管理工具 Supervisor 使用教程
Supervisor 是基于 Python 的进程管理工具,只能运行在 Unix-Like 的系统上,也就是无法运行在 Windows 上.Supervisor 官方版目前只能运行在 Python 2 ...
- 2017.7.21 linux下进程管理工具supervisord的安装与使用
参考来自:http://blog.haohtml.com/archives/15145 0 操作环境 1 supervisord的介绍 Supervisord是用Python实现的一款非常实用的进程管 ...
- 进程管理工具Supervisor(一)简介与使用
Supervisor是用Python开发的一套client/server架构的进程管理程序,能做到开机启动,以daemon进程的方式运行程序,并可以监控进程状态等等. linux进程管理方式有传统的r ...
随机推荐
- service层代码相互调用, 导致spring循环依赖,设计上的优化
管理员创建用户需要发送激活邮件, 而发送激活邮件的时候需要判断发件人是不是合法的用户, 因此设计到一个循环依赖的问题 //UserService @Service class UserService{ ...
- 【WebService】WebService之CXF和Spring整合(六)
前面介绍了WebService与CXF的使用,项目中我们经常用到Spring,这里介绍CXF与Spring整合 步骤 1.创建一个Maven Web项目,可以参照:[Maven]Eclipse 使用M ...
- [C#]this.Invoke和this.BeginInvoke的区别
private void button1_Click(object sender, EventArgs e) { "; this.Invoke(new EventHandler(delega ...
- MyBatis 实现新增
MyBatis实现新增 1.概念学习:(角度不同) 1.1 功能:从应用程序角度出发,软件具有哪些功能 1.2 业务:完成功能时的逻辑,对应Service中一个方法 1.3 事务:从数据库角度出发,完 ...
- 69.查看APP沙盒缓存的内容文件
第一步:链接真机设备,点击Xcode ,按command+shift+2 弹出电脑所运行的APP列表 第二步:选中你需要查看的APP,点击最下面! 类似于设置图标的按钮! 点击第二个Download ...
- Bootstrap之javascript组件
一 模态框 模态框放在body标签里面的,是body标签的子元素 静态实例: <div class="modal fade" tabindex="-1" ...
- 2019.01.04 bzoj2962: 序列操作(线段树+组合数学)
传送门 线段树基础题. 题意:要求维护区间区间中选择ccc个数相乘的所有方案的和(c≤20c\le20c≤20),支持区间加,区间取负. 由于c≤20c\le20c≤20,因此可以对于每个线段树节点可 ...
- 03 编写URL规则
3-1 URL编写规则 # 在每个App中设置独立的静态资源和模板文件并添加一个空白内容的urls.py文件. # 当程序收到用户请求的时候,首先在根目录的urls.py查找该URL属于哪个APP,然 ...
- 【MVC】bootstrap-paginator 分页
[MVC]bootstrap-paginator 分页http://www.cnblogs.com/stoneniqiu/p/4000041.htmlhttp://www.cnblogs.com/Le ...
- 分分钟搞懂rank() over(partition by)的使用
一.rank() over(partition by ...order by) 解释:partition by用于给结果集分组,如果没有指定那么它把整个结果集作为一个分组. 二.语法:ROW_NUM ...