Nginx + IIS

Добр день.

Есть несколько интернет магазинов крутящихся на IIS (3 сервера по 4-5 сайтов + sql сервер) При штатной нагрузке процы - 80-85 процентов. Новые железки для сайтов в бюджете на следующий год. Но проблемы есть уже сейчас и надо их решать.
Есть нехорошие парни устраивающие DDOS на сайты.
Ранее кое как спасались cisco asa и программеры что-то у себя ковыряли на сайтах, но накал страстей усиливается и сайты иногда ложатся.

Родилась мысль об установке впереди серверов с IIS, один сервер с nginx + скрипты для бана ip участников ботнета

Рассчитываю убить несколько зайцев. И DDOS атаки прекратить и сервера с IIS разгрузить. Верно мыслю или нужно какое то другое решение?
Идея хорошая. Только для балансировки мы использовали нестандартный модуль в nginx, где-то на их сайте или форуме найти можно. Но вы подумайте как фермы будут синхронизироваться, если что, в частности сохранение сессий (которые тот же PHP пишет в файлы). Тут помочь может memcache. В общем кури, будет маленькая такая ферма :)
systemd должен умереть.
Я планировал поднять nginx, перенаправить входящий трафик с циски на него, на nginx указать один из ip сайтов.
Входящий трафик с другого ip - на другой сайт. И тд.

Интересно, нужно ли что либо подкручивать в IIS чтобы он статику не отдавал, а только генерируемый контент? Или тупо воткнул nginx, настроил (указал где IIS находится) и поехали?

Балансировки, фермы с синхронизацией? Раскидывание входящих соединений по back-end? Если не лень, расскажи поподробнее.

мини фрема - два экземпляра сайта + nginx с heartbeat до них и проксирование?
про IIS ничего не знаю. А nginx ты можешь сказать за статикой не ломиться к бакендам, но тогда нужно будет общие дирки шарить, nfs делать.

не расскажу, подзабыл изрядно, покури в общем там все достаточно просто, хотя местами сложно бывает. да. Если ты просто сибираешься раскидывать соединения по разным серверам, тебе там ничего городить. Если у тебя сайт будет на двух серверах (типа и доступность в теме), то тут начинать думать можно,самое простое: настроить певый клиент на первый и с ним работает, второй - на второй и т.д. тут тоже сессии мучить не придется. Если все в реальной динамике - то думай как сессии делать шаренными между серверами (я говорю - у нас мемкеш использовался). Кстати, nginx ничего не знает о загруженности бакенда, он только может сортировать запросы, при неполучении ответа заносить в блек-лист ну и т.д.
systemd должен умереть.
 
Зарегистрироваться или войдите чтобы оставить сообщение.