zoukankan      html  css  js  c++  java
  • 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开机自动重启脚本

    1.  
      #! /bin/sh
    2.  
      PATH=/sbin:/bin:/usr/sbin:/usr/bin
    3.  
      PROGNAME=supervisord
    4.  
      DAEMON=/usr/bin/$PROGNAME
    5.  
      CONFIG=/etc/$PROGNAME.conf
    6.  
      PIDFILE=/tmp/$PROGNAME.pid
    7.  
      DESC="supervisord daemon"
    8.  
      SCRIPTNAME=/etc/init.d/$PROGNAME
    9.  
       
    10.  
      # Gracefully exit if the package has been removed.
    11.  
      test -x $DAEMON || exit 0
    12.  
       
    13.  
      start()
    14.  
      {
    15.  
      echo -n "Starting $DESC: $PROGNAME"
    16.  
      $DAEMON -c $CONFIG
    17.  
      echo "..."
    18.  
      }
    19.  
       
    20.  
      stop()
    21.  
      {
    22.  
      echo -n "Stopping $DESC: $PROGNAME"
    23.  
      supervisor_pid=$(cat $PIDFILE)
    24.  
      kill -15 $supervisor_pid
    25.  
      echo "..."
    26.  
      }
    27.  
       
    28.  
      status()
    29.  
      {
    30.  
      ps -ef|grep supervisord
    31.  
      }
    32.  
       
    33.  
      case "$1" in
    34.  
      start)
    35.  
      start
    36.  
      ;;
    37.  
      stop)
    38.  
      stop
    39.  
      ;;
    40.  
      status)
    41.  
      status
    42.  
      ;;
    43.  
      restart)
    44.  
      stop
    45.  
      start
    46.  
      ;;
    47.  
      *)
    48.  
      echo "Usage: $SCRIPTNAME {start|stop|restart|status}" >&2
    49.  
      exit 1
    50.  
      ;;
    51.  
      esac
    52.  
      exit 0

    之后需要在开机系统文件里面配置开启启动命令(下面的命令就是往里面写内容,或者你可以自己去去手动添加)
    [root@JD ~]# echo "/etc/inin.d/supervisord start" > /etc/rc.d/rc.sysinit 
    

    supervisor项目管理进程的配置文件(都是一些基础的配置,都是可以管理进程的,要想配置好一点的可以去上网找,写进文件里就行了)

    需要注意的地方====》所有要管理的进程都不能开启后台模式,只能使用前台模式进行配置;使用后台模式会出现一直重新开启新进程。

    mysql配置文件(要注意command,这里就是要执行这个命令来开启的进程,自己可以找找自己的进程启动的命令)
    1.  
      [program:mysql]
    2.  
      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
    3.  
      process_name=%(program_name)s
    4.  
      priority=1001
    5.  
      autostart=true
    6.  
      startretries=3
    7.  
      autorestart=true
    8.  
      user=root
    redis配置文件(关闭redis的后台模式,也就是修改redis.conf中的daemon为no)
    1.  
      [program:redisd]
    2.  
      command=/usr/local/redis/bin/redis-server
    3.  
      process_name=%(program_name)s
    4.  
      priority=1001
    5.  
      autostart=true
    6.  
      startretries=3
    7.  
      autorestart=true
    8.  
      user=root
    9.  
       
    nginx配置文件(也是要关闭后台模式,在执行的命令后面添加-g "daemon off;")
    1.  
      [program:nginx]
    2.  
      command=/usr/local/tools/nginx/sbin/nginx -g 'daemon off;'
    3.  
      process_name=%(program_name)s
    4.  
      priority=1000
    5.  
      autostart=true
    6.  
      startretries=3
    7.  
      autorestart=true
    8.  
      user=root

    tomcat配置文件(一样关闭后台模式,使用 catalina.sh run)

    1.  
      [program:tomcat1]
    2.  
      command=/usr/local/tools/tomcat1/bin/catalina.sh run
    3.  
      process_name=%(program_name)s
    4.  
      environment=JAVA_HOME="/usr/local/tools/jdk1.7.0_71/",JAVA_BIN="/usr/local/tools/jdk1.7.0_71/bin"
    5.  
      priority=1000
    6.  
      autostart=true
    7.  
      startretries=3
    8.  
      autorestart=true
    9.  
      user=root
    10.  
  • 相关阅读:
    Java中的Java.lang.ThreadLocal类
    Java中线程的生命周期和状态
    Circular Linked List数据结构
    Linked List数据结构
    JVM如何工作
    JVM运行时数据区域
    queue数据结构
    stack数据结构
    Java中Set/HashSet的内部处理
    POJO,JavaBean 以及他们之间的区别
  • 原文地址:https://www.cnblogs.com/gaoyuechen/p/10524638.html
Copyright © 2011-2022 走看看