• CentOS安装Supervisor


     什么是Supervisor

    Supervisor是一个进程控制系统。 它是一个C/S系统,服务端是supervisord进程,控制端使用supervisorctl来进行控制启动进程。同时它也提供了一个web界面,来可以使我们方便的进行进程的控制和查看日志信息。 

    本篇博客将介绍如何安装/配置Supeivisor,希望能对你有所帮助。

    supervisor原理

    supervisor在启动时,先启动supervisor自己作为主进程

    然后读取配置文件加载注册的项目启动为子进程,获取进程PID

    如果某一个子进程异常中止,主进程会得到通知, 然后查看该项目的配置,如设置了自动重启则重启PID,如不重启则PID为0

    下载

    Supervisor是基于Python开发的,因此下载可以使用Python的pip命令(推荐使用pip方式安装)

    pip3 install git+https://github.com/Supervisor/supervisor

    如出现错误

    是因为你没有安装 git ,使用 yum install git 来安装git

    配置

    我们进入一个目录准备配置 Supervisor

    我个人习惯将所有自己安装的软件放至 /usr/lib 下面

    cd进入

    cd /usr/lib

    新建文件夹 supervisor

    mkdir supervisor

    进入 新建的文件夹

    cd supervisor/

    将 supervisor 的配置导入该目录

    echo_supervisord_conf > /usr/lib/supervisor/supervisord.conf

    如提示

    请指定supervisor的安装位置,如

    /usr/lib/python3/bin/echo_supervisord_conf > /usr/lib/supervisor/supervisord.conf

    命令完成后我们看到目录下多了 supervisord.conf 文件

    我们新建文件夹 config 存放以后的项目配置文件

    mkdir config

    我们使用vim编辑该配置文件

    vim supervisord.conf

    配置里有很多选项,更多的配置请网路搜索或查询官方文档(EN)

    修改以下选项

    然后我们保存,退出

    再启动 supervisord

    /usr/lib/python3/bin/supervisord -c /usr/lib/supervisor/supervisord.conf

    我们来启动查看是否成功

    /usr/lib/python3/bin/supervisorctl -c /usr/lib/supervisor/supervisord.conf

    出现以下界面而没有错误提示代表成功

    如出现如下

    请关闭防火墙,然后确保每次都使用 -c 指定conf

    systemctl stop firewalld.service
    systemctl disable firewalld.service

     常用命令

    /usr/lib/python3/bin/supervisorctl -c /usr/lib/supervisor/supervisord.conf reload //重启supervisor
    /usr/lib/python3/bin/supervisorctl -c /usr/lib/supervisor/supervisord.conf restart //重启某个conf,加 all 指重启全部
    /usr/lib/python3/bin/supervisorctl -c /usr/lib/supervisor/supervisord.conf update //更新全部conf文件
  • 相关阅读:
    [#]
    Windows 下配置 ApacheBench (AB) 压力测试
    [转载]
    Nginx 系列教程
    设置外接显示器顺序(哪个在左,哪个在右)的方法
    [.Net] 一句话Linq(递归查询)
    [Xamarin]
    [SVN]
    [SQL SERVER]
    [Oracle]
  • 原文地址:https://www.cnblogs.com/chnmig/p/10287518.html
Copyright © 2020-2023  润新知