Создание и настройка локальной среды выполнения интеграции
ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics
Совет
Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !
Среда выполнения интеграции (IR) — это инфраструктура вычислений, которую конвейеры Фабрики данных Azure и Synapse используют для обеспечения интеграции данных в разных сетевых средах. Дополнительные сведения о среде выполнения интеграции см. в этом обзоре.
Локальная среда выполнения интеграции может выполнять операции копирования между облачным хранилищем данных и хранилищем данных в частной сети. Она также может обрабатывать действия преобразования в ресурсы вычислений в локальной сети или в виртуальной сети Azure. Локальная среда выполнения интеграции устанавливается на локальном компьютере или виртуальной машине в частной сети.
Из этой статьи вы узнаете, как создать и настроить локальную среду выполнения интеграции.
Примечание.
Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Чтобы начать работу, см. статью Установка Azure PowerShell. Дополнительные сведения см. в статье Перенос Azure PowerShell с AzureRM на Az.
Рекомендации по использованию локальной среды выполнения интеграции
- Один экземпляр локальной среды выполнения интеграции можно использовать для нескольких локальных источников данных. Вы также можете поделиться им с другой фабрикой данных в том же клиенте Microsoft Entra. Дополнительные сведения см. в разделе о совместном использовании локальной среды выполнения интеграции.
- На компьютере можно установить только один экземпляр локальной среды выполнения интеграции. Если у вас есть два фабрики данных, которым требуется доступ к локальным источникам данных, используйте функцию совместного использования локальной среды IR для совместного использования локальной среды IR или установите локальную среду IR на двух локальных компьютерах, по одному для каждой фабрики данных или рабочей области Synapse. Рабочая область Synapse не поддерживает общий доступ к среде выполнения интеграции.
- Локальную среду выполнения интеграции не обязательно устанавливать на том же компьютере, где установлен источник данных. Но чем ближе она будет расположена к источнику данных, тем меньше потребуется времени на подключение к источнику данных. Рекомендуем устанавливать локальную среду выполнения интеграции на компьютере, отличном от того, на котором размещен локальный источник данных. Если локальная среда выполнения интеграции и источник данных будут выполняться на разных компьютерах, между ними не возникнет конкуренции за ресурсы компьютера.
- Вы можете установить несколько локальных сред выполнения интеграции на разных компьютерах и подключить их к одному локальному источнику данных. Например, можно создать две локальные среды выполнения интеграции для работы с двумя фабриками данных, в которых может быть зарегистрирован один и тот же локальный источник данных.
- Используйте локальную среду выполнения интеграции для поддержки интеграции данных в виртуальной сети Azure.
- Источник данных следует считать локальным и находящимся за брандмауэром, даже если используется Azure ExpressRoute. Используйте локальную среду выполнения интеграции для подключения службы к источнику данных.
- Используйте локальную среду выполнения интеграции, даже если хранилище данных размещено в облаке на виртуальной машине Azure IaaS (инфраструктура как услуга).
- Задачи могут завершаться ошибкой в локальной среде выполнения интеграции, установленной на сервере Windows Server, где включено шифрование, совместимое с FIPS. Есть два варианта решения этой проблемы: сохранить учетные данные или значения секретов в Azure Key Vault или отключить шифрование, совместимое с FIPS, на сервере. Чтобы отключить шифрование, совместимое с FIPS, измените следующее значение подраздела реестра с "1" (включено) на "0" (отключено):
HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy\Enabled
. Если вы используете локальную среду выполнения интеграции в качестве прокси-сервера для среды выполнения интеграции SSIS, шифрование, совместимое с FIPS, можно включить и использовать при перемещении данных из локальной среды в Хранилище BLOB-объектов Azure, применяемое в качестве промежуточной области. - Полные сведения о лицензировании предоставляются на первой странице настройки локальной среды выполнения интеграции.
Примечание.
В настоящее время локальная среда выполнения интеграции может совместно использоваться только несколькими фабриками данных. Она не может совместно использоваться рабочими областями Synapse или фабрикой данных и рабочей областью Synapse.
Поток команд и поток данных
Когда вы копируете данные между локальным источником и облаком, локальная среда выполнения интеграции применяется для фактической передачи данных.
Ниже приведена высокоуровневая сводка по шагам потока данных для копирования с помощью локальной среды IR:
Разработчик данных сначала создает локальную среду выполнения интеграции в Фабрике данных Azure или рабочей области Synapse с помощью портала Azure и командлета PowerShell. Разработчик данных создает связанную службу для локального хранилища данных, указывая экземпляр локальной среды выполнения интеграции, который будет использоваться службой для подключения к хранилищам данных.
Узел локальной среды выполнения интеграции шифрует учетные данные с помощью программного интерфейса защиты данных (API защиты данных) и сохраняет учетные данные локально. Если вы настроили несколько узлов для обеспечения высокой доступности, учетные данные дополнительно синхронизируются между этими узлами. Каждый узел шифрует учетные данные с помощью API защиты данных и сохраняет их локально. Синхронизация учетных данных выполняется локальной средой выполнения интеграции, и разработчик данных может отслеживать этот процесс.
Конвейеры Фабрики данных Azure и Synapse взаимодействуют с локальной средой выполнения интеграции для планирования заданий и управления ими. Обмен данными осуществляется по каналу управления, который использует общее подключение Azure Relay. Если нужно выполнить задание, служба добавляет в очередь запрос с указанием учетных данных. Это происходит в том случае, если учетные данные еще не сохранены в локальной среде выполнения интеграции. Локальная среда выполнения интеграции запускает задание после опроса очереди.
Локальная среда выполнения интеграции копирует данные между локальным и облачным хранилищами. Направление копирования зависит от того, как действие копирования настроено в конвейере данных. На этом этапе локальная среда выполнения интеграции напрямую взаимодействует с облачными службами хранилища, такими как хранилище BLOB-объектов Azure, через защищенный канал HTTPS.
Необходимые компоненты
- Поддерживаемые версии Windows:
- Windows 10
- Windows 11
- Windows Server 2016
- Windows Server 2019
- Windows Server 2022
Установка локальной среды выполнения интеграции на контроллер домена не поддерживается.
- Для локальной среды выполнения интеграции необходима 64-разрядная операционная система с установленной платформой .NET Framework 4.7.2 или более поздней версии. Дополнительные сведения см. в разделе Требования к системе для .NET Framework.
- Рекомендуемая минимальная конфигурация для компьютера с локальной средой выполнения интеграции — процессор с тактовой частотой 2 ГГц и 4 ядрами, 8 ГБ ОЗУ и 80 ГБ свободного пространства на жестком диске. Дополнительные сведения о требованиях к системе см. в Центре загрузки.
- Когда хост-компьютер переходит в режим гибернации, локальная среда выполнения интеграции не может отвечать на запросы данных. Перед установкой локальной среды выполнения интеграции на компьютере следует настроить соответствующую схему управления питанием. Если компьютер использует режим гибернации, установщик локальной среды выполнения интеграции отобразит соответствующее сообщение.
- Для успешной установки и настройки локальной среды выполнения интеграции вам потребуются права администратора на компьютере.
- Действие копирования выполняется с определенной периодичностью. Использование ресурсов ЦП и памяти на компьютере следует той же закономерности с периодами пиковой нагрузки и простоя. Использование ресурсов также зависит от объема перемещаемых данных. Когда выполняется несколько заданий копирования, в пиковые периоды уровень использования ресурсов системы повышается.
- При извлечении данных в форматах Parquet, ORC или Avro могут возникать сбои. Дополнительные сведения о Parquet см. в статье Формат Parquet в Фабрике данных Azure. Создание файлов осуществляется на компьютере с локальной средой выполнения интеграции. Для работы, как ожидалось, для создания файла требуются следующие предварительные требования:
- Среда выполнения Java (JRE) версии 11 от поставщика JRE, например Microsoft OpenJDK 11 или Eclipse Temurin 11. Убедитесь, что переменная системной среды JAVA_HOME задана в папку JDK (а не только в папке JRE), возможно, также потребуется добавить папку bin в переменную среды PATH системы.
Примечание.
При возникновении ошибок памяти может потребоваться изменение параметров Java, которое описано в документации по формату Parquet.
Примечание.
Если вы работаете в облаке для государственных организаций, ознакомьтесь со статьей Подключение к облаку для государственных организаций.
Настройка локальной среды выполнения интеграции
Чтобы создать и настроить локальную среду выполнения интеграции, используйте указанные ниже процедуры.
Создание локальной среды выполнения интеграции с помощью Azure PowerShell
Для выполнения этой задачи можно использовать Azure PowerShell. Рассмотрим пример:
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $resourceGroupName -DataFactoryName $dataFactoryName -Name $selfHostedIntegrationRuntimeName -Type SelfHosted -Description "selfhosted IR description"
Скачайте и установите на локальном компьютере локальную среду выполнения интеграции.
Получите ключ проверки подлинности и зарегистрируйте локальную среду выполнения интеграции с помощью этого ключа. Ниже приведен пример скрипта PowerShell.
Get-AzDataFactoryV2IntegrationRuntimeKey -ResourceGroupName $resourceGroupName -DataFactoryName $dataFactoryName -Name $selfHostedIntegrationRuntimeName
Примечание.
Выполните команду PowerShell в Azure для государственных организаций (см. статью Подключение к Azure для государственных организаций с помощью PowerShell).
Создание локальной среды IR с помощью пользовательского интерфейса
Чтобы создать локальную среду выполнения интеграции с помощью пользовательского интерфейса Фабрики данных Azure или Azure Synapse, выполните указанные ниже действия.
На домашней странице в пользовательском интерфейсе Фабрики данных Azure выберите вкладку Управление в крайней области слева.
Выберите элемент Integration runtimes (Среды выполнения интеграции) на панели слева. Затем выберите команду +Создать.
На странице Integration runtime setup (Настройка среды выполнения интеграции) выберите Azure, Self-Hosted (Azure, Локальное размещение) и нажмите кнопку Продолжить.
На следующей странице выберите Self-Hosted (Локальное размещение), чтобы создать локальную среду выполнения интеграции, и нажмите кнопку Продолжить.
Настройка локальной среды IR с помощью пользовательского интерфейса
Введите имя среды выполнения интеграции и нажмите кнопку Создать.
На странице Integration runtime setup (Настройка среды выполнения интеграции) щелкните ссылку под вариантом 1, чтобы начать экспресс-установку на компьютере. Или выполните действия для варианта 2, чтобы выполнить настройку вручную. Представленные ниже инструкции относятся к ручной настройке.
Скопируйте и вставьте ключ проверки подлинности. Щелкните ссылку Download and install integration runtime (Скачать и установить среду выполнения интеграции).
Скачайте локальную среду выполнения интеграции на локальный компьютер под управлением Windows. Запустите установщик.
На странице Регистрация среды выполнения интеграции (с локальным размещением) вставьте ключ, сохраненный ранее, и нажмите кнопку Зарегистрировать.
На странице Новый узел среды выполнения интеграции (с локальным размещением) нажмите кнопку Finish (Завершить)
Когда локальная среда выполнения интеграции будет успешно зарегистрирована, вы увидите следующее окно.
Настройка локальной среды выполнения интеграции на виртуальной машине Azure с помощью шаблона Azure Resource Manager
Настройку локальной среды выполнения интеграции на виртуальной машине Azure можно автоматизировать с помощью шаблона. Этот шаблон обеспечивает простой способ создания локальной среды выполнения интеграции в виртуальной сети Azure. Среда выполнения интеграции отличается высоким уровнем доступности и масштабируемостью, если для нее настроено 2 узла или более.
Настройка существующей локальной среды выполнения интеграции с помощью локальной службы PowerShell
Для настройки существующей локальной среды выполнения интеграции или управления ею можно использовать командную строку. Это особенно полезно в случае автоматизации установки и регистрации узлов локальной среды выполнения интеграции.
Файл Dmgcmd.exe включен в комплект установщика локальной среды выполнения интеграции. Обычно он расположен в папке C:\Program Files\Microsoft Integration Runtime\5.0\Shared\. Это приложение предназначено для автоматизации. Оно поддерживает различные параметры, и его можно вызывать через командную строку с помощью пакетных сценариев.
Вызовите приложение следующим образом:
dmgcmd ACTION args...
Ниже описаны действия, которые выполняет приложение, и соответствующие аргументы.
ДЕЙСТВИЕ | args | Description |
---|---|---|
-rn ,-RegisterNewNode |
"<AuthenticationKey> " [""<NodeName> " |
Регистрация узла локальной среды выполнения интеграции с указанием ключа проверки подлинности и имени узла. |
-era ,-EnableRemoteAccess |
"<port> " [""<thumbprint> " |
Разрешение удаленного доступа на текущем узле для настройки кластера с высоким уровнем доступности. Или разрешение настройки учетных данных непосредственно для локальной среды выполнения интеграции без необходимости использования Фабрики данных Azure или рабочей области Azure Synapse. Второй вариант реализуется посредством применения командлета New-AzDataFactoryV2LinkedServiceEncryptedCredential на удаленном компьютере в той же сети. |
-erac ,-EnableRemoteAccessInContainer |
"<port> " [""<thumbprint> " |
Разрешение удаленного доступа к текущему узлу, если он работает в контейнере. |
-dra ,-DisableRemoteAccess |
Запрещение удаленного доступа к текущему узлу. Удаленный доступ необходим для настройки нескольких узлов. Командлет PowerShell New-AzDataFactoryV2LinkedServiceEncryptedCredential работает, даже если удаленный доступ запрещен. Это верно, если командлет выполняется на том же компьютере, где размещен узел локальной среды выполнения интеграции. | |
-k ,-Key |
"<AuthenticationKey> " |
Перезапись или обновление предыдущего ключа проверки подлинности. Будьте внимательны с этим действием. Предыдущий узел локальной среды выполнения интеграции может перейти в автономный режим, если ключ относится к новой среде выполнения интеграции. |
-gbf ,-GenerateBackupFile |
"<filePath> "<password> |
Создание файла резервной копии для текущего узла. Файл резервной копии содержит ключ узла и учетные данные хранилища данных. |
-ibf ,-ImportBackupFile |
"<filePath> "<password> |
Восстановление узла из файла резервной копии. |
-r ,-Restart |
Перезапуск службы узла локальной среды выполнения интеграции. | |
-s ,-Start |
Запуск службы узла локальной среды выполнения интеграции. | |
-t ,-Stop |
Остановка службы узла локальной среды выполнения интеграции. | |
-sus ,-StartUpgradeService |
Запуск службы обновления локальной среды выполнения интеграции. | |
-tus ,-StopUpgradeService |
Остановка службы обновления локальной среды выполнения интеграции. | |
-tonau ,-TurnOnAutoUpdate |
Включение автоматического обновления локальной среды выполнения интеграции. Эта команда предназначена только для Фабрика данных Azure версии 1. | |
-toffau ,-TurnOffAutoUpdate |
Отключение автоматического обновления локальной среды выполнения интеграции. Эта команда предназначена только для Фабрика данных Azure версии 1. | |
-ssa ,-SwitchServiceAccount |
"<domain\user> " [""<password> " |
Настройка выполнения службы DIAHostService в качестве новой учетной записи. Для системных учетных записей и виртуальных учетных записей используйте пустой пароль (""). |
-elma ,-EnableLocalMachineAccess |
Включите доступ к локальному компьютеру (localhost, частный IP-адрес) на текущем узле локальной среды IR. В сценарии высокой доступности локальной среды IR действие необходимо вызывать на каждом узле локальной среды IR. | |
-dlma ,-DisableLocalMachineAccess |
Отключите доступ к локальному компьютеру (localhost, частный IP-адрес) на текущем узле локальной среды IR. В сценарии высокой доступности локальной среды IR действие необходимо вызывать на каждом узле локальной среды IR. | |
-DisableLocalFolderPathValidation |
Отключите проверку безопасности, чтобы включить доступ к файловой системе локального компьютера. | |
-EnableLocalFolderPathValidation |
Включите проверку безопасности, чтобы отключить доступ к файловой системе локального компьютера. | |
-eesp ,-EnableExecuteSsisPackage |
Включите выполнение пакета служб SSIS на локальном узле IR. | |
-desp ,-DisableExecuteSsisPackage |
Отключите выполнение пакета служб SSIS на локальном узле IR. | |
-gesp ,-GetExecuteSsisPackage |
Получите значение, если параметр ExecuteSsisPackage включен на локальном узле IR. Если возвращаемое значение имеет значение true, то включено ExecuteSSISPackage; Если возвращаемое значение равно false или null, то ExecuteSSISPackage отключен. |
Установка и регистрация локальной среды выполнения интеграции в Центре загрузки Майкрософт
Перейдите на страницу загрузки среды выполнения интеграции Майкрософт.
Нажмите кнопку Скачать, выберите 64-разрядную версию и нажмите кнопку Далее. 32-разрядная версия не поддерживается.
Запустите выполнение MSI-файла сразу или сохраните его на жесткий диск, а затем запустите.
В окне приветствия выберите язык и нажмите кнопку Далее.
Примите условия лицензионного соглашения об использовании программного обеспечения Майкрософт и выберите Далее.
Выберите папку для установки локальной среды выполнения интеграции и нажмите кнопку Далее.
На странице Готово к установке выберите Установить.
Нажмите кнопку Готово для завершения установки.
Получите ключ проверки подлинности с помощью PowerShell. Ниже представлен код PowerShell для получения ключа проверки подлинности.
Get-AzDataFactoryV2IntegrationRuntimeKey -ResourceGroupName $resourceGroupName -DataFactoryName $dataFactoryName -Name $selfHostedIntegrationRuntimeName
В диспетчере конфигураций Microsoft Integration Runtime откройте окно Регистрация среды выполнения интеграции (с локальным размещением) и выполните следующие действия.
Вставьте в текстовое поле ключ проверки подлинности.
Чтобы просмотреть текст ключа, щелкните Show authentication key (Показать ключ проверки подлинности).
Выберите Зарегистрировать.
Примечание.
Заметки о выпуске доступны на той же странице загрузки Microsoft Integration Runtime.
Учетная запись службы для локальной среды выполнения интеграции
По умолчанию вход в учетную запись службы локальной среды выполнения интеграции — NT SERVICE\DIAHostService. Оно отображается в разделе Службы > Integration Runtime Service (Служба Integration Runtime) > Свойства > Вход.
Убедитесь, что учетная запись имеет разрешение на вход в систему в качестве службы. В противном случае локальная среда выполнения интеграции не будет запущена. Разрешение можно проверить в разделе Локальная политика безопасности > Параметры безопасности > Локальные политики > Назначение прав пользователя > Вход в качестве службы.
Значки и уведомления в области уведомлений
Если навести курсор на значок или уведомление в области уведомлений, вы увидите сведения о состоянии локальной среды выполнения интеграции.
Высокий уровень доступности и масштабируемость
Можно связать локальную среду выполнения интеграции с несколькими локальными компьютерами или виртуальными машинами в Azure. Такие компьютеры называются узлами. Для локальной среды выполнения интеграции можно использовать до четырех узлов. Ниже перечислены преимущества использования для логического шлюза нескольких узлов на локальных компьютерах с установленным шлюзом.
- Более высокий уровень доступности локальной среды выполнения интеграции в силу устранения единой точки отказа в решении больших данных или интеграции облачных данных. Такой уровень доступности позволяет обеспечить непрерывность работы при использовании не более четырех узлов.
- Повышение производительности и пропускной способности при перемещении данных между локальными и облачными хранилищами данных. Узнайте больше о сравнении производительности.
Можно связать несколько узлов, установив программное обеспечение локальной среды выполнения интеграции из Центра загрузки. Затем следует зарегистрировать его с помощью одного из ключей проверки подлинности, полученных в результате выполнения командлета New-AzDataFactoryV2IntegrationRuntimeKey, как описано в этом руководстве.
Примечание.
Для дополнительных узлов не нужно создавать отдельную локальную среду выполнения интеграции. Вы можете установить эту среду на другом компьютере и зарегистрировать ее, используя тот же ключ проверки подлинности.
Примечание.
Прежде чем добавить еще один узел для обеспечения высокого уровня доступности и масштабируемости, убедитесь, что на первом узле включен параметр Remote access to intranet (Удаленный доступ к интрасети). Для этого выберите Диспетчер конфигураций Microsoft Integration Runtime>Настройки>Remote access to intranet (Удаленный доступ к интрасети).
Рекомендации по масштабированию
Горизонтальное увеличение масштаба
Если загрузка процессора высокая, а объем доступной памяти в локальной среде выполнения интеграции мал, добавьте новый узел, чтобы распределить нагрузку между компьютерами. Если действия не выполнены из-за истечения времени ожидания или перехода локальной среды выполнения интеграции в автономный режим, может помочь добавление узла в шлюз. Чтобы добавить узел, выполните следующие действия.
- Скачайте настройку SHIR на портале Фабрика данных Azure.
- Запустите установщик на узле, который вы хотите добавить в кластер.
- Во время установки выберите параметр присоединения к существующей среде выполнения интеграции и укажите ключ проверки подлинности из существующего SHIR, чтобы связать новый узел с существующим кластером SHIR.
Увеличение масштаба
Если процессор и доступная оперативная память недостаточно загружены, но количество выполняемых параллельных заданий достигает ограничения для узла, вертикально увеличьте масштаб путем увеличения числа параллельных заданий, которые можно запустить на узле. Кроме того, масштаб можно увеличить, если время ожидания действий истекает из-за перегрузки локальной среды выполнения интеграции. Как показано на следующем рисунке, можно увеличить максимальную емкость для узла:
Требования к TLS- и SSL-сертификатам
Если вы хотите включить удаленный доступ из интрасети по TLS/SSL-сертификату (расширенный) для защиты обмена данными между узлами среды выполнения интеграции, то можете выполнить действия, описанные в разделе Включение удаленного доступа из интрасети с использованием TLS/SSL-сертификата.
Примечание.
Этот сертификат используется в следующих целях.
- Для шифрования портов в узле локальной среды выполнения интеграции.
- Для обмена данными между узлами при синхронизации состояния, в том числе синхронизации учетных данных связанных служб между узлами.
- Если командлет PowerShell используется для настройки учетных данных связанной службы в локальной сети.
Мы рекомендуем использовать этот сертификат, если ваша частная сетевая среда небезопасная или если вы хотите защитить обмен данными между узлами в своей частной сети.
Перемещение данных при передаче из локальной среды выполнения интеграции в другие хранилища данных всегда выполняется по зашифрованному каналу, независимо от того, установлен этот сертификат или нет.
Синхронизация учетных данных
Если учетные данные или значения секретов не сохраняются в Azure Key Vault, они будут храниться на компьютерах, где находится локальная среда выполнения интеграции. Каждый узел будет иметь копию учетных данных определенной версии. Чтобы обеспечить совместную работу всех узлов, номера их версий должны быть одинаковыми.
Рекомендации для прокси-сервера
Если для доступа в Интернет в вашей корпоративной среде используется прокси-сервер, настройте параметры этого прокси-сервера в локальной среде выполнения интеграции. Прокси-сервер можно настроить на этапе начальной регистрации.
После настройки локальная среда выполнения интеграции будет использовать прокси-сервер для подключения к источнику и назначению передачи данных (которые используют протокол HTTP или HTTPS), выполняемой облачной службой. Поэтому при первоначальной настройке необходимо щелкнуть ссылку Изменить.
Доступны три варианта конфигурации.
- Без прокси-сервера. Локальная среда выполнения интеграции не использует явно прокси-сервер для подключения к облачным службам.
- Использовать системный прокси-сервер. Локальная среда выполнения интеграции использует параметр прокси-сервера, настроенный в файлах diahost.exe.config и diawp.exe.config. Если в этих файлах не указана конфигурация прокси-сервера, локальная среда выполнения интеграции подключается к облачной службе напрямую без использования прокси-сервера.
- Использовать настраиваемый прокси. Локальная среда выполнения интеграции использует собственные параметры прокси-сервера HTTP вместо конфигурации, настроенной в файлах diahost.exe.config и diawp.exe.config. Необходимо указать адрес и порт. Имя пользователя и пароль являются необязательными и указываются в зависимости от параметров проверки подлинности прокси-сервера. Все параметры шифруются с помощью Windows DPAPI в локальной среде выполнения интеграции и хранятся локально на компьютере.
Служба узла локальной среды выполнения интеграции автоматически перезапускается после сохранения обновленных параметров прокси-сервера.
После регистрации локальной среды выполнения интеграции вы можете просмотреть или изменить параметры прокси-сервера с помощью диспетчера конфигураций Microsoft Integration Runtime.
- Откройте диспетчер конфигураций Microsoft Integration Runtime.
- Выберите вкладку Параметры.
- В разделе HTTP-прокси щелкните ссылку Изменить, чтобы открыть диалоговое окно Указание HTTP-прокси.
- Выберите Далее. Далее появится окно предупреждения, запрашивающее разрешение на сохранение настроек прокси-сервера и перезапуск службы узла среды выполнения интеграции.
При помощи диспетчера конфигурации можно просмотреть и обновить прокси-сервер HTTP.
Примечание.
Если настроить на прокси-сервере проверку подлинности NTLM, служба узла среды выполнения интеграции будет запускаться под учетной записью домена. Если позднее вы измените пароль для учетной записи домена, не забудьте обновить параметры конфигурации службы и перезапустить ее. Учитывая это требование, для доступа к прокси-серверу рекомендуется использовать выделенную учетную запись домена, для которой не требуется часто менять пароль.
Настройка параметров прокси-сервера
Если для прокси-сервера HTTP выбрать параметр Использовать системный прокси-сервер, локальная среда выполнения интеграции будет использовать параметры прокси-сервера в файлах diahost.exe.config и diawp.exe.config. Если в этих файлах не указан прокси-сервер, локальная среда выполнения интеграции подключается к облачной службе напрямую без использования прокси-сервера. Ниже приводится процедура обновления файла конфигурации diahost.exe.config:
В проводник создайте безопасную копию C:\Program Files\Microsoft Integration Runtime\5.0\Shared\diahost.exe.config в качестве резервной копии исходного файла.
Откройте Блокнот от имени администратора.
В Блокноте откройте текстовый файл C:\Program Files\Microsoft Integration Runtime\5.0\Shared\diahost.exe.config.
Найдите тег по умолчанию system.net, как показано в коде ниже.
<system.net> <defaultProxy useDefaultCredentials="true" /> </system.net>
Затем можно добавить данные прокси-сервера, как показано в следующем примере:
<system.net> <defaultProxy enabled="true"> <proxy bypassonlocal="true" proxyaddress="http://proxy.domain.org:8888/" /> </defaultProxy> </system.net>
В теге прокси-сервера можно указать дополнительные свойствам, чтобы задать обязательные параметры, например
scriptLocation
. Сведения о синтаксисе вы найдете в статье Элемент <proxy> (параметры сети).<proxy autoDetect="true|false|unspecified" bypassonlocal="true|false|unspecified" proxyaddress="uriString" scriptLocation="uriString" usesystemdefault="true|false|unspecified "/>
Сохраните файл конфигурации в исходном расположении. Затем перезапустите службу узла локальной среды выполнения интеграции, чтобы она учла эти изменения.
Чтобы перезапустить службу, используйте приложение "Службы" на панели управления. Или нажмите в диспетчере конфигураций Integration Runtime кнопку Остановить службу, а затем выберите Запустить службу.
Если служба не запускается, вероятно, вы добавили в измененный файл конфигурации приложения XML-тег с неверным синтаксисом.
Внимание
Не забудьте обновить оба файла (diahost.exe.config и diawp.exe.config).
Необходимо также убедиться, что Microsoft Azure находится в списке разрешений вашей компании. Вы можете скачать список допустимых IP-адресов Azure. Диапазоны IP-адресов для каждого облака, сгруппированные по регионам и обозначенным тегами службам в этом облаке, теперь доступны для скачивания в Центре загрузки Майкрософт:
- Общедоступные: https://www.microsoft.com/download/details.aspx?id=56519
- US Gov: https://www.microsoft.com/download/details.aspx?id=57063
- Для Германии: https://www.microsoft.com/download/details.aspx?id=57064
- Китай: https://www.microsoft.com/download/details.aspx?id=57062
Настройка параметров прокси-сервера при использовании частной конечной точки
Если сетевая архитура вашей компании включает использование частных конечных точек и по соображениям безопасности, а политика вашей компании не разрешает прямое подключение к Интернету с виртуальной машины, в которой размещена локальная среда выполнения интеграции, к URL-адресу службы Фабрика данных Azure, то необходимо разрешить обход URL-адреса службы ADF для полного подключения. Ниже приводится процедура обновления файла конфигурации diahost.exe.config. Эти действия также следует повторить для файла конфигурации diawp.exe.config.
В проводник создайте безопасную копию C:\Program Files\Microsoft Integration Runtime\5.0\Shared\diahost.exe.config в качестве резервной копии исходного файла.
Откройте Блокнот от имени администратора.
В Блокноте откройте файл C:\Program Files\Microsoft Integration Runtime\5.0\Shared\diahost.exe.config.
Найдите тег system.net по умолчанию, как показано здесь:
<system.net> <defaultProxy useDefaultCredentials="true" /> </system.net>
Затем можно добавить сведения об обходном списке, как показано в следующем примере:
<system.net> <defaultProxy> <bypasslist> <add address = "[adfresourcename].[adfresourcelocation].datafactory.azure.net" /> </bypasslist> <proxy usesystemdefault="True" proxyaddress="http://proxy.domain.org:8888/" bypassonlocal="True" /> </defaultProxy> </system.net>
Возможные признаки проблем, связанных с брандмауэром и прокси-сервером
Если отображаются сообщения об ошибках, аналогичные приведенным ниже, вероятная причина — неправильная настройка брандмауэра или прокси-сервера. Из-за такой конфигурации локальная среда выполнения интеграции не может подключиться к конвейеру Фабрики данных или Synapse для самостоятельной проверки подлинности. Чтобы убедиться, что брандмауэр и прокси-сервер настроены должным образом, см. предыдущий раздел.
При попытке регистрации локальной среды выполнения интеграции появляется следующее сообщение об ошибке: "Failed to register this Integration Runtime node! Confirm that the Authentication key is valid and the integration service Host Service is running on this machine" (Зарегистрировать этот узел Integration Runtime не удалось! Убедитесь, что используется действительный ключ проверки подлинности и что на этом компьютере запущена служба узла среды выполнения).
При открытии диспетчера конфигураций среды выполнения интеграции отображается состояние Отключено или Подключение. При просмотре журнала событий Windows в разделе Просмотр событий>Журналы приложения и служб>Microsoft Integration Runtime отображаются сообщения об ошибках следующего вида:
Unable to connect to the remote server A component of Integration Runtime has become unresponsive and restarts automatically. Component name: Integration Runtime (self-hosted).
Разрешение удаленного доступа из интрасети
Если вы используете PowerShell для шифрования учетных данных на подключенном к сети компьютере, где не установлена локальная среда выполнения интеграции, можно включить параметр Удаленный доступ из интрасети. Если вы используете PowerShell для шифрования учетных данных на компьютере, где установлена локальная среда выполнения интеграции, параметр Удаленный доступ из интрасети включить нельзя.
Включите параметр Удаленный доступ из интрасети перед добавлением еще одного узла для обеспечения высокого уровня доступности и масштабируемости.
После запуска установки локальной среды выполнения интеграции версии 3.3 или более поздней установщик по умолчанию отключает параметр Удаленный доступ из интрасети на компьютере, где будет работать локальная среда выполнения интеграции.
При использовании брандмауэра от партнера или других поставщиков можно вручную открыть порт 8060 или настраиваемый пользователем порт. Если во время настройки локальной среды выполнения интеграции возникли проблемы с брандмауэром, попробуйте установить локальную среду выполнения интеграции без настройки брандмауэра, используя следующую команду.
msiexec /q /i IntegrationRuntime.msi NOFIREWALL=1
Если вы не хотите открывать порт 8060 на компьютере, где работает локальная среда выполнения интеграции, то для настройки учетных данных хранилища данных вам придется использовать механизм, отличный от приложения "Настройка учетных данных". Например, вы можете применить командлет PowerShell New-AzDataFactoryV2LinkedServiceEncryptCredential.
Порты и брандмауэры
Следует рассмотреть два брандмауэра:
- Корпоративный брандмауэр, который работает на центральном маршрутизаторе организации.
- Брандмауэр Windows, который работает как управляющая программа на локальном компьютере, где установлена локальная среда выполнения интеграции.
На уровне корпоративного брандмауэра необходимо настроить следующие домены и исходящие порты.
Доменные имена | Исходящие порты | Description |
---|---|---|
Общедоступное облако: *.servicebus.windows.net Azure для государственных организаций: *.servicebus.usgovcloudapi.net Китай: *.servicebus.chinacloudapi.cn |
443 | Требуется локальной среде выполнения интеграции для интерактивной разработки. Не требуется, если включена автономная интерактивная разработка. |
Общедоступное облако: {datafactory}.{region}.datafactory.azure.net или *.frontend.clouddatahub.net Azure для государственных организаций: {datafactory}.{region}.datafactory.azure.us Китай: {datafactory}.{region}.datafactory.azure.cn |
443 | Требуется локальной среде выполнения интеграции для подключения к службе фабрики данных. Для новой созданной фабрики данных в общедоступном облаке найдите полное доменное имя (FQDN) из ключа локальной среды выполнения интеграции, который находится в формате {фабрика данных}. {region}.datafactory.azure.net. Для старой фабрики данных и любой версии Azure Synapse Analytics, если полное доменное имя не отображается в локальном ключе интеграции, используйте *.frontend.clouddatahub.net вместо этого. |
download.microsoft.com |
443 | Требуется локальной среде выполнения интеграции для скачивания обновлений. Если вы отключили автоматическое обновление, можно пропустить настройку этого домена. |
URL-адрес Key Vault | 443 | Требуется для Azure Key Vault, если ваши учетные данные хранятся в Key Vault. |
Эти исходящие порты, как правило, уже разрешены на уровне брандмауэра Windows или на уровне компьютера. Если это не так, вы можете настроить домены и порты на компьютере, где установлена локальная среда выполнения интеграции.
Примечание.
Так как в настоящее время служба Azure Relay не поддерживает тег службы, для обмена данными с Azure Relay следует использовать тег службы AzureCloud или Internet в правилах NSG. Для обмена данными с Фабрикой данных Azure или рабочими областями Synapse в правилах NSG можно использовать тег службы DataFactoryManagement.
В зависимости от того, какие источники и приемники используются, может потребоваться разрешить в корпоративном брандмауэре или брандмауэре Windows дополнительные домены и исходящие порты.
Доменные имена | Исходящие порты | Description |
---|---|---|
*.core.windows.net |
443 | Используется локальной средой выполнения интеграции для подключения к учетной записи хранения Azure при помощи функции промежуточного копирования. |
*.database.windows.net |
1433 | Требуется только при двунаправленном копировании с участием Базы данных SQL Azure или Azure Synapse Analytics. Используйте функцию промежуточного копирования для копирования данных в Базу данных SQL или Azure Synapse Analytics, не открывая порт 1433. |
*.azuredatalakestore.net login.microsoftonline.com/<tenant>/oauth2/token |
443 | Требуется только при двунаправленном копировании с участием Azure Data Lake Store. |
Для некоторых облачных баз данных, например Базы данных SQL Azure и Azure Data Lake, нужно добавить IP-адреса компьютеров, на которых работает локальная среда выполнения интеграции, в список разрешений в конфигурации брандмауэра.
Примечание.
Невозможно установить среду выполнения интеграции и шлюз Power BI на одном компьютере, так как в основном среда выполнения интеграции использует номер порта 443, который также является одним из основных портов, используемых шлюзом Power BI.
Автономная интерактивная разработка (предварительная версия)
Для выполнения интерактивных действий разработки, таких как предварительная версия данных и тестирование подключений, локальная среда выполнения интеграции требует подключения к Azure Relay. Если подключение не установлено, существует два возможных решения для обеспечения непрерывной работы. Первым вариантом является добавление конечных точек Azure Relay в список разрешений брандмауэра получить URL-адрес Azure Relay. Кроме того, можно включить автономную интерактивную разработку.
Примечание.
Если локальная среда выполнения интеграции не сможет установить подключение к Azure Relay, его состояние будет помечено как "ограничено".
Примечание.
Хотя включена автономная интерактивная разработка, весь интерактивный трафик разработки будет направляться исключительно через эту функцию, обходя Ретранслятор Azure. Трафик будет перенаправлен только обратно в Azure Relay после отключения этой функции.
Примечание.
Получение IP-адреса и журнал отправки не поддерживаются, если включена автономная интерактивная разработка.
Получение URL-адреса Azure Relay
Для обмена данными с Azure Relay нужен один обязательный домен и порт, которые следует указать в списке разрешений брандмауэра. Локальная среда выполнения интеграции использует службу для операций интерактивной разработки, например для проверки подключения, просмотра списка папок и списка таблиц, получения схемы и предварительного просмотра данных. Если вы хотите разрешить .servicebus.windows.net и другие конкретные URL-адреса, на портале службы можно просмотреть все полные доменные имена, необходимые для локальной среды выполнения интеграции.
Получение URL-адреса Azure Relay с помощью пользовательского интерфейса:
Выполните следующие действия:
Перейдите на портал службы и выберите локальную среду выполнения интеграции.
На странице "Edit" (Правка) выберите Nodes (Узлы).
Выберите View Service URLs (Просмотр URL-адресов служб), чтобы получить все полные доменные имена.
Эти полные доменные имена можно добавить в список разрешений правил брандмауэра.
Примечание.
Дополнительные сведения о протоколе подключений Azure Relay см. в статье Протокол гибридных подключений Azure Relay.
Получение URL-адреса Azure Relay с помощью скрипта:
# The documentation of Synapse self hosted integration runtime (SHIR) mentions that the SHIR requires access to the Azure Service Bus IP addresses
# https://learn.microsoft.com/en-us/azure/data-factory/create-self-hosted-integration-runtime
# It is a requirement to use a wildcard (*.servicebus.windows.net) in your firewalls.
# While this is the easiest way to clear the firewall, it also opens the firewall to all Azure Service Bus IP addresses, including malicious_actor.servicebus.windows.net.
# This might be restricted by your security policies.
# This script resolves the Azure Service Bus IP addresses used by an integration runtime and adds them to the network security group (NSG) rule for the Synapse self-hosted integration runtime (SHIR).
# As the mapping of IP addresses to Domain Names might change, we recommend to run at least once a day to keep the NSG up to date.
# An alternative to running this script is to use the "Self-contained interactive authoring" feature of the self hosted integration runtime.
# Prerequisites:
# - PowerShell installed
# - Azure CLI (az) installed and logged in (https://learn.microsoft.com/en-us/cli/azure/)
# - signed in user needs rights to modify NSG (e.g. Network contributor) and to read status of the SHIR (e.g. reader), plus reader on the subscription
param (
[string]$synapseRresourceGroupName = "synapse_test",
[string]$nsgResourceGroupName = "adf_shir_rg",
[string]$synapseWorkspaceName = "synapse-test-jugi2",
[string]$integrationRuntimeName = "IntegrationRuntime2",
[string]$networkSecurityGroupName = "jugis-shir-nsg",
[string]$securityRuleName = "AllowSynapseServiceBusIPs",
[int]$priority = 100
)
# Check if the user is already logged in
$azAccount = az account show 2>$null
if (-not $azAccount) {
# Run az login with managed identity if not logged in
az login --identity
}
# Retrieve the URLs of the connections from the Synapse self-hosted integration runtime
$urls = az synapse integration-runtime get-status `
--resource-group $synapseRresourceGroupName `
--workspace-name $synapseWorkspaceName `
--name $integrationRuntimeName `
--query "properties.serviceUrls" -o tsv
# Initialize an empty array to hold the IP addresses
$ipAddresses = @()
# Iterate over the URLs to resolve and collect the IP addresses
# The proper DNS resolution might only work within Azure, not locally
foreach ($url in $urls) {
Write-Output "Processing URL: $url"
$ip = [System.Net.Dns]::GetHostAddresses($url) | Where-Object { $_.AddressFamily -eq 'InterNetwork' } | Select-Object -ExpandProperty IPAddressToString
if ($ip) {
$ipAddresses += $ip
}
}
# Remove duplicate IP addresses from the array
$ipAddresses = $ipAddresses | Sort-Object -Unique
# Convert the array of IP addresses to a space-separated string
$ipAddressesString = $ipAddresses -join ' '
# Create or update the network security group rule to allow outbound traffic for the collected IP addresses
# Using Invoke-Expression to handle the command string
$az_cmd = "az network nsg rule create --resource-group $nsgResourceGroupName --nsg-name $networkSecurityGroupName --name $securityRuleName --priority $priority --destination-address-prefixes $ipAddressesString --destination-port-ranges '443' --direction Outbound --access Allow --protocol '*' --description 'Allow outbound access to Synapse servicebus IPs'"
Invoke-Expression $az_cmd
Копирование данных из источника в приемник
Надлежащим образом активируйте правила в корпоративном брандмауэре, брандмауэре Windows на компьютере, где работает локальная среда выполнения интеграции, а также в самом хранилище данных. Если правила активированы, локальная среда выполнения интеграции сможет успешно подключаться как к источнику, так и к приемнику. Активируйте правила для каждого хранилища данных, задействованного в операции копирования.
Например, для копирования данных из локального хранилища данных в приемник Базы данных SQL или приемник Azure Synapse Analytics, выполните следующие действия.
- Разрешите исходящий трафик TCP через порт 1433 для брандмауэра Windows и корпоративного брандмауэра.
- В параметрах брандмауэра Базы данных SQL добавьте в список разрешенных IP-адресов адрес компьютера, на котором работает локальная среда выполнения интеграции.
Примечание.
Если брандмауэр блокирует исходящий порт 1433, локальная среда выполнения интеграции не сможет получить доступ к базе данных SQL напрямую. В этом случае можно использовать промежуточное копирование в Базу данных SQL и Azure Synapse Analytics. Тогда для перемещения данных понадобится только протокол HTTPS (порт 443).
Если все источники данных и приемник и локальная среда выполнения интеграции находятся в локальной среде, скопированные данные не будут идти в облако, но строго остаются в локальной среде.
Хранилище учетных данных
Существуют два способа хранения учетных данных при использовании локальной среды выполнения интеграции:
- Использование Azure Key Vault.
Это рекомендуемый способ хранения учетных данных в Azure. Локальная среда выполнения интеграции может напрямую получать учетные данные из Azure Key Vault. Это позволяет избежать некоторых потенциальных проблем безопасности и проблем с синхронизацией учетных данных между узлами локальной среды выполнения интеграции. 2. Хранение учетных данных локально.
Учетные данные будут отправлены на компьютер локальной среды выполнения интеграции и зашифрованы. Когда локальная среда выполнения интеграции восстанавливается после сбоя, можно восстановить учетные данные из резервного копирования до или изменить связанную службу и снова отправить учетные данные в локальную среду выполнения интеграции. В противном случае конвейер не будет работать из-за отсутствия учетных данных при выполнении через локальную среду выполнения интеграции.
Примечание.
Если вы предпочитаете хранить учетные данные локально, необходимо добавить домен для интерактивной разработки в список разрешений брандмауэра и открыть соответствующий порт. Этот канал также используется локальной средой выполнения интеграции для получения учетных данных. Сведения о домене и порте, необходимых для интерактивной разработки, см. в разделе Порты и брандмауэры.
Рекомендации по установке
Можно установить локальную среду выполнения интеграции, скачав пакет установки управляемого удостоверения в Центре загрузки Майкрософт. Пошаговые инструкции см. в статье, посвященной перемещению данных между локальным хранилищем и облаком.
- На компьютере, где работает локальная среда выполнения интеграции, нужно настроить схему управления питанием так, чтобы компьютер не переходил в режим гибернации. Если хост-компьютер перейдет в режим гибернации, локальная среда выполнения интеграции будет отключена.
- Регулярно выполняйте резервное копирование учетных данных, настроенных в локальной среде выполнения интеграции.
- Сведения об автоматизации операций локальной среды выполнения интеграции см. в разделе, посвященном настройке существующей локальной среды выполнения интеграции с помощью PowerShell.
Важные замечания
При установке локальной среды выполнения интеграции следует учитывать следующее.
- Держите его близко к источнику данных, но не обязательно на том же компьютере
- Не устанавливайте его на том же компьютере, что и шлюз Power BI
- Только Windows Server (серверы шифрования, совместимые с FIPS, могут привести к сбою заданий)
- Общий доступ между несколькими источниками данных
- Совместное использование нескольких фабрик данных
Связанный контент
Пошаговые инструкции см. в руководстве по копированию локальных данных в облако.