Software VS Hardware Load balancer?

Задача: Необходимо сделать отказоустойчивый Load Balancer (LB) для веб серверов.

Варианты:

1. Software:

HAProxy на двух нодах + keepalived. Неясным остается вопрос DNS: если использовать A-record для Master ноды, то при физическом падении мастера, слейв никак не сможет занять его место — нет записи в DNS. Если создать две A-records, то при падении одного сервера половина запросов будет пытаться достучаться до упавшего сервера, т.к. на уровне DNS используется RoundRobin.


2. Hardware:

Взять в аренду датацентра железку. Минус — придется платить за трафик, проходящий через балансировщик.


3. Advanced Software:

Использовать две A-records + сервер мониторинга. При алерте мониторинг сервер через API удаляет запись для упавшего LB. Минус — IP адрес остается в кеше пользователей ещё некоторое время.


Собственно вопрос:

кто и как балансирует нагрузку с избыточностью для веб-серверов?


Заранее спасибо за ответы.
  • Вопрос задан
  • 3886 просмотров
Пригласить эксперта
Ответы на вопрос 2
@rgaliull
вариан с днс отбросьте совсем ввиду повального кеширования днс запросов у провайдеров.
Если вы пока только прицениваетесь, то рекомендую начать с облачного балансера от rackspace or amazon
Ответ написан
@bondbig
Железка самый лучший вариант, хотя смотря какая, правда. У приличных, типа цитрикс нетскэйлера, брокады, радваре, эфпять, циски и крещенды есть нормальная кластеризация самих балансировщиков, падение одной железки незаметно невооруженным глазом. Что у вашего провайдера — не знаю.
Софт с костылями в днс и апи — запасной, эконом-вариант. Можно добиться даунтайма в две минуты, выставив минимальный TTL=60 секунд в ДНС. Но если аудитория очень обширная (миллионы пользователей), то начнут проявляться глюки кеширования в некоторых приложениях и операционках, не блюдущих RFC1034.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы