name: Развертывание с Supervisord
sort: 2
Supervisord
Supervisord - очень полезный процесс менеджер написанный на Python. Supervisord может преобразовать non-daemon приложение в daemon приложение.
Установка Supervisord
Установка setuptools
wget https://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.eggsh setuptools-0.6c11-py2.7.eggeasy_install supervisorecho_supervisord_conf >/etc/supervisord.confmkdir /etc/supervisord.conf.d
Настройка
/etc/supervisord.conf[include]files = /etc/supervisord.conf.d/*.conf
Создайте новое приложение для управления
cd /etc/supervisord.conf.dvim beepkg.conf
Настройка:
[program:beepkg]directory = /opt/app/beepkgcommand = /opt/app/beepkg/beepkgautostart = truestartsecs = 5user = rootredirect_stderr = truestdout_logfile = /var/log/supervisord/beepkg.log
Управление с Supervisord
Supervisord предоставляет две команды, supervisord и supervisorctl:
- supervisord: Инициализирует Supervisord, запустит конфигурируемый процесс
- supervisorctl stop programxxx: Остановит programxxx. programxxx is configed name in [program:beepkg]. Here is beepkg.
- supervisorctl start programxxx: Запустить процесс programxxx.
- supervisorctl restart programxxx: Перезапустит процесс programxxx.
- supervisorctl stop groupworker: Перезапустит все процессы в группе groupworker
- supervisorctl stop all: Остановит все процессы. Заметка: start, restart и stop не перезапустят последний конфиг.
- supervisorctl reload: Перезапустит последнюю конфигурацию.
- supervisorctl update: Перезапустит все процессы, в которых был иземенен конфиг.
Заметка: Процессы остановленные вручную с помощью
stopне будут перезапущены после reload или update.
