Методология балансировки нагрузки (L4, L7) и AWS

#amazon-web-services #load-balancing #aws-load-balancer

Вопрос:

Недавно я пытался наверстать упущенное в области внутренних устройств балансировки нагрузки и нашел эту замечательную статью

Но это заставило меня задуматься о большем количестве вопросов, чем раньше;)

До сих пор я понимал, что если мы говорим о L4 фунтах, мы можем различать:

  • Тип завершения LB — создает для каждого входящего соединения новое для бэкенда.
  • Тип передачи LB — который может быть разделен на NAT или на прямую маршрутизацию (в конечном итоге с туннелированием)
  1. Теперь один из моих вопросов, который пришел мне в голову, заключается в том, как он вписывается в мир AWS — какой тип LB в этом случае является балансировщиком сетевой нагрузки AWS?

Следующее, что касается L7 фунтов.

  1. Уровень 7 LB также зависит от NAT или прямой маршрутизации? Или это совершенно за пределами этого? Когда вокруг слоя 4 довольно много материалов, обычно слой 7 действительно беден с точки зрения надлежащих статей, охватывающих внутренние компоненты — я знаю только лучшие продукты, такие как: haproxy или nginx, но все равно не понимаю разницы между ними 🙁

Я буду очень благодарен всем, кто мог бы дать мне хоть какой-то совет, как соединить точки там 🙂

Ответ №1:

какой тип LB является балансировщиком сетевой нагрузки AWS в этом случае?

Балансировщик сетевой нагрузки-это балансировка нагрузки уровня 4, проверьте информацию, представленную в документах amazon:

Балансировщик сетевой нагрузки функционирует на четвертом уровне модели взаимосвязи открытых систем (OSI). Он может обрабатывать миллионы запросов в секунду. После того как балансировщик нагрузки получит запрос на подключение, он выберет цель из целевой группы для правила по умолчанию. Он пытается открыть TCP-соединение с выбранной целью на порту, указанном в конфигурации прослушивателя. https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html

По второму вопросу.

Уровень 7 LB также зависит от NAT или прямой маршрутизации? Или это совершенно за пределами этого?

В мире Amazon балансировщик нагрузки приложений является единственным, который поддерживает уровень 7 фунтов и работает так, как указано в статье

«Клиент устанавливает одно TCP-соединение HTTP/2 с балансировщиком нагрузки. Затем балансировщик нагрузки переходит к созданию двух внутренних подключений»

Таким образом, для клиента существует прямое соединение с балансировщиком нагрузки, и это соединение разделяется для обслуживания в внутренних пулах.

Комментарии:

1. Извините, возможно, за не совсем четко сформулированный вопрос — я знал, что NLB — это уровень 4, — но все же мне очень любопытно, как именно NLB в AWS отправляет трафик-если он прекращен и восстановлен или он проходит (поэтому соединение изменяется на лету, чтобы принять IP — адрес назначения и IP-адрес источника-NAT)