
Допустим, у меня есть несколько процессов, запущенных на нескольких экземплярах EC2, каждый на разных портах. Могу ли я сопоставить один AWS ELB для балансировки с любым из этих процессов на любом экземпляре?
Например, мне бы в идеале хотелось такую настройку:
HTTPS 443 -> Instance 1 Process 1 Port 8081
or -> Instance 1 Process 2 Port 8082
or -> Instance 2 Process 1 Port 8081
or -> Instance 2 Process 2 Port 8082
Есть ли способ настроить ELB таким образом? Я пытаюсь избежать запуска балансировщика нагрузки на каждом экземпляре, чтобы сбалансировать процессы этого экземпляра.
решение1
Важное обновление
Предложение услуг претерпело изменения, поэтому следующая информация (исходный ответ) применима только к ELB/1.0, который теперь называется ELB Classic Load Balancer:
Нет, с ELB это невозможно.
Вы можете сопоставить несколько прослушивателей на передней стороне ELB для обращения к одному порту на внутренних экземплярах, но вы не можете сопоставить один прослушиватель на стороне шрифта ELB для обращения к нескольким портам на внутренних экземплярах.
ELB/2.0, называетсяБалансировщик нагрузки приложенийбыл выпущен в конце 2016 года иделаетподдержка нескольких портов экземпляров с использованием «целевых групп».
Он также позволяет осуществлять выборочную маршрутизацию запросов путем сопоставления шаблонов путей, поддерживает веб-сокеты в режиме HTTP и HTTP/2 на передней стороне.
При запуске балансировщика вы по-прежнему можете запустить Classic (он по-прежнему доступен, и ограничение на количество портов для одного экземпляра на прослушиватель по-прежнему действует) или вы можете запустить ALB, чтобы получить новые функциональные возможности.