Linux进程管理工具 Supervisord 的安装 及 入门教程
Supervisor是一个进程管理工具,官方的说法:
用途就是有一个进程需要每时每刻不断的跑,但是这个进程又有可能由于各种原因有可能中断。当进程中断的时候我希望能自动重新启动它,此时,我就需要使用到了Supervisor
主要就两个命令:
- supervisord : supervisor的服务器端部分,启动 supervisor 就是运行这个命令
- supervisorctl:启动 supervisor 的命令行窗口。
安装(CentOS):
方式一:
yum -y install python-setuptools
easy_install supervisor
方式二:
如果 easy_install 不好使就从官方下载:
wget https://pypi.python.org/packages/source/s/supervisor/supervisor-3.1.3.tar.gz
然后通过 python 安装:
tar zxf supervisor-3.1.3.tar.gz
cd supervisor
python setup.py install
成功安装后可以登录 python 控制台输入 import supervisor 查看是否能成功加载。
生成配置文件(supervisord.conf):
echo_supervisord_conf > /etc/supervisord.conf
修改配置文件:
在 supervisord.conf 最后增加(分号后边的表示注释,可以不写):
[program:bandwidth]
command=python26 /usr/local/bin/bandwidth.sh ;需要执行的命令wd)
user=root ;(default is current user, required if root)
autostart=true ;start at supervisord start (default: true)
autorestart=true ;whether/when to restart (default: unexpected)
startsecs=3 ;number of secs prog must stay running (def. 1)
stderr_logfile=/tmp/bandwidth_err.log ;redirect proc stderr to stdout (default false) 错误输出重定向
stdout_logfile=/tmp/bandwidth.log ;stdout log path, NONE for none; default AUTO, log输出
(更多配置说明请参考:http://supervisord.org/configuration.html)
运行命令:
启动 supervisor
supervisord -c /etc/supervisord.conf
打开命令行
[root@52php bin]# supervisorctl status
bandwidth RUNNING pid 2423, uptime 0:06:35
[root@iZ2365j7l5bZ bin]# supervisorctl help
default commands (type help <topic>):
=====================================
add clear fg open quit remove restart start stop update
avail exit maintail pid reload reread shutdown status tail version
ctl中: help // 查看命令
ctl中: status // 查看状态
特别注意:
如果修改了 /etc/supervisord.conf,需要执行 supervisorctl reload 来重新加载配置文件,否则不会生效。。。
常用命令:
- supervisord,初始启动Supervisord,启动、管理配置中设置的进程。
- supervisorctl stop programxxx,停止某一个进程(programxxx),programxxx为[program:beepkg]里配置的值,这个示例就是beepkg。
- supervisorctl start programxxx,启动某个进程
- supervisorctl restart programxxx,重启某个进程
- supervisorctl stop groupworker: ,重启所有属于名为groupworker这个分组的进程(start,restart同理)
- supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
- supervisorctl reload,载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程。
- supervisorctl update,根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启。
实例:Supervisord 管理 beego 系统
修改配置
/etc/supervisord.conf[include]
files = /etc/supervisord.conf.d/*.conf新建管理的应用
cd /etc/supervisord.conf.d
vim beepkg.conf配置文件:
[program:beepkg]
directory = /opt/app/beepkg
command = /opt/app/beepkg/beepkg
autostart = true
startsecs = 5
user = root
redirect_stderr = true
stdout_logfile = /var/log/supervisord/beepkg.log
Linux进程管理工具 Supervisord 的安装 及 入门教程的更多相关文章
- Linux进程管理工具Supervisor的安装配置
目录 Linux进程管理工具Supervisor的安装配置 简介 安装Python包管理工具 安装Supervisor 配置 配置文件参数说明 配置进程管理 启动supervisor 控制进程 交互终 ...
- Linux 进程管理工具 supervisord 安装及使用
Supervisor是用Python实现的一款非常实用的进程管理工具 1.安装过程非常简单 安装python 安装meld3-0.6.8.tar.gz 安装supervisor-3.0a12.tar. ...
- 2017.7.21 linux下进程管理工具supervisord的安装与使用
参考来自:http://blog.haohtml.com/archives/15145 0 操作环境 1 supervisord的介绍 Supervisord是用Python实现的一款非常实用的进程管 ...
- Linux进程管理工具
Linux进程管理工具 Htop yum install htop 参考帮助: http://blog.csdn.net/skh2015java/article/details/53173896 Li ...
- Linux进程管理工具——supervisor
介绍 Supervisord是用Python实现的一款非常实用的进程管理工具 安装 这里用源码 supervisor-.tar.gz .tar.gz cd supervisor- sudo pytho ...
- 进程管理工具-Supervisord 使用
简介 Supervisor 是一个用 Python 写的进程管理工具,可以很方便的用来在 UNIX-like 系统(不支持 Windows)下启动.重启(自动重启程序).关闭进程(不仅仅是 Pytho ...
- Linux进程管理工具之ps
1.PS进程管理指令 ps -aux USER:用户名称 PID:进程号 %CPU:进程占用CPU的百分比 %MEM:进程占用物理内存的百分比 VSZ:进程占用的虚拟内存大小(单位:KB) RS ...
- 进程管理工具之supervisor[安装并使用]
在Linux服务器中,有时候我们需要一个进程需要可靠的在后台运行,并且能够监控进程状态,在意外结束时能够自动重启等.此时就可以使用supervisor. supervisor 是使用Python开发的 ...
- Linux进程管理工具Supervisor
简述 Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启. 它是通过fork/exec的方式把这些被管 ...
随机推荐
- 由于找不到MSVCP20.dll,无法继续执行代码
系统:win10 专业版,刚升级win10没几天 mysql 5.7.21 解压安装,初始化时报错,错误如图: 一.查找错误原因 参考:MySQL安装使用遇到的问题, 找到微软中文官方网站,搜索 ms ...
- parallelogram
The parallelogram law in inner product spaces Vectors involved in the parallelogram law. In a normed ...
- Python人工智能之图片识别,Python3一行代码实现图片文字识别
1.Python人工智能之图片识别,Python3一行代码实现图片文字识别 2.tesseract-ocr安装包和中文语言包 注意:
- Useful Online Resources for New Hackers
出处:https://www.hackerone.com/blog/resources-for-new-hackers HackerOne喜欢花时间与活跃的黑客和有兴趣学习如何破解的人交谈. 就在上周 ...
- VAE(Variational Autoencoder)的原理
Kingma, Diederik P., and Max Welling. "Auto-encoding variational bayes." arXiv preprint ar ...
- 【Linux系统编程应用】Linux音频编程基础(一)【转】
转自:https://blog.csdn.net/dengjin20104042056/article/details/52435290 一.数字音频 音频信号是一种连续变化的模拟信号,但计算机只能处 ...
- tomcat报错:java.net.SocketException: Permission denied["http-nio-80"]
tomcat报错:java.net.SocketException: Permission denied["http-nio-80"] 问题:使用非root账户tomcat启动to ...
- 环境变量GOBIN导致GoClipse运行出现异常
Windows 10家庭中文版,go version go1.11 windows/amd64, Eclipse IDE for C/C++ Developers Photon Release (4. ...
- axios笔记
参考:http://www.cnblogs.com/Upton/p/6180512.html https://cloud.tencent.com/developer/article/1098141 ...
- Java 基本语法---流程控制
Java 基本语法---流程控制 0. 概述 三大流程控制语句:顺序.选择.循环. 选择结构: if 结构,if - else结构: 多重 if - else 语句 ; 嵌套 if - else 语句 ...