Кластер Mongrel автоматически останавливается на экземпляре EC2 под управлением Debian 5.0.1
Проблема возникает не очень часто, но, тем не менее, она, безусловно, существует, и я не уверен, с чего начать. Я собрал PID для mongrel в /var/log/, и единственные сообщения, которые их содержали, это:
Jun 7 07:46:24 staging kernel: 4gb seg fixup, process mongrel_rails (pid 29498), cs:ip 73:00937a5c
Это как-то связано с конкретной версией Xen libc
, но это не критично, и процессы все еще работают с этими сообщениями, накапливающимися в kern.log
Я на самом деле ищу не только конкретное решение (которое, вероятно, не может быть предоставлено из приведенного выше описания), но и любые советы о том, как настроить мониторинг или расследовать такие случаи.
4 ответа
Не совсем ответ, но вы должны использовать дворнягу? Я переключился на apache + passenger и никогда не оглядывался назад.
Мы используем nagios для мониторинга наших дворняжек (наряду с сотнями других сервисов).
Он просто проверяет, есть ли на каждом из необходимых портов запущенные процессы. Если нет, он перезапускает их.
Вы можете посмотреть на бога, чтобы контролировать и управлять своими дворнягами. Он достаточно гибкий, и вы можете использовать его для перезапуска на основе определенных пороговых значений, таких как объем памяти, загрузка процессора, колебание и многое другое. Вы могли бы также рассмотреть monit, который я знаю о людях, использующих, чтобы заменить Бога.
У меня были эти сообщения, когда libc6-xen не был установлен в xen domU. Итак, убедитесь, что у вас установлен этот пакет...
apt-get install libc6-xen
Когда используется другой вариант libc, он все равно будет работать, но он будет работать медленнее, поскольку ядро должно отлавливать плохую операцию и вместо этого делать правильные вещи. Цитируемое сообщение генерируется ядром именно в этой ситуации.
Таким образом, вы догадались, это не объясняет, почему шавка останавливается. Проверьте документацию mongrel, чтобы включить журналы отладки, если таковые имеются. В противном случае вы всегда можете попытаться ограничить процесс, пока он не потерпит неудачу... конец журнала даст вам подсказки о том, как он терпит неудачу, и, возможно, вы поймете, почему.