Pull to refresh

Comments 21

Я возможно неуловил, но каков результат то?)
Результат однозначно положительный. Окончательная версия rc.d скрипта работает уже неделю. Аптайм процессов радует.
Занимался тем же для Ubuntu. Думаю, еще полезней было бы написать подобное, чтобы поднимать пачку скриптов в виде демонов из какого-нибудь конфига в виде node модуля.
Описанное решение позволяет запускать каждый node-процесс отдельно, вы просто создаёте для каждого процесса свой rc.d скрипт. Плюс в том, что rc.d позволяет вам прописать зависимости и обеспечить старт процессов в нужном порядке. При этом с forever у вас всегда остаётся централизованный инструмент для оценки состояния всех запущенных процессов, а также их группового перезапуска / остановки.
Нет, я думаю писать контроллер, с возможность мониторинга состояния запущенных демонов, скажем, через веб-интерфейс, ну или через любую панель управления.
Может стоит тогда форкнуть тот же forever и дописать к нему возможность отдачи состояния наблюдаемых процессов через те же сокеты?
Ну, в случае если бы мне нужен был только контроль над процессами я бы так и сделал. Но задача несколько сложнее: требуется наладить взаимодействие с процессами, чтобы не только запускать/останавливать процесс, но и выполнять различные операции внутри процессов. Например, запустить апдейт системы или сделать бэкап. Но это гипотетические задачи. А реально требуется переносимость, как минимум Ubuntu — CentOS — FreeBSD, поэтому делать сложную систему управления только для одной ОСи, как минимум невозможно ) вот и хочется все это дело на ноде реализовать.
Видимо, я не правильно выразился. Мне нужно не столько управление системой на уровне администратора, сколько няшная и максимально простая веб-панелька для девочек-менеджеров, чтобы они не вникая во все тонкости веб-технологий, жали бы «создать сайт», «запустить сайт», «добавить возможностей», ну, и т.п.

Кстати, не смотрели в сторону ajenti?
А, это действительно немного не то. Ajenti смотрел в демке, понравилось. Вроде как раз то для создания хостов из веб-интерфейса. Но для «добавить возможностей» видимо придётся дописывать модули.
Я уверен что уже есть и будет ещё написана куча подобных инструментов. Но моя цель была решить конкретную задачу, а не попробовать всё что только можно. Результат работы forever меня более чем устроил.

Если у вас есть решение на базе supervisord — поделитесь. Напишите в чём плюсы, в чём минусы. Это всегда интересно.
Я использую его для gunicorn проектов.
Удобства? Отделение от rc.d (один процесс, запускает остальные)
Плюсы в логгировании данных, хттп демоне с авторизацией и xmlrpcd.
внизу конфиг для супервизора notes.sovechkin.com/post/3180299453
минусы не знаю, работает как часы уже год. То что падает, моментально поднимает
UFO landed and left these words here
Установить локально в каталог проекта:

npm install forever

или глобально:

npm -g install forever
forever не плох, но он к сожалению при запуске чего-либо не проверяет запущено ли уже это самое чего-либо, хотя мог бы это делать по имени скрипта :(
Sign up to leave a comment.

Articles