Supervisor - 子进程

管理应用程序

  • supervisord启动应用程序进程,作为自己的子进程,并管理子进程的整个声明周期;
  • 当某个子进程退出时,supervisord会收到SIGCHLD 信号,并执行相应的操作;
  • 应用程序进程必须前台方式启动,supervisord会将他们转为后台;
[program:apache2]
command=/path/to/httpd -c "ErrorLog /dev/stdout" -DFOREGROUND
redirect_stderr=true

[program:postgres]
command=/path/to/postmaster
; 注释we use the "fast" shutdown signal SIGINT
stopsignal=INT
redirect_stderr=true

 

  • supervisord开启mysql的进程,会忽略supervisord发送的信号,需要使用pidproxy代理,pidproxy是安装supervisor时自动配置的一个控制脚本;
    在这里插入图片描述
[program:mysql]
command=/usr/bin/pidproxy /var/run/mysqld/mysqld.pid /usr/bin/mysqld_safe

 

  • 设置应用程序的环境变量
    • 在开启supervisord的shell中设置,会被所有子进程继承;
    • 在配置模块[supervisord]中的environment处设置;
    • 在配置模块[program:x]中的environment处设置;

 

  • 子进程的状态
    • STOPPED (0),停止状态;

    • STARTING (10),启动过程状态;

    • RUNNING (20),稳定运行状态;

    • BACKOFF (30),本次启动失败;

    • STOPPING (40),停止过程状态;

    • EXITED (100),从运行状态退出;

    • FATAL (200),指定启动次数均失败,进入无法成功启动状态,该状态无法自动重启,必须手动重启;

    • UNKNOWN (1000),未知错误;

    • 在这里插入图片描述

 

活动日志与子进程日志

pending

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值