Supervisor
http://www.jianshu.com/p/bf2b3f4dec73
http://www.jianshu.com/p/9abffc905645
http://blog.csdn.net/xyang81/article/details/51555473
http://www.restran.net/2015/10/04/supervisord-tutorial/
https://www.rddoc.com/doc/Supervisor/3.3.1/zh/running/
http://www.jianshu.com/p/2f032b52c84a

(1)
wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py
sudo python ez_setup.py --insecure
wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz#md5=35f01da33009719497f01a4ba69d63c9
tar -xf pip-9.0.1.tar.gz
cd pip-9.0.1
sudo python setup.py install
# ln -s /usr/local/python27/bin/pip /usr/bin/pip  这一步根据你的python版本号作调整,2.6不要调整
# ln -s /usr/local/bin/easy_install-2.7 /usr/bin/easy_install  #这个是因为我升级了python的版本。要是不做这一步的话,这里会报错提示easy_install command not found

sudo easy_install supervisor

su - root
可以通过运行echo_supervisord_conf程序生成supervisor的初始化配置文件,如下所示:
sudo mkdir /etc/supervisor
sudo mkdir /etc/supervisor/conf
sudo chown wwwad.wwwad /etc/supervisor/ -R
echo_supervisord_conf > /etc/supervisor/supervisord.conf

mkdir /data/logs/supervisor/

supervisor 启动java进程报错。因为我这里没有标注java的环境变量(他不到/etc/profile下面去找)
http://blog.csdn.net/sinat_21302587/article/details/76836283
在启动的时候会报各种各样的错误
1、这里我们一定要主要环境变量   environment=A="1", B="2" ;设置环境变量,这里可以保存运行程序需要的参数
2、是否需要切换到指定路径下执行
3、设置启动用户。test1上的console成功了
4、Supervisor只能管理非daemon的进程,也就是说Supervisor不能管理守护进程。否则提示Exited too quickly (process log may have details)异常。例子中的Tomcat默认是以守护进程启动的,所以我们改成了catalina.sh run,以前台进程的方式运行

supervisor-monitor
https://github.com/mlazarov/supervisord-monitor
http://www.mamicode.com/info-detail-1707312.html

[program:console]
environment=JAVA_HOME="/usr/java/latest"
directory=/data/java_web_app/console
user=wwwad
command=java -Xms512m -Xmx512m -Xmn188m -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:CMSInitiatingOccupancyFraction=60 -XX:CMSTriggerRatio=70 -Xloggc:/data/java_web_app/newsinfo/logs/gc_20171207_140935.log -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/java_web_app/newsinfo/tmp/heapdump_20171207_140935.hprof -XX:+PrintHeapAtGC -XX:+ParallelRefProcEnabled -XX:MaxTenuringThreshold=7 -XX:SurvivorRatio=4 -Djava.io.tmpdir=/data/java_web_app/newsinfo/tmp/ -Duser.dir=/data/java_web_app/newsinfo -DAPPID=test-console -Dfile.encoding=UTF-8 -jar start.jar jetty.port=23456 -DSTOP.PORT=23457 -DSTOP.KEY=news23456

supervisord -c /etc/supervisor/supervisord.conf

[program: test]
command=xxxxxxxx  ;如果有多条命令,可以写入shell脚本再在这里调用
directory=xxxxx        ;执行命令时切换到的目录
user=xxxx ;执行命令所用的linux用户身份
autorestart=true    ;是否自动重启
autostart=true ;启动supervisor时是否自行启动该程序
redirect_stderr=true    ;如果为true则将stderr发送到stdout相应的log文件中去
stdout_logfile=/path/to/logfile ;制定stdout的输出文件
stdout_logfile_maxbytes=10MB    ;限定logfile的大小, 默认为50M
stdout_logfile_backups=10 ;保存logfile的最大数目,如果操作这个数目则对最早的logfile进行覆盖,默认为10
environment=A="1", B="2" ;设置环境变量,这里可以保存运行程序需要的参数

这里记住,我们每添加一次program的时候,我们需要更新新的配置到supervisord
supervisorctl update

这里的supervisorctl reload的功能是重启所有的程序

启动某一个程序
supervisorctl start programe_name

一、添加好配置文件后

二、更新新的配置到supervisord    
[vb] view plain copy

supervisorctl update

三、重新启动配置中的所有程序
[vb] view plain copy

supervisorctl reload

四、启动某个进程(program_name=你配置中写的程序名称)
[vb] view plain copy

supervisorctl start program_name

五、查看正在守候的进程
[vb] view plain copy

supervisorctl

六、停止某一进程 (program_name=你配置中写的程序名称)
[vb] view plain copy

pervisorctl stop program_name

七、重启某一进程 (program_name=你配置中写的程序名称)
[vb] view plain copy

supervisorctl restart program_name

八、停止全部进程
[vb] view plain copy

supervisorctl stop all

