Como Criar um Load Balancer - Private Access
Introdução
O Load Balancer as a Service (LBaaS) permite distribuir o tráfego de entrada entre várias instâncias, possibilitando alta disponibilidade e otimizando o desempenho das aplicações. A criação de um Load Balancer envolve a definição de sua configuração básica, listeners, backends, health checks e políticas de segurança.
- Atenção: Este serviço não está liberado atualmente para o público geral e necessita de liberação. Se você tiver interesse, por favor, abra um ticket conosco para demonstrar seu interesse.
Etapas do Processo de Criação
1. Criar o Load Balancer
A primeira etapa é criar um Load Balancer, definindo seu nome, tipo e visibilidade.
-
Endpoint:
POST /v0beta1/network-load-balancers -
Parâmetros principais:
name: Nome do Load Balancertype: Tipo do Load Balancer (exemplo: proxy)visibility: Definir como internal ou external
Ao criar um Load Balancer, é necessário definir a visibilidade, que determina como o tráfego será recebido:
Internal: Um Load Balancer interno recebe e distribui tráfego apenas dentro da sua rede privada (VPC). É ideal para aplicações que precisam se comunicar exclusivamente entre instâncias internas sem exposição direta à internet.
External: Um Load Balancer externo recebe e distribui tráfego proveniente da internet. Ele utiliza um IP público, permitindo que as suas aplicações sejam acessadas externamente.
2. Criar Listeners
Os listeners definem quais portas e protocolos serão usados para aceitar conexões.
- Endpoint:
POST /v0beta1/network-load-balancers/{load_balancer_id}/listeners - Parâmetros principais:
protocol: TCP ou TLSport: Porta que será expostapublic_ip_id: Opcional para endereços públicos
3. Criar Backends
Os backends são os servidores que receberão as requisições do Load Balancer.
- Endpoint:
POST /v0beta1/network-load-balancers/{load_balancer_id}/backends - Parâmetros principais:
targets: Lista de instâncias ou IPs
4. Configurar Health Checks
O health check monitora a disponibilidade dos backends e remove automaticamente servidores não saudáveis.
- Endpoint:
POST /v0beta1/network-load-balancers/{load_balancer_id}/health-checks - Parâmetros principais:
protocol: TCP ou HTTPport: Porta do serviço monitoradointerval_seconds: Intervalo entre verificaçõestimeout_seconds: Tempo de espera por resposta
5. Configurar ACLs (Listas de Controle de Acesso)
As ACLs permitem restringir ou liberar o tráfego para o Load Balancer com base em regras específicas.
- Endpoint:
POST /v0beta1/network-load-balancers/{load_balancer_id}/acls - Parâmetros principais:
ethertype: IPv4 ou IPv6protocol: TCPremote_ip_prefix: Faixa de IPs permitidosaction: ALLOW ou DENY
Diferença entre Security Group e ACL
Embora tanto Security Groups quanto ACLs (Listas de Controle de Acesso) controlem o tráfego permitido, eles têm escopos diferentes.
Security Groups são aplicados diretamente às instâncias (servidores virtuais) e filtram o tráfego na interface de rede, permitindo regras detalhadas com base em portas específicas e protocolos.
Já as ACLs são aplicadas diretamente no Load Balancer e funcionam como uma camada adicional de segurança, controlando quais faixas de IP podem ou não acessar o Load Balancer como um todo, antes mesmo do tráfego chegar às instâncias backend.