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

Эквивалент Windows NLB для Linux

В Windows мы можем настроить балансировку нагрузки для произвольных IP-служб, просто установив NLB и выбрав, какие узлы мы хотим в кластере. Он выполняет некоторое изменение MAC-адреса, а затем имеет алгоритмы, определяющие, какой узел обрабатывает входящий запрос.

Есть ли эквивалент производственного уровня для Linux? Мне не нужно что-то, для чего требуется, чтобы передний сервер физически (по сети) находился перед машинами (как это делают некоторые аппаратные LB и Linux Virtual Server, AFAIK). Я хочу что-то, что будет действовать аналогично Microsoft NLB - выберите N узлов, все они прослушивают один и тот же IP-адрес и разделяют входящие запросы.

видеть: http://lnlb.sourceforge.net/

Кажется, это именно то, о чем вы просите.

Эта страница суммирует это как: общий IP-адрес, совместно используемый всеми узлами (на виртуальном интерфейсе). Все, что вам нужно сделать, это привязать виртуальный интерфейс, все остальное сделает драйвер.

Это очень похоже на Windows NLB.

Если вам нужна балансировка нагрузки, такая как NLB, вам следует взглянуть на clusterip в iptables. -> http://security.maruhn.com/iptables-tutorial/x8906.html

Он делает то же самое, только отсутствует часть аварийного переключения, но, возможно, для этого существуют какие-то инструменты.

  • Если вас интересуют решения BSD - см. CARP, Linux, как я только что узнал, имеет порт под названием UCARP
  • О балансировке нагрузки на уровне DNS см. CDN rfc3568, но будьте осторожны - DNS-lb вроде как инертный
  • LVS по-прежнему хорош, так что - проверить это

Вот некоторые из них, которые люди считают неплохими в сообществе Linux (за исключением LVS по вашему запросу). Я лично использовал только HAProxy, поэтому ваш опыт может отличаться.

HAProxy
Баланс

Поддерживает балансировку нагрузки только для запросов http / https:

Фунт
PLB - Чистый балансировщик нагрузки

Циклический DNS был бы самым простым решением, но, возможно, он слишком прост для ваших требований.

LVS по-прежнему актуален - вам не нужно устанавливать его на отдельном оборудовании, чтобы он балансировал нагрузку на входящие запросы. Фактически, вы все еще думаете о балансировщике нагрузки и серверных службах как о разных вещах, но они просто устанавливаются на одних и тех же физических хостах.