#amazon-web-services #load-balancing #aws-load-balancer
Вопрос:
Недавно я пытался наверстать упущенное в области внутренних устройств балансировки нагрузки и нашел эту замечательную статью
Но это заставило меня задуматься о большем количестве вопросов, чем раньше;)
До сих пор я понимал, что если мы говорим о L4 фунтах, мы можем различать:
- Тип завершения LB — создает для каждого входящего соединения новое для бэкенда.
- Тип передачи LB — который может быть разделен на NAT или на прямую маршрутизацию (в конечном итоге с туннелированием)
- Теперь один из моих вопросов, который пришел мне в голову, заключается в том, как он вписывается в мир AWS — какой тип LB в этом случае является балансировщиком сетевой нагрузки AWS?
Следующее, что касается L7 фунтов.
- Уровень 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)