>_ IzzyLab

Практическое задание

Группа сервисов в supervisor

сложно

Под управлением supervisor должны работать две программы: web (/usr/local/bin/webd) и worker (/usr/local/bin/workerd), обе с автоперезапуском. Настрой и запусти обе.

Что потренируешь:
  • supervisor
  • менеджер процессов
  • автоперезапуск
  • supervisorctl

Разбор темы

supervisor — менеджер процессов: запускает программы, следит за ними и поднимает после падения, что удобно для демонов, не умеющих работать как системный сервис. Каждая программа описывается блоком [program:ИМЯ] в файле внутри /etc/supervisor/conf.d/; обязательны строка command= с путём к бинарнику и директива автоперезапуска. Здесь нужны два независимых блока (web и worker) — их можно держать в одном файле или в двух. Чтобы supervisor подхватил новые конфиги без полного рестарта, используют supervisorctl reread и update, а статус смотрят через supervisorctl status.

Что проверяется

  1. программа web в состоянии RUNNING
  2. программа worker в состоянии RUNNING

Как это выглядит