进程管理软件supervisor安装使用
特性
Supervisor是一个在类Unix系统上管理进程的软件, 它提供客户/服务器的管理模式。 有如下的特性:
-
简单
它通过简单格式的配置文件配置 supervisor, 通过 start、stop、restart、status简单命令管理进程,并方便的配置进程的输出日志文件,切割日志文件。
-
中心化
可通过配置以提供本地命令、远程执行命令或通过Web页面执行命令
-
高效
Supervisor通过fork / exec启动子进程,子进程不用守护。当子进程终止时,操作系统会立即向Supervisor发送信号,这样Supervisor实时掌握子进程状态,与某些依赖麻烦的PID文件和定期轮询以重新启动失败进程的解决方案不同。
-
可扩展
Supervisor有一个简单的事件通知协议,使用该协议可以使用任何编程语言编写程序对其进行监视,具有用于控制的XML-RPC接口。Python开发人员可以方便地利用扩展点构建。
-
兼容性好
除Windows之外,Supervisor几乎适用于所有其它操作系统。 它已在Linux,Mac OS X,Solaris和FreeBSD上经过测试和支持。 它完全用Python编写,因此安装不需要C编译器。
-
久经考验
Supervisor已经存在了很多年,并且已经在许多服务器上使用。
安装
在联网的环境下可以通过安装 pip install 安装(pip 是python 包安装管理工具,它的使用安装请参考 pip 安装使用)
pip install supervisor
需要root用户权限才能使用pip成功安装Supervisor
在联网环境下不通过 pip 安装
如果你系统没有安装 pip ,并且也不想在安装 pip ,可以通过下载Supervisor的发布的包手动安装,下载地址PiPy,当前realse版本和历史版本都能下载到。解压tar -xzvf supervisor-x.x.x.tar.gz 下载的包文件然后进入解压后文件夹并运行python setup.py install,安装脚本会访问网络下载Supervisor 需要的文件最终安装好Supervisor
注意 新版本已不支持python 2了,请使用python 3, 另外需要root 权限才可以使用命令 python setup.py install 安装
在无互联网环境下安装
首先在一台能联网的计算机下载 setuptools。
将下载的setuptools 通过U盘复制到目标机上。
在目标机上通过python setup.py install安装。
注意需要root用户权限才能使用pip成功安装Supervisor
####安装 Distribution 包####
某些Linux发行版提供通过系统软件包管理器安装Supervisor。 这些软件包是由第三方(而非Supervisor开发人员)制作的,并且通常包括针对Supervisor的特定于发行版的更改。
使用软件包管理工具来检查 supervisor 是否可以安装; 例如 在Ubuntu上,您可以运行apt-cache show Supervisor;在CentOS上,您可以运行yum info supervisor
使用软件包管理工具安装Supervisor,通常把supervisor服务集成到系统管理的基础架构中,例如 允许supervisor在开机时自动启动。
注意 通过系统安装包工具安装的supervisor的版本可能远远低于 官方发布的Supervisor版本
创建supervisor的配置文件
Supervisor安装完成后,运行echo_supervisord_conf,会将Supervisor的示例配置文件打印到终端。
运行echo_supervisord_conf > /etc/supervisord.conf命令,生成配置文件,此命令访问到了系统目录所以需要root 权限。
启动supervisor时通过 -c 指定配置文件,例如 supervisord -c /etc/supervisord.conf ,如果在运行 supervisord命令的当前目录有supervisord.conf配置文件,也可以不用指定,因为会在当前目录生机查找。
supervisor的配置文件根据需要自行修改