Qual é a vantagem de usar uma sub-rede NAT mais privada na AWS versus uma sub-rede pública com grupos de segurança bloqueados e ACL?

5

Meu cenário: Eu tenho uma fila SQS com um grupo de escalonamento automático de trabalhadores do EC2 processando mensagens da fila em um banco de dados em uma região diferente.

Necessidades de Rede Implícitas para Trabalhadores do EC2:

  • Acesse a Internet pública para interagir com o SQS
  • Acesse a Internet pública para interagir com dB em diferentes regiões
  • Restringir tráfego de entrada não solicitado porque não são servidores da web

Opções de rede (que eu conheço):

  • Coloque os EC2 Workers em uma sub-rede privada sem IP elástico e permita que eles se comuniquem com a Internet por meio de um NAT em uma sub-rede pública.
  • Colocar os trabalhadores do EC2 em uma sub-rede pública com public / elastic? Endereços IP. Colocá-los em um grupo de segurança restritivo que proíbe o tráfego de entrada inesperado. Aplique uma ACL restritiva à sub-rede para proibir o tráfego de entrada inesperado no nível da sub-rede.

Tenho visto várias recomendações para usar a primeira abordagem com o NAT, inclusive na própria documentação da AWS. Eu não vi nenhuma recomendação para a segunda abordagem.

NATs parecem ser uma opção cara e podem facilmente se transformar em um gargalo de rede e são um único ponto de falha. Por que essa opção é recomendada com tanta frequência? Existem desvantagens ou quebras de acordo com a segunda abordagem de que não conheço?

Esta questão é semelhante, mas não a mesmo. Também li este thread na pilha transbordar. Também li o Guia do usuário do AWS VPC .

    
por sirmxanot 29.10.2014 / 02:54

1 resposta

2

Muitas configurações precisam compartilhar um único IP público. Eles precisam de NAT. O tráfego de rede do seu cenário é iniciado internamente. (SQS é consultado.) Com esse tipo de tráfego, não há vantagem em fornecer uma instância NAT.

    
por 14.11.2014 / 17:15