温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Linux中supervisord 进程管理和自动重启是怎样的

发布时间:2021-10-21 17:15:23 来源:亿速云 阅读:393 作者:柒染 栏目:大数据

Linux中supervisord 进程管理和自动重启是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

supervisord的介绍:

  1. 官网: http://supervisord.org/

  2. github: https://github.com/Supervisor/supervisor

概述:

软件功能:

本软件是进程管理系统,可以很简单的管理系统,同时提供了很丰富的接口可以让你随心所欲的管理

应用场景:


    1. 常驻任务维护、管理,不论你的常驻进程是什么语言写的,都可以使用本神器管理

    2. 用来监控nginx, redis, mongodb等软件,实现软件如果因为异常挂了,可以自动重启,不至于终端服务

简单来讲:守护进程,如果你的进程一直在运行,突然挂了。 那么supervisord能帮你速度拉起这个进程,使之正常运行

架构:

supervisord: 服务端,真正用来监控程序的进程

supervisorctl: 客户端,用来管理监控程序的进程

安装:

说明:


    1. 我这里采用了一个自己约定的规范,方便组内成员形成共识,对服务管理没有学习成本

    2. 我是依赖python安装的

规范:


    1. 软件根目录: /data/opt

    2. 快捷方式根目录: /data/opt/scripts,其中本目录会加入到系统PATH中。export PATH='/data/opt/scripts':$PATH

    3. supervisord的配置目录、以及运行日志目录都放置在/data/opt/supervisord里

依赖:

python

安装:  

pip install supervisor

配置文件

“echo_supervisord_conf”命令来生成配置文件,例

echo_supervisord_conf > /etc/supervisord.conf

配置管理的进程

在 /etc/supervisord.conf 最后加上这两句
[program:python]
command=python /tmp/test.py
/tmp/test.py的文件内容

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import time

while(True):
    # 3秒
    time.sleep(1)

    # 打开文件
    fo = open("/tmp/test.txt", "a")
    print "文件名为: ", fo.name
    str = time.ctime() + "\n"
    fo.write( str )

    # 关闭文件
    fo.close()

启动supervisord

supervisord #回车即启动  -h 下可以看下参数的具体配置

查看 python的进程 

Linux中supervisord 进程管理和自动重启是怎样的 可以看到 /tmp/test.txt 里面的内容在增加 

Linux中supervisord 进程管理和自动重启是怎样的

测试

现在收到杀掉python test.py这个进程 
Linux中supervisord 进程管理和自动重启是怎样的

kill -9 5535 杀死python test.py这个进程

然后再去查看进程 马上就可以看到 python test.py又出现了 
看下 进程号 已经变成了 5592

看完上述内容,你们掌握Linux中supervisord 进程管理和自动重启是怎样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI