运维

运维相关知识和内容

CentOS 7.3 上安装 Supervisor 碰到的各种问题

需要在一台 Linux 上安装 Supervisor 来监视某些进程,服务器系统是 CentOS 7.3,结果安装和配置过程中遇到了很多问题,搞了将近一个小时才配置好,以下是解决过程。

一、Supervisor 介绍

Supervisor 是一个客户/服务器系统,允许其用户在类似 UNIX 的操作系统上监视和控制一些进程。

二、在 CentOS 7 上安装 Supervisor

Supervisor 在默认的 CentOS 7 仓库源中没有,所以需要在其他源中下载,网上有 2 种方法。

1、安装 epel-release 扩展软件库

yum install epel-release

yum install -y supervisor


第一个方法报错:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: repos.lax.layerhost.com
* elrepo-kernel: repos.lax-noc.com
* extras: mirror.keystealth.org
* updates: mirror.hostduplex.com
No package supervisor available.
Error: Nothing to do

2、通过 easy_install 安装

# To install easy_install 
yum install python-setuptools

# Install supervisor
sudo easy_install supervisor


第二个方法报错:

Searching for supervisor
Reading https://pypi.python.org/simple/supervisor/
Couldn't find index page for 'supervisor' (maybe misspelled?)
Scanning index of all packages (this may take a while)
Reading https://pypi.python.org/simple/
No local packages or download links found for supervisor
error: Could not find suitable distribution for Requirement.parse('supervisor')

3、两种方法都失败了


只能通过 rpm 文件手动安装:

wget -c https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/s/supervisor-3.4.0-1.el7.noarch.rpm

yun localinstall supervisor-3.4.0-1.el7.noarch.rpm

报错:Error: Package: supervisor-3.4.0-1.el7.noarch (/supervisor-3.4.0-1.el7.noarch) Requires: python-meld3 >= 0.6.5。

于是手动安装 python-meld3:

wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/p/python-meld3-0.6.10-1.el7.x86_64.rpm
yum localinstall python-meld3-0.6.10-1.el7.x86_64.rpm

最后再安装 Supervisor:

yum localinstall supervisor-3.4.0-1.el7.noarch.rpm

终于安装成功了!

接下来就可以修改配置文件(/etc/supervisord.conf)增加需要守护的进程即可。修改完配置文件后相关操作如下:

# 激活开机启动命令
systemctl enable supervisord.service

# 重启服务
systemctl restart supervisord

# 查看状态
systemctl status supervisord.service