管理Supervisord流程 - 启动时自动启动/崩溃时自动启动

时间:2017-02-16 07:35:04

标签: linux unix ansible supervisord

我们正在使用Supervisord进行apache服务器进程监控。

因此,我希望以下两种方案始终保持主管流程:

  1. 服务器重启时自动启动主管(没有init.d帮助)
  2. 自动启动管理程序进程在运行时崩溃。
  3. 我们还安装了ansible。

    如果有人可以分享他们的想法,那将是非常好的。

1 个答案:

答案 0 :(得分:1)

我将从ansible开始 - 您可以使用它来安装supervisor(例如使用apt模块,如果必须,请使用yum module):

- name: Install Supervisord
  apt: name=supervisor state=present update_cache=yes
  become: yes

并部署必要的管理程序配置文件(使用copy module)。

- name: Deploy config file
  copy: src=yourconfigfile.conf dest=/etc/supervisor/conf.d/apache.conf mode=644
  become: yes

要自动启动主管,您只需启用它(您可以使用service module - 启用:是)。要让主管控制程序自动启动和自动重新启动,请在程序配置文件中设置正确的指令。例如:

[program:apache]
command=apache2ctl -c "ErrorLog /dev/stdout" -DFOREGROUND
# this would autostart apache
autostart=true
# this would autorestart it if it crashes
autorestart=true
startretries=1
startsecs=1
redirect_stderr=true
stderr_logfile=/var/log/myapache.err.log
stdout_logfile=/var/log/myapache.out.log
user=root
killasgroup=true
stopasgroup=true