¿Asigna un puerto de equilibrador de carga de AWS ELB para equilibrar a múltiples puertos de instancia?

8

Digamos que tengo múltiples procesos ejecutándose en múltiples instancias EC2 cada uno en diferentes puertos. ¿Puedo asignar un solo AWS ELB para equilibrar cualquiera de estos procesos en cualquier instancia?

Por ejemplo, idealmente me gustaría una configuración como esta:

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

¿Hay alguna forma de configurar ELB como este? Estoy tratando de evitar ejecutar un equilibrador de carga en cada instancia para equilibrar los procesos de esa instancia.

Sam
fuente

Respuestas:

6

Actualización importante

La oferta de servicios ha evolucionado, por lo que la siguiente información (la respuesta original) solo es aplicable a ELB / 1.0, que ahora se llama ELB Classic Load Balancer:


No, esto no es posible con ELB.

Puede asignar múltiples oyentes en la parte frontal de un ELB para alcanzar un solo puerto en las instancias de back-end, pero no puede asignar un solo oyente en el lado de la fuente de un ELB para alcanzar múltiples puertos en la parte posterior. instancias finales.


ELB / 2,0, llamada aplicación de la carga de equilibrador fue lanzado a finales de 2016 y hace de apoyo múltiples puertos de instancia, el uso de "grupos objetivo."

También permite el enrutamiento selectivo de solicitudes por coincidencia de patrones de ruta, admite sockets web en modo HTTP y HTTP / 2 en la parte frontal.

Al iniciar un equilibrador, aún puede iniciar un clásico (todavía está disponible, y todavía se aplica el límite de puerto de instancia única por oyente) o puede iniciar un ALB para obtener la nueva funcionalidad.

Michael - sqlbot
fuente
¿Qué hay de NLB? NLB no permite SSL pero ELB sí. Sin embargo, NLB admite agregar múltiples puertos de instancia a LB donde, como ELB, no. ¿Hay alguna forma de soportar múltiples puertos para LB con transporte SSL?
Haris Farooqui
1
@HarisFarooqui con NLB, el servicio que se ejecuta en su instancia debe manejar el SSL. Si necesita (a) una descarga SSL por parte del equilibrador, (b) para un protocolo que no sea HTTPS y (c) múltiples puertos por instancia, AWS no tiene una solución equilibradora para esto.
Michael - sqlbot
0

Esto es posible con Application Load Balancer (ALB)

La documentación de CLI está disponible aquí

La documentación de la API es aquí.

Debe buscar la opción de anulación de puerto en la documentación de la API.

señor del paquete
fuente