Пытаюсь понять, как работает балансировка нагрузки. Я прочитал основы, но не понимаю, как балансировщик нагрузки не выходит из строя из-за всего трафика.
Допустим, у меня есть 1 сервер балансировки нагрузки и 3 обычных сервера. 3 обычных сервера имеют разные IP-адреса. Балансировщик нагрузки делит трафик между 3.
Если балансировщик нагрузки действует в определенном смысле как «обратный прокси», как он может обрабатывать весь трафик, поскольку один веб-сервер не может, поскольку необходимы 3?
Я знаю, что у вас может быть несколько балансировщиков нагрузки. но как балансировщик нагрузки не страдает от случайной DDOS-атаки, если весь трафик проходит через этот 1 сервер?
Заранее спасибо.
Балансировщик нагрузки не выполняет столько же обработки, сколько каждый из этих внутренних серверов.
Можно выполнить DDoS-атаку на балансировщик нагрузки, так же как это можно сделать для DDoS-атаки на любой другой сервер, но на самом деле балансировщик нагрузки просто проверяет заголовок «Host:» и / или обрабатывает сеансы SSL (при условии, что вы также используете балансировщик нагрузки в качестве конечной точки SSL), тогда как фактические серверы приложений должны обрабатывать логику приложения, читать с диска, базы данных и т. д.
Если бы серверы приложений просто обслуживали одну и ту же строку для каждого соединения, тогда да, балансировщик нагрузки был бы бессмысленным.
Интересно, что некоторым балансировщикам нагрузки даже не нужно проверять запросы на уровне приложения. Благодаря Прямой возврат сервера (DSR), вы можете балансировать нагрузку на Уровень IP. У этого есть преимущества и недостатки; с одной стороны, методы ускорения приложений (такие как обработка сеансов SSL) не могут быть реализованы на балансировщике нагрузки на уровне IP. С другой стороны, балансировщику нагрузки не нужно обслуживать ответные пакеты (за исключением, возможно, ICMP), поэтому на самом деле ему не нужна большая исходящая пропускная способность, и (как и раньше) ему требуется только достаточная входящая пропускная способность для обработки входящих трафик приложений.
С другой стороны, если вы действительно имеете дело с огромным объемом трафика, вы можете использовать все эти методы одновременно; вы можете использовать DNS для распределения нагрузки по кластерам, каждый кластер может иметь обратный прокси-сервер уровня IP, поддерживаемый обратными прокси-серверами уровня приложения.