Вопрос о действиях демона SendMail при средней нагрузке
Мой сервер sendmail начал отклонять соединения, потому что средняя загрузка была слишком высокой (из-за спама, который с тех пор был решен).
Error was: sendmail[13400]: rejecting connections on daemon MTA: load average: 50
Я хотел бы лучше понять это поведение.
- Где установлен этот порог?
- Что означает "средняя нагрузка"?
- Как часто рассчитывается средняя нагрузка?
- Есть ли способ активно контролировать это? Или получать оповещения, когда средняя нагрузка приближается к высокому значению? Очевидно, sendmail предоставит подключающемуся MTA класс 4.0.0 dsn, но я искал какой-то механизм оповещения.
Спасибо,
M
Привет, ребята,
Я думал, что столкнусь с этим еще раз, когда увидел, что он снова всплыл. Проблема, с которой я сейчас сталкиваюсь, заключается в том, что сообщения, находящиеся в очереди из-за превышения средней нагрузки, не отправляются повторно (даже после того, как производительность возвращается к приемлемым уровням.
Спасибо,
M
1 ответ
Средняя загрузка системы - это показатель производительности, используемый для представления объема работы системы. Когда вы входите на свой почтовый сервер (в предположении системы типа UNIX), вы можете ввести команду uptime, чтобы увидеть среднее значение загрузки за последнюю минуту, 5 минут и 15 минут. Вот пример с рабочего сервера:
sh$ uptime
10:53am up 248 day(s), 36 min(s), 12 users, load average: 0.28, 0.29, 0.30
Таким образом, 5-минутное среднее значение нагрузки составляет 0,28, среднее значение нагрузки за последние 5 минут - 0,29 и т. Д. В этом случае вы можете видеть, что нагрузка системы со временем немного снижается.
Как правило, вам нужно поддерживать нагрузку на сервер ниже 1. Но это не всегда так во всех случаях. Если вы посмотрите на сервер (ы) некоторое время, вы начнете видеть, что такое разумная нагрузка. Это, наверное, самый простой способ понять это, просто наблюдая за этим в реальном мире. Тем не менее, как рассчитать среднее значение нагрузки на самом деле довольно сложно, но если вам интересно, я рекомендую ознакомиться со следующей статьей о том, как Linux рассчитывает его:
http://www.linuxjournal.com/article/9001
Теперь вернемся к sendmail. Sendmail может быть сконфигурирован только для того, чтобы помещать в очередь сообщения или выводить отклоненные сообщения, когда средняя загрузка (LA) становится слишком высокой. Идея состоит в том, что это не позволит sendmail разрушить всю вашу систему. Если он слишком рано отказывается от подключения, есть две настройки, которые вы можете посмотреть в sendmail.cf:
O QueueLA=8 - load average at which Sendmail queues new messages
O RefuseLA=12 - load average at which Sendmail rejects connections
Поиск в Google, приведенный выше, вернул страницу с некоторыми инструкциями по изменению этих параметров (при использовании макросов M4), которые могут быть полезны: