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

Могу ли я выполнить балансировку нагрузки высокой доступности с помощью ldirectord, используя только 2 сервера?

Мне удалось настроить кластер кардиостимулятора с виртуальным IP-адресом и виртуальным экземпляром ldirectord, собрав информацию из Вот, Вот и Вот. Кажется, что правильный способ использования ldirectord состоит в том, чтобы иметь два сервера балансировки нагрузки перед двумя серверами apache, а затем выполнять некоторые трюки arp, чтобы серверы Apache отвечали на виртуальный IP-адрес.

В соответствии с это сообщение в блоге (начиная с «традиционного способа»), эти уловки arp не будут работать при установке с двумя серверами и могут вызвать бесконечные циклы. Затем он предлагает какое-то решение, которое я не полностью понял, но которое зависит от keepalived.

Итак, мой вопрос: можно ли использовать кластерный ldirectord для балансировки нагрузки между экземплярами apache на одних и тех же двух серверах? подобно эта картинка?

Keepalived - это другой проект, чем сердцебиение.

Я обычно использую Heartbeat для высокой доступности. Для пульса вы можете определить ресурсы, которые будут принадлежать одной машине за раз. VIP - это один из этих ресурсов, который может «перемещаться» с одной машины на другую. AFAIK, пакет heartbeat не обеспечивает балансировку нагрузки. Чтобы реализовать балансировку нагрузки, я могу использовать другой пакет, например haproxy.

Да, можно использовать одни и те же два сервера в качестве балансировщика нагрузки и веб-сервера.

Используйте keepalived.

В настоящее время это предпочтительное программное обеспечение, ldirectord не обслуживается уже несколько лет.

И да, можно запустить установку с двумя узлами.

Однако каждый настоящий кластеру требуется как минимум три узла.