Insights sobre o balanceador de carga

Nesta página, descrevemos os insights do Network Analyzer sobre balanceadores de carga. Para informações sobre todos os tipos de insight, consulte Grupos e tipos de insight.

Ver insights na API Recommender

Para ver esses insights na CLI gcloud ou na API Recommender, use o seguinte tipo de insight:

  • google.networkanalyzer.networkservices.loadBalancerInsight

Você precisa das seguintes permissões:

  • recommender.networkAnalyzerLoadBalancerInsights.list
  • recommender.networkAnalyzerLoadBalancerInsights.get

Para mais informações sobre o uso da API Recommender para insights do Network Analyzer, consulte Usar a CLI e a API do recomendador.

O firewall de verificação de integridade não está configurado

Esse insight indica que o firewall de verificação de integridade não está configurado na rede VPC que o balanceador de carga está usando. O insight inclui as seguintes informações:

  • Balanceador de carga: nome do balanceador de carga.
  • Regra de encaminhamento: nome da regra de encaminhamento específica.
  • Rede: nome da rede em que o balanceador de carga está configurado.
  • Bloquear firewalls: nome dos firewalls que estão bloqueando intervalos de endereços IP da verificação de integridade.
  • Back-ends configurados incorretamente: os back-ends do balanceador de carga que não incluem a regra de firewall de permissão para intervalos de endereços IP da verificação de integridade.

Recomendações

Configure a regra de firewall de verificação de integridade para permitir explicitamente que o intervalo de endereços IP da verificação de integridade acesse os back-ends do balanceador de carga. Para mais informações, consulte Regras de firewall para balanceadores de carga.

O intervalo de endereços IP da verificação de integridade está bloqueado

Indica que uma regra de firewall configurada pelo usuário está bloqueando o intervalo de endereços IP da verificação de integridade. Nos detalhes do insight, é possível encontrar a regra de firewall que bloqueia o intervalo de endereços da verificação de integridade.

Recomendações

Para identificar o intervalo de endereços da verificação de integridade do tipo de balanceador de carga, consulte Regras de firewall para balanceadores de carga.

  • Se a regra de firewall de bloqueio tiver um intervalo de endereços IP mais amplo, crie uma regra de permissão com prioridade mais alta para o intervalo de endereços IP da verificação de integridade.
  • Se a regra de firewall de bloqueio tiver o mesmo intervalo de endereços IP ou um intervalo menor que o da verificação de integridade, remova a regra de firewall de bloqueio.

A configuração do firewall é inconsistente

Indica que a configuração do firewall é inconsistente entre as VMs de back-end. O intervalo de endereços IP da verificação de integridade é permitido em algumas VMs de back-end, enquanto ele é negado em outras. Esse problema ocorre quando as tags de rede ou as contas de serviço são modificadas por engano em algumas VMs de back-end. O insight inclui as seguintes informações:

  • Balanceador de carga: nome do balanceador de carga
  • Regra de encaminhamento: nome da regra de encaminhamento específica
  • Rede: nome da rede em que o balanceador de carga está configurado
  • Bloquear firewalls: nome dos firewalls que estão bloqueando intervalos de verificação de integridade
  • Parcialmente permitindo firewalls: nome dos firewalls que permitem o tráfego de verificação de integridade nas VMs de back-end configuradas corretamente
  • Back-ends configurados incorretamente: os back-ends que têm esse problema e a configuração de firewall para o intervalo de endereços IP da verificação de integridade não está funcionando corretamente

Recomendações

Para encontrar as tags configuradas incorretamente, compare as tags configuradas nas VMs de back-end configuradas incorretamente com as tags configuradas nas regras de firewall que permitem parcialmente. Modifique as tags e as contas de serviço nas VMs de back-end configuradas incorretamente para que tenham os mesmos valores das tags e das contas de serviço nas VMs de back-end em funcionamento.

O intervalo de endereços IP da verificação de integridade está parcialmente bloqueado

