Я собираюсь преобразовать односерверное веб-приложение с одной базой данных в физически распределенную высокодоступную конфигурацию с серверами в двух физических местах (пока). Теперь, очевидно, мне нужен балансировщик нагрузки (в данном случае больше похожий на обратный прокси, но для простоты я назову его «балансировщиком нагрузки»), который будет маршрутизировать запросы для mywebsite
либо node1.mywebsite
или node2.mywebsite
. Однако я предполагаю, что серверы с высокой доступностью бесполезны, если мой балансировщик нагрузки выйдет из строя. Поэтому, как я думал, мне действительно понадобятся два балансировщика нагрузки, по одному в каждом месте. Однако мне все равно нужна одна внешняя точка доступа, поэтому мне понадобится балансировщик нагрузки для балансировщиков нагрузки, который, в свою очередь, должен быть сбалансирован между местоположениями ... это продолжается и продолжается.
Так что же не так с моими рассуждениями? Как я могу обеспечить высокую доступность моих балансировщиков нагрузки на практике, предполагая, что каждое физическое местоположение может быть отключено от питания на длительный период времени?
PS: Я осознаю тот факт, что мое понимание различия между высокой доступностью и балансировкой нагрузки в лучшем случае посредственное. Я хочу, чтобы сервер был доступен даже при отключении питания в одном месте. Спасибо за Ваше понимание.
Вы не можете, поэтому балансировка нагрузки не имеет ничего общего с доступность.
Вы можете выполнить грубую HA и балансировку с помощью циклического DNS, прикрепив его перед вашими балансировщиками нагрузки.
Двух балансировщиков нагрузки должно хватить. Вы будете использовать только один балансировщик нагрузки за раз. Имя mywebsite должно соответствовать VIP, назначенному одному из балансировщиков нагрузки.