注意:显示用stop停止掉的进程,用reload或者update都不会自动重启。

supervisor 完整安装步骤的更多相关文章

  1. Dreamweaver cs6中文版完整安装步骤:

    Dreamweaver cs6中文版完整安装步骤: http://www.cr173.com/soft/72633.html 1.首先我们需要下载Dreamweaver cs6官方中文原版安装程序,下 ...

  2. RabbitMq在CentOs7下的完整安装步骤,带你踩坑

    1.前言 因为公司项目中用的RabbitMq来做消息处理,自己以前没有接触过,所以想自学一下.然额,光安装就花了6.7个小时才搞定,中间还换过一个版本,综合国内外博客才最终将所有安装中遇到的问题解决掉 ...

  3. hadoop入门学习教程--DKHadoop完整安装步骤

    使用hadoop版本是DKH标准三节点发行版,DKHadoop版本的易用性比较好,环境部署要简单的多,参考此篇安装前请先下载DKHadoop版本,网盘链接:https://pan.baidu.com/ ...

  4. CentOS6.2下fastDFS的完整安装和配置步骤

    centos6.2系统下安装配置FastDFS步骤: 1:安装libevent(libevent-2.0.16-stable) ##卸载系统自带libevent rpm -qa|grep libeve ...

  5. 如何使用本地账户"完整"安装 SharePoint Server 2010+解决“New-SPConfigurationDatabase : 无法连接到 SharePoint_Config 的 SQL Server 的数据 库 master。此数据库可能不存在,或当前用户没有连接权限。”

    注:目前看到的解决本地账户完整安装SharePoint Server 2010的解决方案如下,但是,有但是的哦: 当我们选择了"完整"模式安装SharePointServer201 ...

  6. [转]phoneGap3.0安装步骤(以windows下的android环境为例):

    phoneGap3.0安装步骤(以windows下的android环境为例): 环境: WIN系统,JDK,Android,Eclipse,Ant,Git,PhoneGap3.x (Cordova) ...

  7. QualityCenter10+Oracle10.2.1.0.1+Win2003SP2企业版安装步骤

    HpQualityCenter10+Oracle10.2.1.0.1+Win2003SP2企业版安装步骤: 1.点击setup.exe,等待,知道出现以下界面,然后按“下一步” 2.出现如下界面,接受 ...

  8. Linux各个发行版本的介绍, 以及VirtualBox+CentOS的安装步骤

    Linux和Unix系统有哪些主要的发行版本 Unix: (非开源传统商业操作系统) IBM AIX, HP HP-UX, Sun Solaris,等 各家硬件厂商的发行版本, 往往是和自家的硬件设备 ...

  9. GemFire 入门篇2:GemFire 8.2 在CentOS & Mac OS X的安装步骤

    GemFire目前已经开源,开源项目的主页:http://geode.incubator.apache.org/,商业版本的主页:https://pivotal.io/big-data/pivotal ...

随机推荐

  1. 如何进入docker容器

    http://blog.csdn.net/u010397369/article/details/41045251

  2. http协议版本历史

    1.http 0.9 2.http 1.0 3. http 1.1 4.http 2.0 推送:主动发送js.css推送到浏览器. 二进制流:可以并行发送数据. 2019.3.18补充: (1)htt ...

  3. kube-proxy源代码分析

    摘要:假设你对kube-proxy的工作原理有一定的了解.本文基于kubernetes v1.5代码对kube-proxy的源代码文件夹结构进行了分析,并以iptables mode为例进行了完整流程 ...

  4. V-rep学习笔记:并联机构正逆运动学

    Solving the FK problem of simple kinematic chains is trivial (just apply the desired joint values to ...

  5. having 与where 的异同点

    having 与where 的异同点: where针对表中的列发挥作用,查询数据 having对查询结果中的列发挥作用,筛选数据 #查询本店商品价格比市场价低多少钱,输出低200元以上的商品 ; // ...

  6. macos下安装oh-my-zsh和zsh-autosuggestion

    1:安装oh-my-zsh sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/mast ...

  7. QQ登录整合/oauth2.0认证-04-调整到QQ互联进行QQ登录

    ---------------------------------目录------------------------------------- QQ登录整合/oauth2.0认证-03-对第二节的代 ...

  8. iOS linker command failed with exit code 1 (use -v to see invocation)多种解决方案汇总

    有时可能会遇到这种错误,关键是这种错误,有时只有这一句话,也不会给更多错误信息. 网上找了一些,总结了如下:(PS:以下是按照解决简易程度排序,不代表出现概率) 1.bitcode问题 解决如下:原因 ...

  9. [转]NLP Tasks

    Natural Language Processing Tasks and Selected References I've been working on several natural langu ...

  10. JavaScript Window History 浏览器的历史

    window.history 对象在编写时可不使用 window 这个前缀. 为了保护用户隐私,对 JavaScript 访问该对象的方法做出了限制. 一些方法: history.back() - 与 ...