supervisor 完整安装步骤
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 完整安装步骤的更多相关文章
- Dreamweaver cs6中文版完整安装步骤:
Dreamweaver cs6中文版完整安装步骤: http://www.cr173.com/soft/72633.html 1.首先我们需要下载Dreamweaver cs6官方中文原版安装程序,下 ...
- RabbitMq在CentOs7下的完整安装步骤,带你踩坑
1.前言 因为公司项目中用的RabbitMq来做消息处理,自己以前没有接触过,所以想自学一下.然额,光安装就花了6.7个小时才搞定,中间还换过一个版本,综合国内外博客才最终将所有安装中遇到的问题解决掉 ...
- hadoop入门学习教程--DKHadoop完整安装步骤
使用hadoop版本是DKH标准三节点发行版,DKHadoop版本的易用性比较好,环境部署要简单的多,参考此篇安装前请先下载DKHadoop版本,网盘链接:https://pan.baidu.com/ ...
- CentOS6.2下fastDFS的完整安装和配置步骤
centos6.2系统下安装配置FastDFS步骤: 1:安装libevent(libevent-2.0.16-stable) ##卸载系统自带libevent rpm -qa|grep libeve ...
- 如何使用本地账户"完整"安装 SharePoint Server 2010+解决“New-SPConfigurationDatabase : 无法连接到 SharePoint_Config 的 SQL Server 的数据 库 master。此数据库可能不存在,或当前用户没有连接权限。”
注:目前看到的解决本地账户完整安装SharePoint Server 2010的解决方案如下,但是,有但是的哦: 当我们选择了"完整"模式安装SharePointServer201 ...
- [转]phoneGap3.0安装步骤(以windows下的android环境为例):
phoneGap3.0安装步骤(以windows下的android环境为例): 环境: WIN系统,JDK,Android,Eclipse,Ant,Git,PhoneGap3.x (Cordova) ...
- QualityCenter10+Oracle10.2.1.0.1+Win2003SP2企业版安装步骤
HpQualityCenter10+Oracle10.2.1.0.1+Win2003SP2企业版安装步骤: 1.点击setup.exe,等待,知道出现以下界面,然后按“下一步” 2.出现如下界面,接受 ...
- Linux各个发行版本的介绍, 以及VirtualBox+CentOS的安装步骤
Linux和Unix系统有哪些主要的发行版本 Unix: (非开源传统商业操作系统) IBM AIX, HP HP-UX, Sun Solaris,等 各家硬件厂商的发行版本, 往往是和自家的硬件设备 ...
- GemFire 入门篇2:GemFire 8.2 在CentOS & Mac OS X的安装步骤
GemFire目前已经开源,开源项目的主页:http://geode.incubator.apache.org/,商业版本的主页:https://pivotal.io/big-data/pivotal ...
随机推荐
- Linux下利用signal函数处理ctrl+c等信号
前言 linux下能够通过信号机制来实现程序的软中断,是一个很实用的编程方法. 我们平时在程序执行的时候按下ctrl-c.ctrl-z或者kill一个进程的时候事实上都等效于向这个进程发送了一个特定信 ...
- Java 基础【14】@注解
1.注解简介 JDK 1.5 中引入的 java.lang.annotation 包提供注解编程支持,可以让类在编译.类加载.运行时被读取,并执行相应的处理. 在 Java EE应用的时候,总是免不了 ...
- 使用 axios 详解
Vue.js 1.0 我们常使用 vue-resource (官方ajax库), Vue 2.0 发布后作者宣告不再对 vue-resource 进行更新, 推荐我们使用 axios (基于 Prom ...
- Linux主流架构运维工作简单剖析
转载:http://wgkgood.blog.51cto.com/1192594/1586259 随着IT运维的不断发展,尤其的Linux的飞速发展,越来越多的企业开始使用Linux操作系统平台,例如 ...
- testNG retry 失败的testcase只需要在xml中配置一个listener即可
问题情况 先说下问题情况,最近在做testNG与selenium集成做自动化测试的问题. 因为如果将t ...
- Quartz.NET开源作业调度框架系列(二):CronTrigger-转
CronTriggers比SimpleTrigger更加的灵活和有用,对于比较复杂的任务触发规则,例如"每个星期天的晚上12:00"进行备份任务,SimpleTrigger就不能胜 ...
- Log4j 把不同包的日志打印到不同位置
如果需要将不同的日志打印到不同的地方,则需要定义不同的Appender,然后定义每一个 Appender的日志级别.打印形式.输出位置! 配置log4j.properties文件如下: ####### ...
- Oracle 9i 10g 11g 区别的转载
下面看看9i.10g.11g版本的区别 Oracle 10g比9i多的新特性? 1. 10g支持网格计算,即多台结点服务器利用高速网络组成一个虚拟的高性能服务器,负载在整个 网格中衡(L ...
- Ubuntu下查看软件版本及安装位置【转】
Ubuntu下查看软件版本及安装位置 查看软件版本: aptitude show xxx 也可用apt-show-versions (要先安装sudo apt-get install apt- ...
- Linux主要shell命令详解(中)
shell中的特殊字符 shell中除使用普通字符外,还可以使用一些具有特殊含义和功能的特殊字符.在使用它们时应注意其特殊的含义和作用范围.下面分别对这些特殊字符加以介绍. 1. 通配符 通配符用于模 ...