Indica que todos os back-ends bloquearam parcialmente o tráfego no intervalo de verificação de integridade. O tráfego da verificação de integridade é permitido para alguns intervalos de endereços IP da verificação de integridade e negado para outros intervalos. O insight inclui as seguintes informações:

  • Balanceador de carga: nome do balanceador de carga
  • Regra de encaminhamento: nome da regra de encaminhamento específica
  • Rede: nome da rede em que o balanceador de carga está configurado
  • Bloquear firewalls: nome dos firewalls que estão bloqueando intervalos de verificação de integridade
  • Parcialmente permitindo firewalls: nome dos firewalls que permitem o tráfego de verificação de integridade nas VMs de back-end configuradas corretamente
  • Back-ends configurados incorretamente: os back-ends que têm esse problema e a configuração do firewall para o intervalo da verificação de integridade não está funcionando corretamente
  • Intervalos de verificação de integridade bloqueados: intervalos de endereços IP em que o tráfego de verificação de integridade é bloqueado

Recomendações

Compare os intervalos de endereços IP nas regras de firewall que permitem parcialmente com o intervalo de endereços IP da verificação de integridade para o tipo de balanceador de carga. Se houver intervalos de endereços IP ausentes, adicione-os à sua regra de firewall de permissão. Se o insight persistir, verifique se a prioridade da regra de firewall de permissão parcial é maior do que a da regra de firewall de negação.

O modo de balanceamento do serviço de back-end interrompe a afinidade da sessão

Esse insight é acionado quando o serviço de back-end de um balanceador de carga baseado em proxy tem uma afinidade de sessão diferente de NONE e tem um ou mais back-ends de grupo de instâncias usando o modo de balanceamento UTILIZATION. A afinidade da sessão pode ser interrompida quando o tráfego para o balanceador de carga é baixo. O balanceador de carga também descarta uma parte das sessões quando a quantidade de back-ends muda quando os back-ends são adicionados ou removidos do balanceador de carga, como em casos de falha na verificação de integridade ou em um resultado subsequente. O número de sessões descartadas é proporcional à quantidade de back-ends alterados. Essas mudanças também afetam a afinidade das sessões.

Esse insight inclui as seguintes informações:

  • Serviço de back-end: o serviço de back-end afetado.
  • Regras de encaminhamento: as regras de encaminhamento que direcionam o tráfego para esse serviço de back-end.
  • Afinidade da sessão: a afinidade da sessão usada pelo serviço de back-end.
  • Back-ends afetados: os back-ends que usam o modo de balanceamento UTILIZATION.

Recomendações

Para usar uma afinidade de sessão diferente de NONE, use os modos de balanceamento RATE ou CONNECTION. Só é possível realizar essa operação com a Google Cloud CLI ou com a API Compute Engine, não no Console do Google Cloud.

Para serviços de back-end com balanceador de carga de proxy que usam os protocolos HTTP, HTTPS ou HTTP/2, alterne o modo de balanceamento para RATE usando a gcloud compute backend-services update-backend e selecionando o modo de balanceamento de taxa.

O exemplo de código a seguir mostra como usar esse comando para alternar o modo para RATE:

gcloud compute backend-services update-backend BACKEND_SERVICE_NAME \
    BACKEND_SERVICE_SCOPE \
    --instance-group=INSTANCE_GROUP_NAME \
    INSTANCE_GROUP_SCOPE \
    --balancing-mode=RATE \
    TARGET_CAPACITY

Para serviços de back-end com balanceador de carga de proxy que usam protocolos não HTTP (como TCP ou SSL), alterne o modo de balanceamento para CONNECTION usando o comando gcloud compute backend-services update-backend e escolhendo o modo de balanceamento de conexão.

O exemplo de código a seguir mostra como usar esse comando para alternar o modo para CONNECTION:

gcloud compute backend-services update-backend BACKEND_SERVICE_NAME \
    BACKEND_SERVICE_SCOPE \
    --instance-group=INSTANCE_GROUP_NAME \
    INSTANCE_GROUP_SCOPE \
    --balancing-mode=CONNECTION \
    TARGET_CAPACITY

