Mapear uma porta do balanceador de carga do AWS ELB para equilibrar com várias portas de instância?

8

Digamos que eu tenha vários processos em execução em várias instâncias do EC2, cada uma em portas diferentes. Posso mapear um único AWS ELB para equilibrar com qualquer um desses processos em qualquer instância?

Por exemplo, eu gostaria idealmente de uma configuração 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

Existe alguma maneira de configurar o ELB assim? Estou tentando evitar a execução de um balanceador de carga em cada instância para equilibrar os processos dessa instância.

Sam
fonte

Respostas:

6

Atualização Importante

A oferta de serviço evoluiu, portanto, as seguintes informações (a resposta original) são aplicáveis ​​apenas ao ELB / 1.0, que agora é chamado de ELB Classic Load Balancer:


Não, isso não é possível com o ELB.

É possível mapear vários ouvintes na parte frontal de um ELB para atingir uma única porta nas instâncias de back-end, mas não é possível mapear um único ouvinte no lado da fonte de um ELB para atingir várias portas na parte traseira. instâncias finais.


ELB / 2.0, chamado Load Application Balancer foi lançado no final de 2016 e faz apoio múltiplas portas exemplo, usando "grupos-alvo".

Ele também permite o roteamento seletivo de solicitações por correspondência de padrões de caminho, suporta soquetes da Web no modo HTTP e HTTP / 2 na parte frontal.

Ao iniciar um balanceador, você ainda pode iniciar um Classic (ele ainda está disponível e o limite de porta de instância única por ouvinte ainda se aplica) ou pode iniciar um ALB para obter a nova funcionalidade.

Michael - sqlbot
fonte
E o NLB? O NLB não permite SSL, mas o ELB permite. No entanto, o NLB oferece suporte à adição de várias portas de instância ao LB, onde o ELB não. Existe maneira de suportar várias portas para LB com transporte SSL?
Haris Farooqui 25/08
1
@HarisFarooqui com NLB, o serviço em execução na sua instância precisa lidar com o SSL. Se você precisar de (a) transferência de SSL pelo balanceador, (b) para um protocolo diferente de HTTPS e (c) várias portas por instância, a AWS não possui uma solução de balanceador para isso.
Michael - sqlbot
0

Isso é possível com o Application Load Balancer (ALB)

A documentação da CLI está disponível aqui

A documentação da API está aqui

Você precisa procurar a opção de substituição de porta na documentação da API.

senhor dos pacotes
fonte