Управление балансировкой нагрузки и кластерами высокой доступности локального шлюза данных

Вы можете использовать кластер локальных шлюзов данных, чтобы избежать единых точек отказа и сбалансировать распределение трафика между шлюзами в кластере. Чтобы добавить новых членов шлюза в кластер шлюза, перейдите к разделу "Добавить другой шлюз" для создания кластера.

Кластеры с высоким уровнем доступности для локального шлюза данных

Вы можете создавать кластеры с высоким уровнем доступности из установленных шлюзов. Кластеры помогают обеспечить доступ вашей организации к локальным ресурсам данных из облачных служб, таких как Power BI и Power Apps. Администраторы шлюзов используют такие кластеры, чтобы избежать единых точек отказа при доступе к локальным ресурсам данных.

Облачная служба шлюза всегда использует основной шлюз в кластере, если этот шлюз доступен. В противном случае служба переключается на следующий доступный шлюз в кластере.

Примечание.

Убедитесь, что участники шлюза в кластере используют одну и ту же версию шлюза, так как разные версии могут вызвать непредвиденные сбои в зависимости от поддерживаемых функций.

Управление кластером шлюза

После создания кластера из двух или более шлюзов все операции по управлению шлюзом будут применяться к каждому шлюзу в кластере. К таким операциям относится предоставление административных разрешений для шлюза и добавление источников данных или подключений.

Например, когда администраторы выбирают "Управление шлюзами" в Power BI, отображается список зарегистрированных кластеров или отдельных шлюзов. Но отдельные экземпляры шлюза, которые являются членами кластера, не отображаются.

Все запросы направляются в основной экземпляр кластера шлюза. Если основной экземпляр шлюза не подключен к сети, запрос перенаправляется к другому экземпляру шлюза в кластере.

Балансировка нагрузки между шлюзами в кластере

Можно разрешить распределение трафика между всеми шлюзами в кластере. По умолчанию выбор шлюза при балансировке нагрузки — является случайным, когда включен параметр "Распределение запросов по всем активным шлюзам в этом кластере". Этот параметр можно изменить, чтобы распределить нагрузку.

Примечание.

Рекомендуется отключить или удалить не подключенный к сети шлюз-участник кластера. Если член шлюза находится в автономном режиме, а не отключен или удален, мы можем попытаться выполнить запрос на этот автономный элемент, прежде чем перейти к следующему элементу. Это может отрицательно сказаться на производительности.

Например, чтобы обеспечить балансировку нагрузки из служба Power BI, щелкните значок A gear icon. шестеренки в правом верхнем углу, а затем выберите "Управление шлюзами". Далее выберите Распределение запросов по всем активным шлюзам в этом кластере.

Gateway cluster settings.

Балансировка нагрузки на основе ограничений ЦП и памяти

Как упоминалось ранее, при балансировке нагрузки шлюзы выбираются случайным образом. Однако администраторы шлюза могут регулировать использование ресурсов каждым членом шлюза. Благодаря регулированию вы можете гарантировать, что участник шлюза или весь кластер шлюза не будут перегружены. Перегруженные системные ресурсы могут вызвать сбои запросов.

Если кластер шлюзов с включенной балансировкой нагрузки получает запрос от одной из облачных служб (например, Power BI), он случайным образом выбирает члена шлюза. Если этот член шлюза уже достиг одного из регулирующих ограничений, указанных ниже, или превысил его, выбирается другой член в кластере. Если все члены в кластере находятся в одном состоянии, запрос не выполняется.

Администратор шлюза должен обновить следующие параметры в файле Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config, который доступен в папке Program Files\On-premises data gateway, чтобы настроить регулирующие ограничения. По умолчанию включено регулирование параллелизма.

  • CPUUtilizationPercentageThreshold — эта конфигурация позволяет администраторам шлюзов устанавливать ограничение регулирования для ЦП. Допустимый диапазон для этой конфигурации — от 0 до 100. Значение 0, которое является значением по умолчанию, указывает, что эта конфигурация отключена.

  • MemoryUtilizationPercentageThreshold — эта конфигурация позволяет администраторам шлюзов устанавливать ограничение регулирования для памяти. Допустимый диапазон для этой конфигурации — от 0 до 100. Значение 0, которое является значением по умолчанию, указывает, что эта конфигурация отключена.

  • ResourceUtilizationAggregationTimeInMinutes — эта конфигурация устанавливает время в минутах, в течение которого суммируются системные счетчики ЦП и памяти компьютера шлюза. Затем агрегированные значения сравниваются с соответствующими пороговыми пределами, установленными для параметров CPUUtilizationPercentageThreshold и MemoryUtilizationPercentageThreshold. Значение по умолчанию для этой конфигурации равно 5.

Общее использование ресурсов не исправлено в соответствии с заданными порогами. Запросы могут выделять ЦП и память по мере необходимости после принятия членом кластера шлюза.

Примечание.

Вы также можете изменить настройку балансировки нагрузки через PowerShell.

Примеры ошибок при обнаружении ограничения

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.

Следующие шаги

Поддержка PowerShell для кластеров шлюзов