supervisord安装使用简记

What is supervisor

Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.

引用自supervisor官网,中文意思就是是一个C/S架构的系统,用来监控管理类UNIX系统上进程。

Features

简单,高效,可扩展,兼容性好(Orz,其实不能在windows上用)

想看更多请去官网

Installing

  1. 因为是用Python实现的,所以最简单的方式是pip install supervisor
  2. ubuntu系统上也可以直接使用sudo apt-get install supervisor

Configure

  • 使用 echo_supervisord_conf 就可以看到默认的配置文件,如下:
➜  Log echo_supervisord_conf  
; Sample supervisor config file.
;
; For more information on the config file, please see:
; http://supervisord.org/configuration.html
;
; Notes:
;  - Shell expansion ("~" or "$HOME") is not supported.  Environment
;    variables can be expanded using this syntax: "%(ENV_HOME)s".
;  - Comments must have a leading space: "a=b ;comment" not "a=b;comment".
  • 配置文件

使用echo_supervisord_conf > /etc/supervisord.conf命令将配置文件保存在xx下面,然后修改配置文件。推荐的方式是将最后一行修改到某个固定文件夹,如下:

[include]
files = /etc/supervisord.d/*.ini

这样每次运行都会加载此目录下的配置文件,每个文件单独管理一个进程。而*.ini的内容一般如下:

配置1
[program:simpleserver]
command=python -m SimpleHTTPServer  # 执行的命令 ,若是虚拟环境则需要注意命令的路径,见配置2
directory=/home/wang/Downloads  # 执行命令的路径
user=wang  #  执行命令的用户
autorestart=true  # 出错后自动重启
redirect_stderr=true  # 错误日志重定向
stdout_logfile=/home/wang/Log/SimpleHTTPServer.log  # 日志的路径
loglevel=info  # 日志的级别
配置2
[program:hongbaoyun]
command=/home/wang/.virtualenvs/xxx-virtual-env/bin/python manage.py runserver 0.0.0.0:9999  # 此处python位置是virtualenv中python的位置
directory=/home/wang/Workspace/khb/hongbaoyun
user=wang

Run

  • 启动
    supervisord -c supervisord.conf # 指定配置文件启动supervisord

  • 启动spuervisordctl
    supervisordctl

  • supervisordctl常用命令

supervisorctl stop program_name  # 停止某一个进程,program_name 为 [program:x] 里的 xsupervisorctl start program_name  # 启动某个进程supervisorctl restart program_name  # 重启某个进程supervisorctl stop groupworker:  # 结束所有属于名为 groupworker 这个分组的进程 (start,restart 同理)supervisorctl stop groupworker:name1  # 结束 groupworker:name1 这个进程 (start,restart 同理)supervisorctl stop all  # 停止全部进程,注:start、restartUnlinking stale socket /tmp/supervisor.sock
、stop 都不会载入最新的配置文件supervisorctl reload  # 载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程supervisorctl update  # 根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启
  • 图行管理界面

在配置文件中去掉 [inet http server]的注释就可在浏览器中通过127.0.0.1:8000中看到图形管理界面

FAQ

  • 可能会出现 Unlinking stale socket /tmp/supervisor.sock 的错误,解决方式见 http://stackoverflow.com/questions/14479894/stopping-supervisord-shut-down, 是配置文件的问题

  • 开机自动启动,见 http://serverfault.com/questions/96499/how-to-automatically-start-supervisord-on-linux-ubuntu

Refer

  • http://www.restran.net/2015/10/04/supervisord-tutorial/ (很详细,推荐看)

  • http://supervisord.org/ (官网)

  • http://stackoverflow.com/questions/14479894/stopping-supervisord-shut-down

  • http://serverfault.com/questions/96499/how-to-automatically-start-supervisord-on-linux-ubuntu

739727-20170915172117313-1409746903.png

转载于:https://www.cnblogs.com/wswang/p/5795766.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490061.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ppt放映显示备注 投影不显示

点击设置幻灯片放映 勾选使用演示者视图 点击从当前幻灯片开始 在放映幻灯片过程中右键鼠标,点击显示演示者视图

懂数学人的都认同:数学的本质[关联]万物(一)

来源:数学职业家本文将会以数学为主线和切入点,进行一次思想和思维上的自由推理探索认知之旅,并将会透过一种有趣视角和观点,窥见一个我们所熟悉又有所不同的世界、万事万物和我们的宇宙。现在就让我们开始这次认知探索的旅程吧。…

python怎么做数据分析_如何用python进行数据分析

1、Python数据分析流程及学习路径 数据分析的流程概括起来主要是:读写、处理计算、分析建模和可视化四个部分。在不同的步骤中会用到不同的Python工具。每一步的主题也包含众多内容。根据每个部分需要用到的工具,Python数据分析的学习路径如下&#xff1…

一文告诉你,谷歌是否真的实现了「量子至上」

▲ 上图展示的是量子计算机系统中的一个组成部分(稀释制冷机),这张照片拍摄于2016年的一间无尘运行室。如果量子计算机真的能够以超越传统计算机的速度与效率完成某种计算,那么“量子至上”目标就算是真正达成。但是,这…

有两个python怎么停用其中一_如何在python中停止另一个已经运行的脚本?

There is a way to start another script in python by doing this: import os os.system("python [name of script].py") So how can i stop another already running script? I would like to stop the script by using the name. 解决方案 It is more usual to i…

url主机域名可以省略_从输入url到页面完成加载发生了什么

作者 | Jake Zhang链接 | https://juejin.im/post/5e92f11b6fb9a03c46493880在写这篇文章之前本想着这个知识点涉及知识点太多太杂,找一篇大牛写的看看就算了,但是看了大概七八篇后,内心更纠结了——🙃🙃🙃…

揭秘毕加索被隐藏千年的“画中画”,神经网络让它重新面世

来源:technologyreview众所周知,毕加索是一位西班牙的天才画家,在20世纪时没有哪位艺术家能够像毕加索一样画风多变。毕加索的作品通常被分为9个时期,时期的名称尚有争议,大致是“蓝色时期”、“粉红色时期”、“立体主…

ssm如何支持热部署_Pipedrive如何在每天部署50+次的情况下支持质量发布?

作者 | Valeriia Iuzhakova 策划 | 田晓旭 “我把每一天都看作是比昨天高出一个档次的机会——无论是在服务质量、交付、速度还是业务的其它任何方面。”1 介绍 — 速度 Vs. 质量 客户总是在寻找有效的解决方案,来满足他们已经确定地需求,并为他们节省资…

armv7 cortex a系列编程手册_STM32、Cortex-M3和ARMv8-M之间的关联

大家都应该知道STM32、Cortex-M3、ARMv8-M与ARM有关,但可能分不清他们是什么关系,或者具体是什么东西。嵌入式开发直播课 - STM32 USART串口的应用 - 创客学院直播室​www.makeru.com.cn一、总述ARMv8-M:是一款ARM架构。ARM架构分为&#xff…

IDEA如何显示类的所有方法

ALT7(数字7) 例如在Thread类下(Thread.java)按ALT7,就能左下角显示这个类的所有方法,点击相应方法会跳到那个方法中

5G只是小儿科?任正非对话人工智能专家2万字实录

9月26日,深圳,华为公司创始人任正非对话两位人工智能专家杰里卡普兰和彼得柯克伦。来源:澎湃新闻9月26日下午,深圳,华为公司创始人任正非对话两位人工智能专家杰里卡普兰和彼得柯克伦,三人围绕“创新”&…

IDEA自动生成try catch异常处理语句

在写Java程序时,有些方法需要我们对其进行异常处理,例如线程的join方法,IDEA可以自动帮我们生成try catch语句 现在写一个join方法,发现下划线报错,因为需要对其异常处理 我们将鼠标放到报错处,按下altent…

c++ map 获取key列表_好未来Golang源码系列一:Map实现原理分析

分享老师:学而思网校 郭雨田一、map的结构与设计原理golang中map是一个kv对集合。底层使用hash table,用链表来解决冲突 ,出现冲突时,不是每一个key都申请一个结构通过链表串起来,而是以bmap为最小粒度挂载&#xff0c…

Gartner 2019 年 BI 炒作周期五大趋势:增强分析、数字文化、关系分析、决策智能、实施和扩展...

来源:云头条Gartner研究副总裁Jim Hare声称:“由于智能/情报是所有数字化业务的核心,IT和业务负责人继续将分析和商业智能(BI)视为创新投资方面的重中之重。该炒作周期帮助数据和分析负责人过渡到增强分析,…

IDEA实现类自动输出需要实现的方法

在IDEA中写实现类时可以自动输出需要实现的方法,具体见下 首先定义一个实现Runnable接口的类 发现报错了,接着把鼠标放置报错的地方,按下altenter,选择下面红框 此时就会出现需要我们实现的接口中方法,点击ok

字典的数据怎么转变为excel_Excel小技巧——快速为多行数据排列名次

大家好,上一期我们介绍了合并单元格的自动排序小技巧,今天,再为大家准备一个排名表,下面我们就利用这个表格,来了解一下快速排名的方法吧。首先,我们在第一行排名单元格中输入今天要学习的公式前半部分。公…

GIt 从入门到放弃

一、注册github账号 github网址https://github.com/ 下一步 然后,你的邮箱会收到一封邮件,进行邮箱验证就行了 二、创建github仓库 登录你的github,在首页的右方可以看到下图所示(我已经创建过项目了,没有创建过项目的…

麻省理工牛人解说数学体系

来源:P.Linux‘s blog与 ima一、为什么要深入数学的世界作为计算机的学生,我没有任何企图要成为一个数学家。我学习数学的目的,是要想爬上巨人的肩膀,希望站在更高的高度,能把我自己研究的东西看得更深广一些。说起来&…

IDEA提示方法参数的快捷键

在写Java方法的时候有时想让软件提示一下方法的参数,解决方法是将鼠标放置到方法括号里,按下ctrlp,即可显示方法参数

docker常用命令_docker常用命令整理

docker常用命令整理代码狂魔 • 5 天前 • 技术积累 • 14 • 0前面已经把docker是什么和 docker怎么安装已经写了,现在我将常用命令做一个整理,方便日后查阅常用命令docker pull ${CONTAINER NAME} #拉取镜像 docker images …