Gerenciar clusters de gateway de dados local de alta disponibilidade e balanceamento de carga

Você pode usar um cluster de gateway de dados local para evitar pontos únicos de falha e para balancear a carga do tráfego entre gateways em um cluster. Para adicionar novos membros de gateway a um cluster de gateway, acesse Adicionar outro gateway para criar um cluster.

Clusters de alta disponibilidade para um gateway de dados local

Você pode criar clusters de alta disponibilidade de instalações de gateway. Os clusters ajudam a garantir que a organização possa acessar recursos de dados locais de serviços de nuvem, como o Power BI e o Power Apps. Os administradores de gateway usam esses clusters para evitar pontos únicos de falha ao acessar recursos de dados locais.

O serviço de nuvem de gateway sempre usa o gateway principal em um cluster, a menos que ele não esteja disponível. Nesse caso, o serviço muda para o próximo gateway disponível no cluster.

Observação

Verifique se os membros do gateway em um cluster estão executando a mesma versão do gateway, porque versões diferentes podem causar falhas inesperadas com base na funcionalidade com suporte.

Gerencie um cluster de gateways

Depois de criar um cluster de dois ou mais gateways, todas as operações de gerenciamento de gateway se aplicam a todos os gateways no cluster. Essas operações incluem a concessão de permissões administrativas a um gateway e à adição de fontes de dados ou de conexões.

Por exemplo, quando os administradores selecionam Gerenciar gateways no Power BI, a lista de clusters registrados ou gateways individuais é exibida. Mas as instâncias de gateways individuais que são membros do cluster não são exibidas.

Todas as solicitações são roteadas para a instância primária de um cluster de gateways. Se a instância primária do gateway não estiver online, a solicitação será encaminhada para outra instância de gateway do cluster.

Balancear a carga entre gateways em um cluster

Você pode optar por permitir que o tráfego seja distribuído de modo uniforme entre todos os gateways de um cluster. Por padrão, é aleatória a seleção de um gateway durante o balanceamento de carga, ou seja, quando a opção "Distribuir solicitações entre todos os gateways ativos neste cluster" está habilitada. Você pode alterar essa configuração para distribuir a carga.

Observação

É recomendável desabilitar ou remover os membros do gateway offline do cluster. Se um membro do gateway estiver offline em vez de desabilitado ou removido, poderemos tentar executar uma consulta nesse membro offline antes de tentar o próximo. Isso pode ter um impacto negativo no desempenho.

Por exemplo, para fornecer balanceamento de carga por meio do serviço do Power BI, selecione o ícone de engrenagem A gear icon. no canto superior direito e escolha Gerenciar gateways. Em seguida, selecione Distribuir as solicitações entre todos os gateways ativos neste cluster.

Gateway cluster settings.

Balanceamento de carga com base nos limites de CPU e memória

Como já mencionado, a seleção de um gateway durante o balanceamento de carga é aleatória. No entanto, os administradores do gateway limitar o uso de recursos de cada membro do gateway. Com a limitação, você pode garantir que um membro do gateway ou todo o cluster de gateway não fique sobrecarregado. Recursos do sistema sobrecarregados podem causar falhas de solicitação.

Se um cluster de gateway com o balanceamento de carga habilitado receber uma solicitação de um dos serviços de nuvem (como o Power BI), ele selecionará aleatoriamente um membro do gateway. Se esse membro do gateway já tiver atingido ou extrapolado a limitação especificada abaixo, outro membro no cluster será selecionado. Se todos os membros no cluster estiverem no mesmo estado, haverá falha na solicitação.

Um administrador de gateway deve atualizar as seguintes configurações no arquivo Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config disponível na pasta Program Files\On-premises data gateway para ajustar os valores de limitação. A limitação de simultaneidade é habilitada por padrão.

  • CPUUtilizationPercentageThreshold – Essa configuração permite que os administradores de gateway definam um limite para a CPU. O intervalo permitido para essa configuração é de 0 a 100. O valor 0, que é o padrão, indica que a configuração está desabilitada.

  • MemoryUtilizationPercentageThreshold — Essa configuração permite que os administradores de gateway definam uma limitação para a memória. O intervalo permitido para essa configuração é de 0 a 100. O valor 0, que é o padrão, indica que a configuração está desabilitada.

  • ResourceUtilizationAggregationTimeInMinutes – Essa configuração define o tempo em minutos para o qual os contadores do sistema de CPU e de memória do computador de gateway são agregados. Os valores agregados são comparados com os respectivos limites definidos para CPUUtilizationPercentageThreshold e MemoryUtilizationPercentageThreshold. O valor padrão para essa configuração é 5.

A utilização geral de recursos não é fixada abaixo dos limites definidos. As solicitações podem alocar CPU e memória conforme necessário após serem aceitas por um membro do cluster do Gateway.

Observação

Você também pode alterar a configuração de balanceamento de carga no PowerShell.

Exemplos de erros quando o limite é atingido

The gateway you selected can't establish data source connections because it's exceeded the CPU limit set by your gateway admin. Try again later, or ask your gateway admin to increase the limit.

The gateway you selected can't establish data source connections because it's exceeded the memory limit set by your gateway admin. Try again later, or ask your gateway admin to increase the limit.

The gateway you selected can't establish data source connections because it's exceeded the concurrency limit set by your gateway admin. Try again later, or ask your gateway admin to increase the limit.

Próximas etapas

Suporte do PowerShell para clusters de gateway