Nos dois exemplos, substitua o seguinte:

  • BACKEND_SERVICE_NAME: o nome do serviço de back-end.
  • BACKEND_SERVICE_SCOPE: o escopo do serviço de back-end. Para serviços de back-end globais, use --global. Para serviços de back-end regionais, use --region=REGION, substituindo REGION pela região.
  • INSTANCE_GROUP_NAME: o nome do grupo de instâncias de back-end.
  • INSTANCE_GROUP_SCOPE: a localização do grupo de instâncias. Para grupos gerenciados de instâncias regionais, use --region=REGION, substituindo REGION pela região. Para grupos de instâncias zonais, use --zone=ZONE, substituindo ZONE pela zona.
  • TARGET_CAPACITY: é uma especificação de meta de taxa ou de conexão. Para o modo de balanceamento de taxa, use as sinalizações --max-rate= ou --max-rate-per-instance=, fazendo referência ao modo de balanceamento de taxa na visão geral dos serviços de back-end. Para o modo de balanceamento de conexão de soltar, use as sinalizações --max-connections= ou --max-connections-per-instance=, mencionando o modo de balanceamento de conexão na visão geral dos serviços de back-end.

O serviço de back-end usa portas diferentes para a verificação de integridade e o tráfego

O balanceador de carga está fazendo verificações de integridade em alguns back-ends em uma porta diferente, e não na porta nomeada usada pelo balanceador de carga para exibir o tráfego. Essa configuração pode ser problemática, a menos que você tenha configurado o balanceador de carga para usar uma porta diferente intencionalmente.

Esse insight inclui as seguintes informações:

  • Serviço de back-end: o serviço de back-end afetado.
  • Regras de encaminhamento: as regras de encaminhamento que direcionam o tráfego para o serviço de back-end.
  • Nome da porta de exibição: o nome da porta que o serviço de back-end usa para o tráfego do serviço.
  • Verificação de integridade: a verificação de integridade usada pelo serviço de back-end.
  • Número da porta de verificação de integridade: a porta usada pela verificação de integridade.
  • Back-ends afetados: os grupos de instâncias em que a porta de exibição é diferente da porta de verificação de integridade.

Consulte Especificação de categoria e porta.

Recomendações

Configure a verificação de integridade com a especificação de porta de exibição para uso. Assim, ela usará a mesma porta que o serviço de back-end usa. O exemplo de código a seguir mostra como usar os comandos da Google Cloud CLI para atualizar a verificação de integridade e usar a porta de exibição:

gcloud compute health-checks update PROTOCOL HEALTH_CHECK_NAME \
      HEALTH_CHECK_SCOPE \
      --use-serving-port

Substitua:

  • PROTOCOL: o protocolo usado pela verificação de integridade.
  • HEALTH_CHECK_NAME: o nome da verificação de integridade.
  • HEALTH_CHECK_SCOPE: o escopo da verificação de integridade. Para verificações de integridade globais, use --global. Para verificações de integridade regionais, use --region=REGION, substituindo REGION pela região.

Os certificados SSL não estão associados a balanceadores de carga

Isso indica que seu projeto tem certificados SSL gerenciados pelo Google que não estão associados a um balanceador de carga que lida com tráfego SSL ou HTTPS. Os certificados SSL gerenciados pelo Google não podem ser usados até que os certificados estejam anexados a um balanceador de carga. Confira a lista de certificados não anexados nos detalhes do insight.

Recomendações

É possível criar um certificado SSL gerenciado pelo Google antes, durante ou depois de criar o balanceador de carga. Para se tornar ACTIVE, o certificado SSL gerenciado pelo Google precisa estar associado a um balanceador de carga, especificamente ao proxy de destino do balanceador de carga.

Depois de criar seu certificado SSL e ele estiver no estado PROVISIONING, é possível usá-lo durante a criação do balanceador de carga ou usá-lo para atualizar um balanceador de carga existente. Para mais informações sobre seu certificado gerenciado pelo Google, consulte Resolver problemas em certificados SSL gerenciados pelo Google.

Os certificados SSL associados a um balanceador de carga não expõem a porta 443

Isso indica que seu projeto tem certificados SSL gerenciados pelo Google que não estão funcionando corretamente porque as regras de encaminhamento associadas a eles não expõem a porta 443. Confira uma lista desses certificados nos detalhes do insight.

Recomendações

Crie uma regra de encaminhamento usando a porta 443 ao criar ou atualizar um balanceador de carga.