[Sysadmins] зависание сервера (логи, сбор информации)
Yura Kalinichenko
=?iso-8859-1?q?yuk_=CE=C1_kalina=2Ein=2Eua?=
Пн Сен 1 11:03:51 MSD 2008
master altlinux пишет:
>> Последние 2 задания в этом списке довольно IO-ёмкие, попробуйте запустить
>> их вручную. Если зависнет, то проверьте железо.
>>
>>
>
> Я из запускал несколько раз сразу же после перезагрузки. Ни к чему не привело.
> Сегодня вышел в ночь. Все идеально. Ни один сервер не завис. Такое
> впечатление, что на это появлияли прикладные программы. В пятницу
> начался большой обмен данными и возможно это привело к падению. Сейчас
> поставил iozone гоняться. Потом буду память на всякий случай
> проверять.
> За любые идеи - предложения - респект...
У меня тоже куча серверов под M24. Периодически (похоже, после
logrotate) очень странно падает syslog: вроде как по всем признакам
живой, но в журналы ничего не пишется. При этом в системе начинаются
различные плоходиагностируемые глюки. Помогает вот такой скриптец,
пускаемый через cron:
#!/bin/sh
addr=root
# максимально допустимый промежуток времени отсутствия записей в syslog в секундах
MAX_DELTA_SEC=3600
/etc/init.d/syslogd status >/dev/null 2>&1
status=$?
if [ $status -eq 0 ]; then
# Получим дату/время из последней записи в syslog
last_log_date=`tail -n 1 /var/log/messages | awk '{printf "%s %s %s",$1,$2,$3}'`
if [ -n "$last_log_date" ]; then
# Преобразуем в секунды с 00:00:00 1970-01-01 UTC
last_log_date="`date --date="$last_log_date" +%s`"
current_date="`date +%s`"
delta=`expr $current_date - $last_log_date`
if [ $delta -gt $MAX_DELTA_SEC ]; then
status=2
fi
fi
fi
if [ $status -ne 0 ]; then
echo "syslogd is down. Try restart..." | mail -s "ERROR syslogd" $addr
/etc/init.d/syslogd restart >/dev/null 2>&1
fi
--
SY,
Yura Kalinichenko
Подробная информация о списке рассылки Sysadmins