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. Pause Web Sessions

    To pause specific sessions, add rules using FiddlerScript to the OnBeforeRequest function (except wh ...

  2. JavaWeb项目异常管理之log4j的使用教程

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6399191.html 在项目中的应用见: https://github.com/ygj0930/CoupleS ...

  3. MySQL中 PK NN UQ BIN UN ZF AI 的意思

    PK   Belongs to primary key作为主键 NN   Not Null非空 UQ  Unique index不能重复 BIN  Is binary column存放二进制数据的列 ...

  4. 用OpenSSL把二进制的Cer证书转换程Base64格式的PEM格式的证书

    openssl x509 -inform der -in /d/ty.cer -pubkey -noout > /d/certificate_publickey.pem

  5. 〖Linux〗iptables端口转发(11.11.136.80:5552 <==> 10.10.136.1:8055/11.11.136.1:8055)

    环境: pc1: 10.10.72.1 (network: 10.10.72.0/22) pc2: 地址1: 10.10.136.1 (nework: 10.10.136.0/22) 地址2: 11. ...

  6. Java 安装和变量环境配置

    //1.分别安装sdk和jre,需要2个均安装才是完整的 //1)jdk_8u60_windows_i586_V8.0.600.27.1440040557 //2)jre_8u60_windows_i ...

  7. memcache使用方法测试

    <?php //php操作memcache的使用测试总结--学习 //1 Memcache::connect; //$memcache = new Memcache; //$memcache-& ...

  8. php反射API 获取属性/注释/方法 执行方法 实例

    <?php class Person { /** * 这里是对$_allowDynamicAttributes的注释信息 */ private $_allowDynamicAttributes ...

  9. Node.js相关——CommonJS规范

    1. CommonJS规范产生背景 在后端,JavaScript的规范远远落后并且有很多缺陷,这使得难以使用JavaScript开发大型应用.比如: 没有模块系统 标准库较少 没有标准接口 缺乏包管理 ...

  10. 常用Raspberry Pi周边传感器的使用教程(转)

    转:http://bbs.xiaomi.cn/thread-7797152-1-1.html 在Raspberry Pi 的使用和开发过程中,你可能时常需要一些硬件和传感器等来支持你的开发工作,例如, ...