• supervisor 管理程序异常崩溃 自动启动


    安装

    1. 安装配置:
    安装: yum install supervisor -y
    默认配置文件:cat /etc/supervisord.conf 
    配置路径: /etc/supervisord.d
    默认文件结尾: ini  
    

    配置案例

    1. 配置nginx 启动案例:cat /etc/supervisord.d/supervisor_nginx.ini
    # cat /etc/supervisord.d/supervisor_nginx.ini 
    
    [program:supervisor_nginx]
    command=/usr/sbin/nginx -p /etc/nginx/
    ;程序启动命令
    directory=/etc/nginx/
    ; 执行命令的路径
    autostart=true
    ; 在supervisord启动的时候也自动启动
    startsecs=10
    ; 启动10秒后没有异常退出,就表示进程正常启动了,默认为1秒
    autorestart=true
    ; 程序退出后自动重启,可选值:[unexpected,true,false],默认为unexpected,表示进程意外杀死后才重启
    startretries=60
    ; 启动失败自动重试次数,默认是3
    user=root
    ; 用哪个用户启动进程,默认是root
    priority=999 
    ; 进程启动优先级,默认999,值小的优先启动
    redirect_stderr=true
    ; 把stderr重定向到stdout,默认false
    stdout_logfile_maxbytes=50MB  
    ; stdout 日志文件大小,默认50MB
    stdout_logfile_backups = 10   
    ; stdout 日志文件备份数,默认是10
    ;stdout 日志文件,需要注意当指定目录不存在时无法正常启动,所以需要手动创建目录(supervisord 会自动创建日志文件)
    stdout_logfile=/var/log/supervisor/supervisor_nginx.log
    stderr_logfile=/var/log/supervisor/supervisor_nginx.log
    loglevel=info  
    ;日志的级别
    stopasgroup=false     
    ;默认为false,进程被杀死时,是否向这个进程组发送stop信号,包括子进程
    killasgroup=false     
    ;默认为false,向进程组发送kill信号,包括子进程
    
    1. 主程序 启动
    ~# supervisord -c /etc/supervisord.conf
    
    1. 控制进程 supervisorctl 需要确定:程序前台运行,才能获取 PID
    # supervisorctl status supervisor_nginx
    supervisor_nginx                 RUNNING   pid 9460, uptime 0:37:29
    

    4.supervisorctl 客户端操作

    supervisorctl stop supervisor_nginx
    supervisorctl start supervisor_nginx
    supervisorctl restart supervisor_nginx
    supervisorctl reread    # 加载配置
    supervisorctl update
    

    注意:

    ### 问题:
    command中指定的进程已经起来,但supervisor还不断重启
    问题描述:command中启动方式为后台启动,导致识别不到pid,然后不断重启,这里使用的是elasticsearch,command指定的是$path/bin/elasticsearch -d
    解决办法:supervisor无法检测后台启动进程的pid,而supervisor本身就是后台启动守护进程,因此不用担心这个
    nginx 前台启动:
    	daemon off;
    
  • 相关阅读:
    tomcat内存溢出问题解决
    redis知识点汇总
    activiti全部知识点
    Python_Note_Preview_03_URL
    S&P_09_协方差(协方差矩阵)与相关系数
    Linear_algebra_06_ 内积空间
    Linear_algebra_05_线性方程组的解理论
    Linear_algebra_04_向量空间
    Linear_algebra_03_矩阵
    Linear_algebra_02_行列式
  • 原文地址:https://www.cnblogs.com/baolin2200/p/15882172.html
Copyright © 2020-2023  润新知