Páginas

quinta-feira, 31 de outubro de 2024

 

Diferenças entre o Application load balancer (ALB) e o Network load balancer (NLB) na WAS


Compação: ALB vs NLB na AWS — Application load balancer vs Network load balancer.

 


 

 Tanto o Application Load Balancer quanto o Network Load Balancer foram projetados desde o início para o paradigma moderno de configurações de portas dinâmicas, como comumente visto em implantações em contêineres. A escolha do balanceador de carga certo para você dependerá das necessidades específicas do seu aplicativo, como se o tráfego de rede é HTTP ou não, se você precisa de criptografia SSL/TLS de ponta a ponta e se deseja ou não host e caminho roteamento de tráfego
Se você estiver implantando contêineres docker e usando um balanceador de carga para enviar tráfego de rede a eles, o EC2 Container Service fornecerá forte integração com ALB e NLB para que você possa manter seus balanceadores de carga sincronizados ao iniciar, atualizar e interromper contêineres em sua frota.

 

Balanceador de carga de aplicativo (ALB)

Esta é a distribuição de solicitações com base em múltiplas variáveis, desde a camada de rede até a camada de aplicação. Ele reconhece o contexto e pode direcionar solicitações com base em qualquer variável única com a mesma facilidade com que faz uma combinação de variáveis. Os aplicativos são balanceados em carga com base em seu comportamento peculiar e não apenas nas informações do servidor (sistema operacional ou camada de virtualização).

Este é um balanceador de carga de camada 7 preenchido com recursos, apenas ouvintes HTTP e HTTPS. Fornece a capacidade de rotear o tráfego HTTP e HTTPS com base em regras, baseadas em host ou em caminho. Como um NLB, cada Target pode estar em portas diferentes. Até suporta HTTP/2. Gama configurável de códigos de status de verificação de integridade (CLB suporta apenas 200 OK para verificações de integridade HTTP).

Protocolos: HTTP, HTTPS

Versões dos protocolos: HTTP/1.1, HTTP/2, gRPC

Tipos de destino: Instance, IP, Lambda

Com o ALB, é necessário ativar pelo menos duas ou mais Availability Zones

 

Balanceador de carga de rede (NLB)

Esta é a distribuição do tráfego com base em variáveis ​​de rede, como endereço IP e portas de destino. É Camada 4 (TCP) e inferior e não foi projetado para levar em consideração nada na camada do aplicativo, como tipo de conteúdo, dados de cookies, cabeçalhos personalizados, localização do usuário ou comportamento do aplicativo. É sem contexto, preocupando-se apenas com as informações da camada de rede contidas nos pacotes que está direcionando para um lado e para o outro.

Este é apenas um balanceador de carga TCP que faz alguma mágica NAT no nível VPC. Ele usa EIPs, portanto possui um endpoint estático diferente de ALB e CLBs (por padrão). Cada destino pode estar em portas diferentes.

Protocolos: TLS, TCP, UDP, TCP_UDP

Versões dos protocolos:TLS, TCP, UDP, TCP_UDP

Tipos de destino: Instance, IP, Lambda

Com o NLB, o Elastic Load Balancing cria uma interface de rede para cada Availability Zones habilitada.

 

                                                          Casos de uso

Escolha ALB se:

    O Application Load Balancer é mais adequado para balanceamento de carga de tráfego HTTP e HTTPS e fornece roteamento avançado de solicitações direcionado ao fornecimento de arquiteturas de aplicativos modernas, incluindo microsserviços e contêineres.
    Os aplicativos precisam de roteamento avançado (baseado em host, baseado em URL, baseado em string de consulta).
    Execute vários serviços (microsserviços) atrás de um único balanceador de carga.

 

Escolha NLB se:

    O Network Load Balancer é mais adequado para balanceamento de carga de tráfego TCP onde é necessário desempenho extremo. Ele é capaz de lidar com milhões de solicitações por segundo, mantendo latências ultrabaixas, e é otimizado para lidar com padrões de tráfego repentinos e voláteis.
    Você deseja compartilhar/expor seus serviços (por exemplo, serviços SaaS) a outros consumidores em diferentes VPCs usando PrivateLink VPC Endpoint.
    Você precisa de um endereço IP estático que possa ser usado pelos aplicativos como IP front-end do balanceador de carga.

 

 

 

 

quarta-feira, 30 de outubro de 2024

 

 

            Manipulação de tráfego Stateful  e Stateless 





No AWS VPC (Virtual Private Cloud), os termos “stateful” e “stateless” referem-se ao comportamento de manipulação do tráfego de rede no contexto de grupos de segurança de rede e ACLs (listas de controle de acesso) de rede. Vamos explorar as diferenças entre stateful e stateless no AWS VPC:

 


Stateful:

    O tratamento de tráfego de rede Stateful é o comportamento padrão de grupos de segurança no AWS VPC.
    Um grupo de segurança Stateful permite o tráfego de entrada para uma regra específica e permite automaticamente o tráfego de saída correspondente, independentemente de uma regra de saída explícita estar definida.
    A natureza Stateful dos grupos de segurança significa que, uma vez estabelecida uma conexão, o tráfego de retorno é automaticamente permitido, simplificando a configuração e o gerenciamento das regras de rede.
    Num grupo de segurança Stateful, só precisa se definir as regras de entrada para controlar o fluxo de tráfego, e o tráfego de saída é permitido implicitamente.

 

Stateless:

    O tratamento de tráfego de rede Stateless é o comportamento padrão das ACLs de rede no AWS VPC.
    Uma ACL de rede Stateless exige regras explícitas para o tráfego de entrada e de saída.
    Cada regra em uma ACL de rede Stateless controla o tráfego de entrada ou de saída, e não há permissão automática de tráfego de retorno como em grupos de segurança Stateful.
    Com ACLs de rede Stateless, você precisa definir regras de entrada e saída para controlar o fluxo de tráfego com precisão.


Principais diferenças:


Os grupos de segurança Stateful simplificam o gerenciamento de regras, permitindo o retorno automático do tráfego, enquanto as ACLs de rede Stateless exigem regras explícitas para o tráfego de entrada e de saída.
    Grupos de segurança Stateful geralmente são usados ​​no nível da instância, enquanto as Network ACLs são aplicadas no nível da sub-rede.
    Os grupos de segurança avaliam as regras primeiro e a regra mais permissiva é aplicada. As ACLs de rede, por outro lado, processam regras em uma ordem sequencial com base no número da regra.


Em resumo, Stateful e Stateless referem-se ao tratamento do tráfego de rede no AWS VPC. Os grupos de segurança Stateful permitem o retorno automático do tráfego, simplificando o gerenciamento de regras, enquanto as ACLs de rede Stateless exigem regras explícitas para o tráfego de entrada e de saída. Compreender esses conceitos é essencial para proteger e gerenciar com eficácia o tráfego de rede em sua AWS VPC.