Conectando o balanceador de carga de aplicativos voltado para o público a um balanceador de carga particular

1

Estou usando o AWS e tentando remapear um aplicativo enorme para pequenas partes - em resumo: estou transformando um aplicativo monolítico para um baseado em micro-serviço.

Por isso, quero usar um balanceador de carga voltado para o público, no qual posso rotear alguns caminhos para outros ambientes.

Por exemplo:

domain.com/service1 para outro aplicativo com carga balanceada no Elastic Beanstalk e

domain.com/service2 para outro aplicativo com carga balanceada no Elastic Beanstalk também.

Consegui conectar o Application Load Balancer a outra instância do EC2. Mas tentei sem sucesso conectá-lo a outro Load Balancer criado pelo Elastic Beanstalk.

Alguém tem algumas ideias sobre como fazer isso?

    
por Tulio Faria 01.07.2017 / 04:09

1 resposta

0

Você não encontrará suporte para isso nativamente com o conjunto de recursos ELB e Elastic Beanstalk.

Eu sugeriria o encaminhamento baseado em caminho usando o HAProxy para enviar tráfego para seus aplicativos do Elastic Beanstalk. Você desejará executá-lo em um par de instâncias do EC2 localizadas atrás de um ELB clássico simples, executando uma verificação de integridade em relação ao próprio HAProxy, por uma questão de alta disponibilidade.

Aqui está um exemplo geral com o HAProxy:

# match incoming request based on path in url
acl service1 path_beg /service1
acl service2 path_beg /service2

# send matched request to a specific backend
use_backend service1 if service1
use_backend service2 if service2

# define the target backends (Elastic Beanstalk LB DNS, likely)
backend service1 :80
  option httpchk /haproxy_health_check
  server service-1 service1.aws.mybeanstalklb.com:80 

backend service2 :80
  option httpchk /haproxy_health_check
  server service-2 service2.aws.mybeanstalklb.com:80 

Se você não estiver interessado em executar isso sozinho no EC2, explore essa configuração em uma imagem da janela de encaixe HAProxy e execute o contêiner em Serviço de Contêiner EC2 .

    
por 01.07.2017 / 10:03