Я вижу, как много людей используют monit в сочетании с runit. Разве это не лишнее? В чем смысл использования runit? Это потому, что он более надежен при работе со службами (поскольку он не полагается на pid-файлы)?
Спасибо!
Я никогда не слышал о запустить его, но я тяжелый Монит пользователь ...
Смотря на runit
, Я вижу, что это замена init. Я бы сказал, что большинство корпоративных систем придерживаются своих значений по умолчанию Sys V init или Выскочка. Я не думаю, что это обычная практика.
Однако связь здесь может заключаться в том, что runit предоставляет удобный способ создания Monit и обеспечения его работы. Возможно, это похоже на запуск Monit из inittab. По сути, это «наблюдение за наблюдателем» или мониторинг вашей системы мониторинга.
На практике я использую Monit в качестве демона, и у меня не было проблем с его падением или отключением. Может быть, привлекательность runit
в том, что он предлагает дополнительную защиту.
Что касается Monit, он хорошо работает с сопоставление имени процесса с шаблоном вместо файлов PID.
runit хорошо подходит для управления службами и ведения журналов, а также хорошо поддерживает unix-way: легко комбинируйте простые части по мере необходимости. Он может выполнять некоторые проверки и обработку событий запуска / остановки службы, но вам придется написать все это самостоятельно. Примечание: runit не работает, если ваша служба не может работать на переднем плане.
monit подходит для управления службами (но не так хорош, как runit, потому что вам придется самостоятельно обрабатывать демонизацию и регистрацию), а также хорошо работает с самодемонизирующимися процессами, если они предоставляют правильный pidfile. С другой стороны, это действительно здорово для наблюдения за сервисами: обработка событий, проверка на утечки памяти и тому подобное. Также у него есть хорошая панель для просмотра состояний сервисов (как на основе командной строки, так и на основе Интернета) и коммерческая панель m / monit для получения данных с нескольких серверов.
Таким образом, использование runit + monit становится следующим: