supervisor开机自动启动脚本+redis+MySQL+tomcat+nginx进程自动重启配置
[root@mongodb-host supervisord]# cat mongo.conf
[program:mongo]
command=/usr/local/mongodb/bin/mongod -f /mnt/server/mongo/mongodb.conf
startretries=2
directory=/usr/local/mongodb
user=root
numprocs=1
startsecs=0
autorestart=true
supervisor开机自动重启脚本
- #! /bin/sh
- PATH=/sbin:/bin:/usr/sbin:/usr/bin
- PROGNAME=supervisord
- DAEMON=/usr/bin/$PROGNAME
- CONFIG=/etc/$PROGNAME.conf
- PIDFILE=/tmp/$PROGNAME.pid
- DESC="supervisord daemon"
- SCRIPTNAME=/etc/init.d/$PROGNAME
- # Gracefully exit if the package has been removed.
- test -x $DAEMON || exit 0
- start()
- {
- echo -n "Starting $DESC: $PROGNAME"
- $DAEMON -c $CONFIG
- echo "..."
- }
- stop()
- {
- echo -n "Stopping $DESC: $PROGNAME"
- supervisor_pid=$(cat $PIDFILE)
- kill -15 $supervisor_pid
- echo "..."
- }
- status()
- {
- ps -ef|grep supervisord
- }
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- status)
- status
- ;;
- restart)
- stop
- start
- ;;
- *)
- echo "Usage: $SCRIPTNAME {start|stop|restart|status}" >&2
- exit 1
- ;;
- esac
- exit 0
之后需要在开机系统文件里面配置开启启动命令(下面的命令就是往里面写内容,或者你可以自己去去手动添加)
[root@JD ~]# echo "/etc/inin.d/supervisord start" > /etc/rc.d/rc.sysinit
supervisor项目管理进程的配置文件(都是一些基础的配置,都是可以管理进程的,要想配置好一点的可以去上网找,写进文件里就行了)
需要注意的地方====》所有要管理的进程都不能开启后台模式,只能使用前台模式进行配置;使用后台模式会出现一直重新开启新进程。
mysql配置文件(要注意command,这里就是要执行这个命令来开启的进程,自己可以找找自己的进程启动的命令)
- [program:mysql]
- command=/usr/local/tools/mysql/bin/mysqld --basedir=/usr/local/tools/mysql --datadir=/usr/local/tools/data/mysql --plugin-dir=/usr/local/tools/mysql/lib/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/usr/local/tools/data/mysql/JD.jcloud.local.pid --socket=/usr/local/tools/data/mysql/mysql.sock
- process_name=%(program_name)s
- priority=1001
- autostart=true
- startretries=3
- autorestart=true
- user=root
redis配置文件(关闭redis的后台模式,也就是修改redis.conf中的daemon为no)
- [program:redisd]
- command=/usr/local/redis/bin/redis-server
- process_name=%(program_name)s
- priority=1001
- autostart=true
- startretries=3
- autorestart=true
- user=root
nginx配置文件(也是要关闭后台模式,在执行的命令后面添加-g "daemon off;")
- [program:nginx]
- command=/usr/local/tools/nginx/sbin/nginx -g 'daemon off;'
- process_name=%(program_name)s
- priority=1000
- autostart=true
- startretries=3
- autorestart=true
- user=root
tomcat配置文件(一样关闭后台模式,使用 catalina.sh run)
- [program:tomcat1]
- command=/usr/local/tools/tomcat1/bin/catalina.sh run
- process_name=%(program_name)s
- environment=JAVA_HOME="/usr/local/tools/jdk1.7.0_71/",JAVA_BIN="/usr/local/tools/jdk1.7.0_71/bin"
- priority=1000
- autostart=true
- startretries=3
- autorestart=true
- user=root
supervisor开机自动启动脚本+redis+MySQL+tomcat+nginx进程自动重启配置的更多相关文章
- linux下添加自动启动项,linux 开机自动启动脚本方法
#service servicename status是当前状态#chkconfig --list servicename是查看启动状态,也就是是否开机自动启动 首先写好脚本,如 mysql,把它放到 ...
- linux 开机自动启动脚本方法
通过现场对这次天津iptv demo项目的调测.对iptv这套系统有了更好的认识和理解.由于iptv本身需要安装许多服务.而现场实施中有没有把这些需要启动服务的脚本加入到开 机自动运行中.如果服务器重 ...
- php-fpm开机自动启动脚本其实源码包里边就有
网上有各种版本的php-fpm开机自动启动脚本, 其实你编译后源目录已经生成自动脚本.不用做任何修改即用.cp {php-5.5.x-source-dir}/sapi/fpm/init.d.php-f ...
- 【Linux】开机自动启动脚本
Linux下(以RedHat为范本)添加开机开机自动启动脚本有两种方式; 本例系统:Linux(CentOS 7.2) 方法一 使用 /etc/rc.d/rc.local,自动启动脚本 #!/bin/ ...
- tomcat监控,自动重启shell脚本
tomcat监控,自动重启shell脚本如下,取名 monitor_tomcat.sh: #!/bin/sh # func:自动监控tomcat脚本并且执行重启操作 # 获取tomcat进程ID(其中 ...
- 使用Keepalived实现Nginx的自动重启及双主热备高可用
1.概述 之前我们使用Keepalived实现了Nginx服务的双机主备高可用,但是有几个问题没有解决,今天一起探讨一下. 1)在双机主备机制中,Keepalived服务如果宕了,会自动启用备机进行服 ...
- mysql安装简单教程(自动安装/配置安装)
mysql安装简单教程(自动安装/配置安装) 1.1前言: 由于特殊原因,在最近2-3个月里mysql真是安装了无数遍,每次安装都要上网找教程,每个教程基本都不一样,因此还是自己写下来比较好,毕竟自己 ...
- Linux服务器Jboss运行环境搭建步骤和开机自动启动脚本编写运行
Jboss运行环境:Linux+Jdk+Jboss+jsp系统 Jboss软件说明:类似于Tomcat,就是一个跑Jsp系统的环境,他的站点路径跟Tomcat类似,Tomcat存放站点文件到webap ...
- linux jdk+mysql+tomcat+nginx 项目部署步骤
1.下载linux jdk1.7.0_79.tar.gz ; 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-dow ...
随机推荐
- Maltego更新到4.1.6
Maltego更新到4.1.6 Maltego最近更新到4.1.6.由于Kali Linux软件源并没有提供此次更新包,用户需要进入Maltego进行手动更新.在起始页面中,双击状态栏右下角的黄色 ...
- react输入 撤销
销毁阶段可以使用的函数:componentWillUnmount:在删除组件之前进行清理操作,比如计时器和事件监听器.因为这些函数都是开发者手动加上去的,react不知道,必须进行手动清理. 实例第一 ...
- angularJS常用的内置方法
angular.lowercase(aaa); angular.uppercase(bbb); angular.isString(); angular.isNumber(); angular.isAr ...
- 20172302 《Java软件结构与数据结构》第四周学习总结
2018年学习总结博客总目录:第一周 第二周 第三周 第四周 教材学习内容总结 第六章 列表 1.列表是对象的有序集合,在 List 界面中定义. List 接口表示集合框架中的列表.列表可以具有重复 ...
- Sql Server中sql语句自己主动换行
怎么让sql server中的sql语句自己主动换行呢? 例如以下图: 工具--选项--全部语言 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvamlhbm ...
- Android的Databinding-自定义生成类名字
1. 在xml中,添加class的属性并设置为自定义名字<data class="com.example.CustomBinding"></data>2. ...
- 最小生成树 Prim Kruskal
layout: post title: 最小生成树 Prim Kruskal date: 2017-04-29 tag: 数据结构和算法 --- 目录 TOC {:toc} 最小生成树Minimum ...
- 如何使用Cassandra来存储time-series类型的数据
Cassandra非常适合存储时序类型的数据,本文我们将使用一个气象站的例子,该气象站每分钟需要存储一条温度数据. 一.方案1,每个设备占用一行 这个方案的思路就是给每个数据源创建一行 ...
- 职场之KPI
当一个公司开始执行KPI考核的时候,任何人的工作性质就发生了变化,而处于底层的员工就惨了,因为一个公司的资源是有限的,一个人的精力也是有限的,当你和你上司负责不同的项目时,而当你的所谓产品经理负责两个 ...
- 微软BI 之SSIS 系列 - Lookup 组件的使用与它的几种缓存模式 - Full Cache, Partial Cache, NO Cache
开篇介绍 先简单的演示一下使用 Lookup 组件实现一个简单示例 - 从数据源表 A 中导出数据到目标数据表 B,如果 A 数据在 B 中不存在就插入新数据到B,如果存在就更新B 和 A 表数据保持 ...