Назад | Перейти на главную страницу

Как сбалансировать внутреннюю нагрузку SMTP?

Мы используем IIS SMTP для отправки электронной почты для веб-приложения. Если я подниму другой сервер, что будет лучшим способом сбалансировать их внутреннюю нагрузку, чтобы они оба привыкли, и если один выйдет из строя, другой продолжит работу? Насколько я понимаю, простое создание еще одной записи DNS Windows не решит проблему из-за кеширования. Мы используем брандмауэры SonicWall, которые могут выполнять внешнюю балансировку нагрузки, я не уверен, можно ли их использовать для того же внутри или можно сделать что-то еще, может быть, NLB?

Мы говорим только об исходящей почте? (Входящая почта сопряжена с гораздо более сложным набором проблем, которые необходимо решить.)

Балансировщик нагрузки TCP ("Layer 4") прекрасно решит вашу проблему. Возможно, как упоминал @HBruijn, это может быть возможно с использованием ваших существующих SonicWalls. В противном случае я предпочитаю инструмент HAProxy (который выполняет как уровень 7, так и уровень 4 LB).

Собственная функция балансировки сетевой нагрузки Windows де-факто также является LB уровня 4, так что это возможно, если вы хотите решить проблему с тем, что у вас уже есть.

(Однако обратите внимание, что если вы заносите отправителей в белый список на основе их IP-адресов, а не с помощью аутентификации, этот белый список должен существовать и управляться на LB, если вы используете отдельный, если только SMTP-сервер не соблюдает протокол Proxy. В противном случае SMTP-сервер будет видеть только активный в данный момент узел LB в качестве отправителя, что противоречит цели белого списка.)