Existe uma solução de proxy reverso baseada em nuvem na AWS?

34

insira a descrição da imagem aqui

O sistema

Eu tenho uma API implantada em máquinas EC2 na AWS. Solicitações HTTPS de entrada são passadas para um balanceador de carga elástico . O balanceador de carga lida com o SSL e passa a solicitação para um servidor Nginx, que envia as solicitações para servidores específicos de acordo com a URL da solicitação.

A dor

As máquinas Nginx exigem muito trabalho de manutenção, especialmente quando os endereços IP dos servidores são alterados. Além disso, o roteamento de proxy baseado em URL realmente parece uma continuação natural de um balanceador de carga. Ter uma interface sã baseada na Web ou baseada na API para controlar o roteamento de URL seria um benefício tremendo.

A questão

Existe alguma solução de roteamento baseada em nuvem que possa proxy solicitações HTTP por esquemas de URL, substituindo minha máquina Nginx?

Adam Matan
fonte
Você está usando uma ferramenta de gerenciamento de configuração?
user9517 suporta GoFundMonica
Sim, eu uso ansible.
Adam Matan
Se você precisar de vários serviços de hospedagem (por exemplo, não deseja se prender
emptyflash em

Respostas:

26

Você pode usar o AWS API Gateway ( documentação ).

O API Gateway ajuda os desenvolvedores a fornecer back-end robustos, seguros e escaláveis ​​para aplicativos da web e móveis. O API Gateway permite que os desenvolvedores conectem com segurança aplicativos móveis e da Web à lógica comercial hospedada no AWS Lambda, APIs hospedadas no Amazon EC2 ou outros serviços da Web endereçáveis ​​publicamente hospedados dentro ou fora da AWS . Com o API Gateway, os desenvolvedores podem criar e operar APIs para seus serviços de back-end sem desenvolver e manter a infraestrutura para lidar com autorização e controle de acesso, gerenciamento de tráfego, monitoramento e análise, gerenciamento de versão e geração de kit de desenvolvimento de software (SDK).

O API Gateway agora oferece suporte à integração do Proxy HTTP para recursos de passagem, para que você não precise descrever explicitamente a carga útil e os parâmetros de consulta (o que era necessário anteriormente).

Edward Samuel
fonte
Obrigado! Esse parece ser um recurso relativamente novo, por isso estou um pouco menos envergonhado por não saber. techcrunch.com/2015/07/09/aws-announces-new-api-gateway-service
Adam Matan
6

Dê uma olhada em Kong .

Além de ser de código aberto, você pode operá-lo usando sua API RESTful interna e pode estendê-lo com plug-ins personalizados .

Marca
fonte
1

Apenas para adicionar à resposta de @ EdwardSamuel:

Sim, existe e o serviço adequado da AWS para isso é o Application Load Balancer .

No entanto, estou muito curioso se a resposta do @ EdwardSamuel realmente funciona, porque também estou interessado em usar o API Gateway para esse fim. Estou ciente de algumas limitações do API Gateway (limite de tamanho do conteúdo etc.), mas ainda não tenho certeza se essas limitações tornarão inutilizável, por exemplo, reverter o proxy de um blog do WordPress.

Hendy Irawan
fonte