Este tópico fornece respostas para algumas perguntas frequentes sobre o Network Load Balancer (NLB).
O NLB fornece tipos de instância específicos?
Não. O NLB não fornece tipos de instância específicos. É recomendado que você crie instâncias e não especifique um tipo de instância.
O NLB utiliza um mecanismo de dimensionamento automático. Para obter mais informações sobre os recursos de dimensionamento, consulte Instance performance metrics. Em comparação com o Classic Load Balancer (CLB), o NLB oferece desempenho superior no balanceamento de carga da camada 4. Recomendamos o uso do NLB. Para obter mais informações sobre as diferenças entre o NLB e o CLB, consulte Functions and features.
Por que a regra de entrada configurada para o grupo de segurança da minha instância NLB não entra em vigor?
Se você adicionar uma instância NLB a um grupo de segurança sem a regra Deny, a porta do listener da instância permitirá todas as solicitações. Para permitir solicitações apenas de endereços IP específicos para a sua instância NLB, adicione uma regra Deny ao grupo de segurança da instância. Certifique-se de que a regra Deny tenha prioridade menor que as regras Allow.
Para que você gerencie grupos de segurança, consulte os tópicos a seguir:
Para bloquear ou permitir solicitações de endereços IP específicos, consulte Use security groups as blacklists or whitelists.
Para que você ative o controle de acesso de instâncias NLB com base em protocolos e portas, consulte Configure security groups for NLB instances
Por que o endereço IP virtual (VIP) da minha instância NLB não consegue encaminhar solicitações?
Para solucionar erros, execute as seguintes etapas:
Verifique se a opção Cross-Zone Distribution está desativada. É importante que você ative o Cross-Zone Distribution. As solicitações destinadas à instância NLB podem ser encaminhadas para servidores de backend em outras zonas. Se essa opção estiver desativada e não houver servidores de backend implantados na zona da instância NLB, o VIP da zona não poderá encaminhar solicitações para a instância.
Verifique se a zona foi removida do registro DNS. Nesse caso, o VIP da zona é removido do registro A da instância NLB e deixa de ser resolvido para o nome de domínio da instância. Consequentemente, o VIP da zona não poderá encaminhar solicitações destinadas ao nome de domínio da instância NLB.
Verifique se uma lista de controle de acesso (ACL) de rede está ativada para a instância NLB e se o bloco CIDR 100.64.0.0/10 não está na lista de permissões. Caso você configure uma ACL para o vSwitch do VIP sem adicionar esse bloco CIDR à lista de permissões, o VIP falhará nas verificações de integridade, pois a rede 100.64.0.0/10 é usada para essas verificações na zona. Isso faz com que o VIP da zona seja removido do registro A da instância NLB, impedindo o encaminhamento de solicitações para o nome de domínio da instância.
Como fazer para que você configure a instância NLB para permitir que uma instância ECS no grupo de servidores funcione como servidor de backend e cliente?
Desative a opção Cross-Zone Distribution no grupo de servidores associado à sua instância NLB. Assim, uma instância do Elastic Compute Service (ECS) no grupo de servidores poderá atuar tanto como servidor de backend (processando solicitações) quanto como cliente (acessando a instância NLB). Se ainda precisar recuperar os endereços IP do cliente, ative o Proxy Protocol no listener associado. Para mais detalhes, consulte as referências a seguir:
Para desativar a preservação de IP do cliente, consulte edite informações básicas.
Para que você ative o Proxy Protocol em um listener TCP, consulte Add a TCP listener.
Para que você ative o Proxy Protocol em um listener UDP, consulte Add a UDP listener.
É possível associar um EIP de assinatura a uma instância NLB?
Não, não é possível.
Os endereços IP elásticos (EIPs) associáveis a instâncias NLB devem atender aos seguintes requisitos:
Método de faturamento: pagamento conforme o uso
Método de medição de tráfego de internet: pagamento por transferência de dados
Associação a instâncias de Internet Shared Bandwidth: não
Por que não consigo adicionar uma rota de host para o Local IP de uma instância NLB?
O NLB atribui um Local IP a partir do bloco CIDR do vSwitch correspondente em cada zona. Por exemplo, na zona H, o Local IP 10.0.0.86 pertence ao bloco CIDR 10.0.0.0/24 do vSwitch, e na zona I, o Local IP 10.0.1.16 pertence ao bloco CIDR 10.0.1.0/24. A tabela de rotas da VPC inclui automaticamente rotas locais do sistema que abrangem cada bloco CIDR do vSwitch (por exemplo, 10.0.0.0/24→local e 10.0.1.0/24→local). Essas rotas do sistema já garantem a acessibilidade dos Local IPs do NLB.
Se você tentar adicionar uma rota de host /32 para um Local IP (por exemplo, 10.0.0.86/32) chamando CreateRouteEntry, o sistema retornará o erro InvalidCidrBlock. Essa é uma restrição de design da VPC que impede a adição de rotas para endereços IP já incluídos em um bloco CIDR de rota local existente.
Não é necessário que você configure rotas manualmente para os Local IPs do NLB. As rotas locais do sistema na tabela de rotas da VPC já garantem a acessibilidade do tráfego para as instâncias NLB em cada zona.
O endereço IP de service de uma instância NLB pode mudar?
Quando uma instância NLB é criada, o sistema atribui a ela um endereço IP privado ou um EIP para receber tráfego. Esse endereço IP de service não muda automaticamente após a criação. No entanto, o endereço IP de service pode mudar nos seguintes cenários:
Zone changes: Sempre que você atualize as zonas de uma instância, endereços IP podem ser adicionados ou removidos. Para instâncias voltadas para a internet, EIPs serão adicionados ou removidos. Para instâncias internas, endereços IP privados serão adicionados ou removidos.
Network type changes: na mudança de interna para voltada para a internet, um novo EIP ou Anycast EIP será atribuído à instância. Na mudança de voltada para a internet para interna, todos os endereços IP públicos serão desassociados da instância.
Posso desativar o Ping para o VIP de uma instância NLB?
Sim. O NLB permite gerenciar o tráfego de entrada por meio de grupos de segurança. Para desativar o Ping, adicione uma regra de entrada que negue todo o tráfego ICMP ao grupo de segurança associado à instância.
O nome de domínio padrão de uma instância NLB oferece suporte a acesso direto?
O nome DNS atribuído a uma instância NLB não pode ser acessado diretamente. Aponte o seu nome de domínio personalizado para o nome DNS da instância NLB adicionando um registro CNAME no seu provedor de DNS e, em seguida, use o nome de domínio personalizado para acessar a instância NLB.
Como consultar os endereços IP associados a uma instância NLB?
Faça login no console do NLB. No painel de navegação à esquerda, escolha Cross-Zone Distribution.
Na página Instances, clique em ID da instância NLB de destino.
Na página de detalhes da instância, na seção Client IP Preservation, visualize o VIP (endereço IP privado de service). Se a instância NLB for voltada para a internet, visualize também o Instances.
Por que recebo um erro de conexão recusada ao acessar um service por meio de uma instância NLB?
Ao acessar um service por meio de uma instância NLB, se o curl retornar o erro Connection refused, isso geralmente ocorre porque a porta de backend configurada para o grupo de servidores é diferente da porta na qual o service de backend realmente escuta. Como resultado, o NLB não consegue encaminhar o tráfego para o backend.
Para solucionar esse problema, execute as seguintes verificações:
Verifique se as portas são consistentes: no console do NLB, verifique a porta de backend configurada para o grupo de servidores. Faça login no servidor de backend e execute
ss -tlnppara verificar a porta na qual o service de backend realmente escuta. As duas portas devem ser iguais.Verifique os grupos de segurança: certifique-se de que tanto o grupo de segurança da instância NLB quanto o da instância ECS de backend permitam tráfego de entrada na porta do listener.
Verifique o status de integridade: no console do NLB, verifique o status de integridade do listener para que você confirme se o servidor de backend está íntegro.
Quais são as diferenças entre usar um VIP e usar um CNAME para se conectar a uma instância NLB interna?
|
Método de conexão |
Conexão direta via VIP |
Nome de domínio CNAME (resolve para o nome DNS da instância NLB) |
|
Tipo de IP |
Endereço IP privado (atribuído de forma independente em cada zona) |
O DNS resolve para endereços IP privados |
|
Failover de zona |
Não há suporte para failover automático |
Zonas não íntegras são removidas automaticamente |
|
Cenário recomendado |
Depuração temporária ou implantações de zona única |
Ambientes de produção ou cenários de alta disponibilidade |
Em cenários de acesso à rede privada, como quando uma instância do Elastic Compute Service (ECS) na mesma virtual private cloud (VPC) acessa a instância NLB, recomendamos o uso do PrivateZone para resolver um nome de domínio privado personalizado para o nome DNS da instância NLB. Dessa forma, os recursos na VPC podem acessar a instância NLB usando o nome de domínio personalizado.
O nome DNS de uma instância NLB voltada para a internet pode ser usado para acesso interno?
Não, não é possível. O nome DNS de uma instância NLB voltada para a internet resolve para o endereço IP elástico (EIP) da instância e não pode ser usado para acesso por redes privadas. Recomendamos o uso de uma instância NLB interna e o acesso a ela por meio do seu VIP, ou a resolução de um nome de domínio privado personalizado para o nome DNS da instância.