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

Веб-службы балансировки нагрузки

У меня здесь немного другой подход к балансировке нагрузки, он больше касается обслуживания и обеспечения высокой доступности в приложении, а не на физическом хосте.

Скажем, у меня есть 2 веб-службы, которые я развертываю на 2 веб-серверах. Пока что легко настроить HAProxy для балансировки нагрузки между ними и направления трафика на любой из хостов. Что я хотел бы сделать, так это иметь возможность остановить одну из веб-служб на хосте, которая должна делать прямые вызовы LB на другой хост, не затрагивая другую веб-службу.

Поэтому я бы остановил WS1 на Host1, и LB направил бы трафик на WS1, работающий на Host2, но WS2 по-прежнему будет работать на обоих хостах.

Похоже, что уже есть сообщение servervault, которое отвечает на этот вопрос, если я понимаю, о чем вы спрашиваете?

Есть ли балансировщик нагрузки, который позволит мне вручную отключить сервер при развертывании?

Мы используем очень похожую настройку с Windwos Network Load Balancer, и остановка утечки отлично работает.

Изменить 1:

Итак, несколько вещей:

  1. Рекомендуется группировать похожие серверы. Итак, если у вас есть веб-сайты A, B и C. Те же самые веб-сайты должны находиться на всех серверах в кластере с балансировкой нагрузки. У вас не должно быть настройки, в которой сервер 1 содержит сайты A и B, а сервер 2 содержит сайты A и C. Причина, по которой я упомянул это, как и в вашем примере, не имеет значения, если вы выгрузили весь сервер, даже если он работать только на одном сайте. Фактически, с IIS я бы очень рекомендовал это (при условии, что вы используете IIS).
  2. Независимо от пункта 1, что вы могли бы сделать, это иметь отдельный IP-адрес с балансировкой нагрузки для каждой «веб-службы», а затем вы могли бы остановить каждый отдельный сайт. Я не думаю, что вы могли ожидать, что у вас будет один IP-адрес с балансировкой нагрузки, который будет использоваться несколькими сайтами и ожидайте, что сможете остановить только один. Однако я не очень-то заинтересован в HAproxy, и мне пришлось бы копаться в MS NLB, чтобы подтвердить это.

Это вообще помогает?

haproxy поддерживает это - проверьте его функцию «проверки работоспособности».