Создание среды выполнения интеграции Azure SSIS в фабрике данных AzureCreate an Azure-SSIS integration runtime in Azure Data Factory

В этой статье описаны действия по подготовке среды выполнения интеграции Azure-SQL Server Integration Services (SSIS) в фабрике данных Azure.This article provides steps for provisioning an Azure-SQL Server Integration Services (SSIS) integration runtime (IR) in Azure Data Factory. Среда выполнения интеграции Azure-SSIS поддерживает следующие возможности:An Azure-SSIS IR supports:

  • Выполнение пакетов, развернутых в каталоге SSIS (SSISDB), которые размещаются на сервере Базы данных SQL Azure или управляемом экземпляре (модель развертывания проектов).Running packages deployed into the SSIS catalog (SSISDB) hosted by an Azure SQL Database server or a managed instance (Project Deployment Model).
  • Выполнение пакетов, развернутых в файловых системах, на общих файловых ресурсах или в Файлах Azure (модель развертывания пакетов).Running packages deployed into file systems, file shares, or Azure Files (Package Deployment Model).

После подготовки Azure-SSIS IR вы можете использовать для развертывания и запуска пакетов в Azure любые привычные средства,After an Azure-SSIS IR is provisioned, you can use familiar tools to deploy and run your packages in Azure. например SQL Server Data Tools, SQL Server Management Studio или средства командной строки dtinstall, dtutil и dtexec.These tools include SQL Server Data Tools, SQL Server Management Studio, and command-line tools like dtinstall, dtutil, and dtexec.

В руководстве Azure-SSIS IR подготовки показано, как создать Azure-SSIS IR с помощью портал Azure или приложения фабрики данных.The Provisioning Azure-SSIS IR tutorial shows how to create an Azure-SSIS IR via the Azure portal or the Data Factory app. В этом учебнике также показано, как при необходимости использовать сервер базы данных SQL Azure или управляемый экземпляр для размещения SSISDB.The tutorial also shows how to optionally use an Azure SQL Database server or managed instance to host SSISDB. Эта статья разворачивается в этом руководстве и описывает, как выполнять эти дополнительные задачи:This article expands on the tutorial and describes how to do these optional tasks:

  • Используйте сервер базы данных SQL Azure с конечными точками службы виртуальной сети или управляемым экземпляром с частной конечной точкой для размещения SSISDB.Use an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint to host SSISDB. В качестве необходимого компонента необходимо настроить разрешения и параметры виртуальной сети для Azure-SSIS IR присоединиться к виртуальной сети.As a prerequisite, you need to configure virtual network permissions and settings for your Azure-SSIS IR to join a virtual network.

  • Используйте проверку подлинности Azure Active Directory (Azure AD) с управляемым удостоверением для фабрики данных, чтобы подключиться к серверу базы данных SQL Azure или управляемому экземпляру.Use Azure Active Directory (Azure AD) authentication with the managed identity for your data factory to connect to an Azure SQL Database server or managed instance. В качестве необходимого компонента необходимо добавить управляемое удостоверение для фабрики данных в качестве пользователя базы данных, который может создать экземпляр SSISDB.As a prerequisite, you need to add the managed identity for your data factory as a database user who can create an SSISDB instance.

  • Присоедините Azure-SSIS IR к виртуальной сети или настройте локально размещенное IR в качестве прокси-сервера для Azure-SSIS IR доступа к данным в локальной среде.Join your Azure-SSIS IR to a virtual network, or configure a self-hosted IR as a proxy for your Azure-SSIS IR to access data on-premises.

В этой статье показано, как подготавливать Azure-SSIS IR с помощью портал Azure, Azure PowerShell и шаблона Azure Resource Manager.This article shows how to provision an Azure-SSIS IR by using the Azure portal, Azure PowerShell, and an Azure Resource Manager template.

Технические условияPrerequisites

Примечание

Эта статья была изменена и теперь содержит сведения о новом модуле Az для Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Вы по-прежнему можете использовать модуль AzureRM, исправления ошибок для которого будут продолжать выпускаться как минимум до декабря 2020 г.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Дополнительные сведения о совместимости модуля Az с AzureRM см. в статье Introducing the new Azure PowerShell Az module (Знакомство с новым модулем Az для Azure PowerShell).To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Инструкции по установке модуля Az см. в статье об установке Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

  • Подписка Azure.Azure subscription. Если у вас еще нет подписки, вы можете создать бесплатную пробную учетную запись.If you don't already have a subscription, you can create a free trial account.

  • Сервер базы данных SQL Azure или управляемый экземпляр (необязательно) .Azure SQL Database server or managed instance (optional). Если у вас еще нет сервера базы данных, создайте его на портале Azure перед началом работы.If you don't already have a database server, create one in the Azure portal before you get started. Фабрика данных, в свою очередь, создаст экземпляр SSISDB на этом сервере базы данных.Data Factory will in turn create an SSISDB instance on this database server.

    Мы рекомендуем создать сервер базы данных в одном регионе Azure со средой интеграции.We recommend that you create the database server in the same Azure region as the integration runtime. Эта конфигурация позволяет среде выполнения интеграции записывать журналы выполнения в SSISDB, не пересекая регионы Azure.This configuration lets the integration runtime write execution logs into SSISDB without crossing Azure regions.

    Учитывайте следующие моменты:Keep these points in mind:

    • В зависимости от выбранного сервера базы данных экземпляр SSISDB может быть создан от вашего имени как отдельная база данных, как часть эластичного пула или в виде управляемого экземпляра.Based on the selected database server, the SSISDB instance can be created on your behalf as a single database, as part of an elastic pool, or in a managed instance. Доступ к нему можно получить через общедоступную сеть или после присоединения к виртуальной сети.It can be accessible in a public network or by joining a virtual network. Рекомендации по выбору типа сервера базы данных для размещения SSISDB см. в разделе Сравнение одной базы данных, эластичного пула и управляемого экземпляра базы данных SQL Azure в этой статье.For guidance in choosing the type of database server to host SSISDB, see the Compare an Azure SQL Database single database, elastic pool, and managed instance section in this article.

      Если сервер Базы данных SQL Azure используется с конечными точками служб в виртуальной сети или с управляемым экземпляром и частной конечной точкой для размещения SSISDB, или вам нужен доступ к локальным данным без настройки локальной среды выполнения интеграции, необходимо присоединить среду выполнения интеграции Azure-SSIS к виртуальной сети.If you use an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint to host SSISDB, or if you require access to on-premises data without configuring self-hosted IR, you need to join your Azure-SSIS IR to a virtual network. Дополнительные сведения см. в статье Присоединение Azure-SSIS IR к виртуальной сети.For more information, see Join an Azure-SSIS IR to a virtual network.

    • Убедитесь, что для сервера базы данных включен параметр Разрешить доступ к службам Azure.Confirm that the Allow access to Azure services setting is enabled for the database server. Этот параметр не применяется, если сервер Базы данных SQL Azure используется с конечными точками служб для виртуальной сети или с управляемым экземпляром и частной конечной точкой для размещения базы данных SSISDB.This setting is not applicable when you use an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint to host SSISDB. Дополнительные сведения см. в разделе Создание правила брандмауэра на уровне сервера с помощью портала Azure.For more information, see Secure your Azure SQL database. Сведения о включении этого параметра с помощью PowerShell см. в статье New-AzSqlServerFirewallRule.To enable this setting by using PowerShell, see New-AzSqlServerFirewallRule.

    • Добавьте IP-адрес клиентского компьютера или диапазон IP-адресов, который включает IP-адрес клиентского компьютера, в список IP-адресов клиента в параметрах брандмауэра для сервера базы данных.Add the IP address of the client machine, or a range of IP addresses that includes the IP address of the client machine, to the client IP address list in the firewall settings for the database server. Дополнительные сведения см. в разделе Правила брандмауэра уровня сервера Базы данных SQL Azure и уровня базы данных SQL Azure.For more information, see Azure SQL Database server-level and database-level firewall rules.

    • К серверу базы данных можно подключиться с использованием аутентификации SQL и учетных данных администратора сервера или аутентификации AAD и управляемого удостоверения фабрики данных.You can connect to the database server by using SQL authentication with your server admin credentials, or by using Azure AD authentication with the managed identity for your data factory. Для последнего варианта управляемое удостоверение ADF нужно добавить в группу AAD с разрешениями на доступ к серверу базы данных.For the latter, you need to add the managed identity for your data factory into an Azure AD group with access permissions to the database server. Дополнительные сведения см. в статье Включение проверки подлинности Azure AD для Azure-SSIS IR.For more information, see Enable Azure AD authentication for an Azure-SSIS IR.

    • Убедитесь, что на сервере базы данных еще нет экземпляра SSISDB.Confirm that your database server does not have an SSISDB instance already. При подготовке Azure-SSIS IR не поддерживается использование существующего экземпляра SSISDB.The provisioning of an Azure-SSIS IR does not support using an existing SSISDB instance.

  • Виртуальная сеть Azure Resource Manager (необязательно) .Azure Resource Manager virtual network (optional). Виртуальная сеть Azure Resource Manager нужна, если выполняется хотя бы одно из следующих условий.You must have an Azure Resource Manager virtual network if at least one of the following conditions is true:

    • Вы размещаете SSISDB на сервере базы данных SQL Azure с конечными точками службы виртуальной сети или управляемым экземпляром с частной конечной точкой.You're hosting SSISDB on an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint.
    • Необходимо подключиться к локальным хранилищам данных из пакетов служб SSIS, выполняющихся на Azure-SSIS IR, без настройки автономного IR.You want to connect to on-premises data stores from SSIS packages running on your Azure-SSIS IR without configuring a self-hosted IR.
  • Azure PowerShell (необязательно) .Azure PowerShell (optional). Если вы хотите выполнить подготовку среды выполнения интеграции Azure-SSIS с помощью скрипта PowerShell, следуйте инструкциям в разделе Установка модуля Azure PowerShell.Follow the instructions in How to install and configure Azure PowerShell, if you want to run a PowerShell script to provision your Azure-SSIS IR.

Региональная поддержкаRegional support

Список регионов Azure, в которых доступны фабрика данных и Azure-SSIS IR, см. в статье фабрика данных и доступность IR в службах SSIS по регионам.For a list of Azure regions in which Data Factory and an Azure-SSIS IR are available, see Data Factory and SSIS IR availability by region.

Сравнение отдельной базы данных SQL, эластичного пула и управляемого экземпляраComparison of a SQL Database single database, elastic pool, and managed instance

В следующей таблице сравниваются некоторые функции сервера базы данных SQL Azure и управляемого экземпляра, которые связаны с Azure-ССИР IR.The following table compares certain features of an Azure SQL Database server and managed instance as they relate to Azure-SSIR IR:

КомпонентFeature Одна база данных или эластичный пулSingle database/elastic pool Управляемый экземплярManaged instance
ПланированиеScheduling Агент SQL Server недоступна.The SQL Server Agent is not available.

См. раздел Планирование выполнения пакета в конвейере фабрики данных.See Schedule a package execution in a Data Factory pipeline.
Доступен агент Управляемый экземпляр.The Managed Instance Agent is available.
Authentication (Аутентификация)Authentication Экземпляр SSISDB можно создать с пользователем автономной базы данных, который представляет любую группу Azure AD с управляемым удостоверением фабрики данных в качестве члена роли db_owner .You can create an SSISDB instance with a contained database user who represents any Azure AD group with the managed identity of your data factory as a member in the db_owner role.

См. раздел Включение аутентификации Azure AD для создания экземпляра SSISDB на сервере базы данных SQL Azure.See Enable Azure AD authentication to create an SSISDB instance on an Azure SQL Database server.
Экземпляр SSISDB можно создать с пользователь автономной базы данных, который представляет управляемое удостоверение фабрики данных.You can create an SSISDB instance with a contained database user who represents the managed identity of your data factory.

См. раздел Включение аутентификации Azure AD для создания экземпляра SSISDB в управляемом экземпляре базы данных SQL Azure.See Enable Azure AD authentication to create an SSISDB instance in an Azure SQL Database managed instance.
Уровень службService tier При создании Azure-SSIS IR с сервером базы данных SQL Azure можно выбрать уровень службы для SSISDB.When you create an Azure-SSIS IR with your Azure SQL Database server, you can select the service tier for SSISDB. Существует несколько уровней служб.There are multiple service tiers. При создании Azure-SSIS IR с управляемым экземпляром нельзя выбрать уровень служб для SSISDB.When you create an Azure-SSIS IR with your managed instance, you can't select the service tier for SSISDB. Все базы данных в управляемом экземпляре имеют общий ресурс, выделенный для этого экземпляра.All databases in your managed instance share the same resource allocated to that instance.
Виртуальная сетьVirtual network Azure-SSIS IR может соединяться с Azure Resource Manager виртуальными сетями только при использовании сервера базы данных SQL Azure с конечными точками службы виртуальной сети или при необходимости доступа к локальным хранилищам данных без настройки локальных IR-устройств.Your Azure-SSIS IR can join Azure Resource Manager virtual networks only if you use an Azure SQL Database server with virtual network service endpoints, or if you require access to on-premises data stores without configuring self-hosted IR. Azure-SSIS IR может присоединяться только к Azure Resource Managerным виртуальным сетям.Your Azure-SSIS IR can join only Azure Resource Manager virtual networks. Виртуальная сеть необходима, если не включить общедоступную конечную точку для управляемого экземпляра.The virtual network is required when you don't enable a public endpoint for your managed instance.

При присоединении Azure-SSIS IR к той же виртуальной сети, что и управляемый экземпляр, убедитесь, что Azure-SSIS IR находится в другой подсети из управляемого экземпляра.If you join your Azure-SSIS IR to the same virtual network as your managed instance, make sure that your Azure-SSIS IR is in a different subnet from your managed instance. При присоединении Azure-SSIS IR к другой виртуальной сети из управляемого экземпляра рекомендуется использовать пиринг виртуальной сети или подключение типа "сеть — сеть".If you join your Azure-SSIS IR to a different virtual network from your managed instance, we recommend either a virtual network peering or a network-to-network connection. См. раздел Подключение приложения к управляемому экземпляру базы данных SQL Azure.See Connect your application to an Azure SQL Database managed instance.
Распределенные транзакцииDistributed transactions Эта функция поддерживается с помощью эластичных транзакций.This feature is supported through elastic transactions. Транзакции координатора распределенных транзакций (MSDTC) не поддерживаются.Microsoft Distributed Transaction Coordinator (MSDTC) transactions are not supported. Если пакеты служб SSIS используют MSDTC для координации распределенных транзакций, рассмотрите возможность перехода на эластичные транзакции для базы данных SQL Azure.If your SSIS packages use MSDTC to coordinate distributed transactions, consider migrating to elastic transactions for Azure SQL Database. Дополнительные сведения см. в разделе распределенные транзакции между облачными базами данных.For more information, see Distributed transactions across cloud databases. Не поддерживается.Not supported.

Использование портал Azure для создания среды выполнения интеграцииUse the Azure portal to create an integration runtime

В этом разделе используется портал Azure, в частности пользовательский интерфейс фабрики данных (UI) или приложение, для создания Azure-SSIS IR.In this section, you use the Azure portal, specifically the Data Factory user interface (UI) or app, to create an Azure-SSIS IR.

Создание фабрики данныхCreate a data factory

Чтобы создать фабрику данных с помощью портала Azure, следуйте пошаговым инструкциям.To create your data factory via the Azure portal, follow the step-by-step instructions in Create a data factory via the UI. После создания выберите действие Закрепить на панели мониторинга, чтобы организовать быстрый доступ к ней.Select Pin to dashboard while doing so, to allow quick access after its creation.

Создав фабрику данных, откройте страницу сводных сведений о ней на портале Azure.After your data factory is created, open its overview page in the Azure portal. Щелкните плитку " автор & монитор ", чтобы открыть страницу " Начало работы " на отдельной вкладке. В нем можно продолжить создание Azure-SSIS IR.Select the Author & Monitor tile to open its Let's get started page on a separate tab. There, you can continue to create your Azure-SSIS IR.

Подготовка среды выполнения интеграции Azure SSISProvision an Azure-SSIS integration runtime

  1. На странице начала работы щелкните плитку Configure SSIS Integration Runtime (Настройка среды выполнения интеграции SSIS).On the Let's get started page, select the Configure SSIS Integration Runtime tile.

    Плитка настройки среды выполнения интеграции SSIS

  2. На странице Общие параметры в разделе Настройка среды выполнения интеграции выполните следующие действия:On the General Settings page of Integration Runtime Setup, complete the following steps.

    Общие параметры

    а)a. В поле Имя введите имя среды выполнения интеграции.For Name, enter the name of your integration runtime.

    б)b. В поле Описание введите описание среды выполнения интеграции.For Description, enter the description of your integration runtime.

    в)c. В поле Расположение введите расположение среды выполнения интеграции.For Location, select the location of your integration runtime. Здесь отображаются только поддерживаемые расположения.Only supported locations are displayed. Для узла SSISDB сервера базы данных рекомендуется выбирать одинаковые расположения.We recommend that you select the same location of your database server to host SSISDB.

    г)d. В поле размер узлавыберите размер узла в кластере среды выполнения интеграции.For Node Size, select the size of the node in your integration runtime cluster. Отображаются только поддерживаемые размеры узла.Only supported node sizes are displayed. Если вы планируете использовать пакеты с высокими требованиями к количеству компьютеров или объему памяти, выберите большой размер узла (увеличение масштаба).Select a large node size (scale up) if you want to run many compute-intensive or memory-intensive packages.

    д)e. В поле Номер узла введите количество узлов в кластере среды выполнения интеграции.For Node Number, select the number of nodes in your integration runtime cluster. Отображается только поддерживаемое число узлов.Only supported node numbers are displayed. Если нужно запускать несколько пакетов в параллельном режиме, выберите большой кластер с большим числом узлов (с поддержкой горизонтального масштабирования).Select a large cluster with many nodes (scale out) if you want to run many packages in parallel.

    е)f. Для выпуска/лицензиивыберите SQL Server выпуск для среды выполнения интеграции: Standard или Enterprise.For Edition/License, select the SQL Server edition for your integration runtime: Standard or Enterprise. Если в среде выполнения интеграции вы будете использовать расширенные функции, выберите SQL Server Enterprise.Select Enterprise if you want to use advanced features on your integration runtime.

    ж.g. Для параметра сохранить деньгивыберите параметр преимущество гибридного использования Azure для среды выполнения интеграции: Да или нет.For Save Money, select the Azure Hybrid Benefit option for your integration runtime: Yes or No. Если для экономии вы намерены использовать гибридный режим с собственной лицензией SQL Server по программе Software Assurance, выберите Да.Select Yes if you want to bring your own SQL Server license with Software Assurance to benefit from cost savings with hybrid use.

    h.h. Щелкните Далее.Select Next.

  3. На странице Параметры SQL выполните следующие шаги.On the SQL Settings page, complete the following steps.

    Раздел "SQL Settings" (Параметры SQL)

    а)a. Установите флажок в поле Создать каталог SSIS, чтобы выбрать модель развертывания для запуска пакетов в Azure-SSIS IR.Select the Create SSIS catalog... check box to choose the deployment model for packages to run on your Azure-SSIS IR. Вам нужно выбрать модель развертывания проектов, при которой пакеты развертываются в SSISDB, размещенной на сервере базы данных, или модель развертывания пакетов, при которой пакеты развертываются в файловых системах, на общих файловых ресурсах или в службе "Файлы Azure".You'll choose either the Project Deployment Model where packages are deployed into SSISDB hosted by your database server, or the Package Deployment Model where packages are deployed into file systems, file shares, or Azure Files.

    Если установить этот флажок, потребуется создать собственный сервер базы данных для размещения экземпляра SSISDB, который мы создадим и управляем от вашего имени.If you select the check box, you'll need to bring your own database server to host the SSISDB instance that we'll create and manage on your behalf.

    б)b. В раскрывающемся списке Подписка выберите подписку Azure, которая соответствует серверу базы данных узла SSISDB.For Subscription, select the Azure subscription that has your database server to host SSISDB.

    в)c. В раскрывающемся списке Расположение выберите расположение сервера базы данных узла SSISDB.For Location, select the location of your database server to host SSISDB. Для среды выполнения интеграции рекомендуется выбирать одинаковые расположения.We recommend that you select the same location of your integration runtime.

    г)d. В раскрывающемся списке Catalog Database Server Endpoint (Конечная точка сервера базы данных каталога) выберите конечную точку сервера базы данных узла SSISDB.For Catalog Database Server Endpoint, select the endpoint of your database server to host SSISDB.

    В зависимости от выбранного сервера базы данных экземпляр SSISDB может быть создан от вашего имени как отдельная база данных, как часть эластичного пула или в виде управляемого экземпляра.Based on the selected database server, the SSISDB instance can be created on your behalf as a single database, as part of an elastic pool, or in a managed instance. Доступ к нему можно получить через общедоступную сеть или после присоединения к виртуальной сети.It can be accessible in a public network or by joining a virtual network. Рекомендации по выбору типа сервера базы данных для размещения SSISDB см. в разделе Сравнение одной базы данных, эластичного пула и управляемого экземпляра базы данных SQL Azure в этой статье.For guidance in choosing the type of database server to host SSISDB, see the Compare an Azure SQL Database single database, elastic pool, and managed instance section in this article.

    Если вы выберете сервер Базы данных SQL Azure с конечными точками служб в виртуальной сети или с управляемым экземпляром и частной конечной точкой для размещения SSISDB либо вам нужен доступ к локальным данным без настройки локальной среды выполнения интеграции, необходимо присоединить среду выполнения интеграции Azure-SSIS к виртуальной сети.If you select an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint to host SSISDB, or if you require access to on-premises data without configuring self-hosted IR, you need to join your Azure-SSIS IR to a virtual network. Дополнительные сведения см. в статье Присоединение Azure-SSIS IR к виртуальной сети.For more information, see Join an Azure-SSIS IR to a virtual network.

    д)e. Установите флажок Использовать аутентификацию AAD с управляемым удостоверением для Фабрики данных Azure, чтобы выбрать метод проверки подлинности сервера базы данных на узле SSISDB.Select the Use AAD authentication with the managed identity for your ADF check box to choose the authentication method for your database server to host SSISDB. Это может быть аутентификация SQL или аутентификация AAD с использованием управляемого удостоверения для Фабрики данных Azure.You'll choose either SQL authentication or Azure AD authentication with the managed identity for your data factory.

    Если этот флажок установлен, управляемое удостоверение ADF нужно добавить в группу AAD с правами на доступ к серверу базы данных.If you select the check box, you'll need to add the managed identity for your data factory into an Azure AD group with access permissions to your database server. Дополнительные сведения см. в статье Включение проверки подлинности Azure AD для Azure-SSIS IR.For more information, see Enable Azure AD authentication for an Azure-SSIS IR.

    е)f. В поле Имя администратора введите имя входа SQL для проверки подлинности базы данных сервера узла SSISDB.For Admin Username, enter the SQL authentication username for your database server to host SSISDB.

    ж.g. В поле Пароль администратора введите пароль проверки подлинности SQL для входа сервера базы данных на узел SSISDB.For Admin Password, enter the SQL authentication password for your database server to host SSISDB.

    h.h. В поле Каталог уровней служб базы данных выберите уровень служб для сервера базы данных, на котором будет размещаться SSISDB.For Catalog Database Service Tier, select the service tier for your database server to host SSISDB. Это может быть уровень "Базовый", "Стандартный", "Премиум" или имя эластичного пула.Select the Basic, Standard, or Premium tier, or select an elastic pool name.

    i.i. Выберите Проверить подключение.Select Test Connection. Если проверка пройдет успешно, щелкните Далее.If the test is successful, select Next.

  4. На странице Дополнительные параметры выполните следующие шаги:On the Advanced Settings page, complete the following steps.

    Дополнительные параметры

    а)a. В раскрывающемся списке Максимальное количество параллельных выполнений на каждом узле выберите максимальное количество пакетов, которые будут выполняться одновременно на одном узле кластера интегрированной среды выполнения.For Maximum Parallel Executions Per Node, select the maximum number of packages to run concurrently per node in your integration runtime cluster. Отображается только поддерживаемое число пакетов.Only supported package numbers are displayed. Если возникла необходимость использовать больше одного ядра для запуска большого пакета с высокими требованиями к вычислительным ресурсам или памяти, выберите меньшее число.Select a low number if you want to use more than one core to run a single large package that's compute or memory intensive. Более высокое число позволит запустить несколько небольших пакетов на одном ядре.Select a high number if you want to run one or more small packages in a single core.

    б)b. В необязательном поле Пользовательская настройка контейнера URI SAS вы можете ввести подписанный URL-адрес универсального кода ресурса (URI) контейнера хранилища BLOB-объектов Azure, в котором хранятся скрипт настройки и связанные с ним файлы.For Custom Setup Container SAS URI, optionally enter the shared access signature (SAS) uniform resource identifier (URI) of the Azure Blob storage container where your setup script and its associated files are stored. См. сведения о пользовательской установке для среды выполнения интеграции Azure-SSIS.For more information, see Custom setup for an Azure-SSIS IR.

  5. Установите флажок Выбрать виртуальную среду для присоединения Azure-SSIS Integration Runtime и создания определенных сетевых ресурсов в Фабрике данных Azure, чтобы присоединить среду выполнения интеграции к виртуальной сети.Select the Select a VNet for your Azure-SSIS Integration Runtime to join and allow ADF to create certain network resources check box to choose whether you want to join your integration runtime to a virtual network.

    Выберите его, если вы используете сервер базы данных SQL Azure с конечными точками службы виртуальной сети или управляемым экземпляром с частной конечной точкой для размещения SSISDB или если требуется доступ к локальным данным.Select it if you use an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint to host SSISDB, or if you require access to on-premises data. (То есть у вас есть локальные источники данных или назначения в пакетах служб SSIS, без настройки локальной среды IR). Дополнительные сведения см. в статье Присоединение Azure-SSIS IR к виртуальной сети.(That is, you have on-premises data sources or destinations in your SSIS packages, without configuring a self-hosted IR.) For more information, see Join an Azure-SSIS IR to a virtual network.

    Если вы установите флажок, выполните следующие действия.If you select the check box, complete the following steps.

    Дополнительные параметры с использованием виртуальной сети

    а)a. В поле Подписка выберите подписку Azure, в которой расположена виртуальная сеть.For Subscription, select the Azure subscription that has your virtual network.

    б)b. В поле Расположение введите то же расположение среды выполнения интеграции.For Location, the same location of your integration runtime is selected.

    в)c. В поле типвыберите тип виртуальной сети: классический или Azure Resource Manager.For Type, select the type of your virtual network: classic or Azure Resource Manager. Рекомендуется выбрать виртуальную сеть Azure Resource Manager, так как классические виртуальные сети скоро будут считаться устаревшими.We recommend that you select an Azure Resource Manager virtual network, because classic virtual networks will be deprecated soon.

    г)d. В поле Имя виртуальной сети выберите имя вашей виртуальной сети.For VNet Name, select the name of your virtual network. Эта виртуальная сеть должна быть той же, которая использовалась для сервера базы данных SQL Azure с конечными точками службы виртуальной сети или управляемого экземпляра в виртуальной сети для размещения SSISDB.This virtual network should be the same one used for the Azure SQL Database server with virtual network service endpoints or a managed instance in a virtual network to host SSISDB. Или эта виртуальная сеть должна совпадать с виртуальной сетью, подключенной к локальной сети.Or this virtual network should be the same as the one that's connected to your on-premises network.

    д)e. В поле Имя подсети выберите имя подсети в виртуальной сети.For Subnet Name, select the name of subnet for your virtual network. Это должна быть другая подсеть, используемая для управляемого экземпляра в виртуальной сети для размещения SSISDB.This should be a different subnet from the one used for the managed instance in a virtual network to host SSISDB.

  6. Установите флажок Настроить автономную среду выполнения интеграции в качестве прокси-сервера для Azure-SSIS Integration Runtime, если вы хотите использовать автономную среду выполнения интеграции в качестве прокси-сервера для Azure-SSIS IR.Select the Set up Self-Hosted Integration Runtime as a proxy for your Azure-SSIS Integration Runtime check box to choose whether you want to configure a self-hosted IR as a proxy for your Azure-SSIS IR. См. подробнее о настройке автономной среды выполнения интеграции в качестве прокси-сервера.For more information, see Set up a self-hosted IR as a proxy.

    Если вы установите флажок, выполните следующие действия.If you select the check box, complete the following steps.

    Дополнительные параметры с локальным IR

    а)a. Для Integration Runtime с локальным размещениемвыберите имеющееся ЛОКАЛЬНОе IR в качестве прокси для Azure-SSIS IR.For Self-Hosted Integration Runtime, select your existing self-hosted IR as a proxy for the Azure-SSIS IR.

    б)b. Для связанной службы промежуточного хранилищавыберите существующую связанную службу хранилища BLOB-объектов Azure.For Staging Storage Linked Service, select your existing Azure Blob storage linked service. Или создайте новый для промежуточного хранения.Or, create a new one for staging.

    в)c. В качестве промежуточного путиукажите контейнер больших двоичных объектов в выбранной учетной записи хранилища BLOB-объектов Azure.For Staging Path, specify a blob container in your selected Azure Blob storage account. Или оставьте его пустым, чтобы использовать значение по умолчанию для промежуточного хранения.Or, leave it empty to use a default one for staging.

  7. Выберите Проверка виртуальной сети > Далее.Select VNet Validation > Next.

  8. На странице Сводка проверьте все параметры подготовки, закладку рекомендуемых ссылок на документацию и щелкните Готово, чтобы создать среду выполнения интеграции.On the Summary page, review all provisioning settings, bookmark the recommended documentation links, and select Finish to start the creation of your integration runtime.

    Примечание

    Этот процесс должен завершиться в течение пяти минут, не считая времени на пользовательские процессы настройки.Excluding any custom setup time, this process should finish within 5 minutes. Но Azure-SSIS IR присоединиться к виртуальной сети может занять 20-30 минут.But it might take 20-30 minutes for the Azure-SSIS IR to join a virtual network.

    Если вы используете SSISDB, Фабрика данных Azure подключится к серверу базы данных для подготовки SSISDB.If you use SSISDB, the Data Factory service will connect to your database server to prepare SSISDB. Он также настраивает разрешения и параметры для виртуальной сети, если они указаны, и присоединяет Azure-SSIS IR к виртуальной сети.It also configures permissions and settings for your virtual network, if specified, and joins your Azure-SSIS IR to the virtual network.

    При подготовке Azure-SSIS IR также устанавливается распространяемый компонент Access и пакет функций Azure для служб SSIS.When you provision an Azure-SSIS IR, Access Redistributable and Azure Feature Pack for SSIS are also installed. Эти компоненты обеспечивают подключение к файлам Excel или Access и другим источникам данных Azure помимо тех, которые уже поддерживаются встроенными компонентами.These components provide connectivity to Excel files, Access files, and various Azure data sources, in addition to the data sources that built-in components already support. См. сведения о других компонентах, доступных для установки, в руководстве по пользовательской установке для среды выполнения интеграции Azure-SSIS.For information about other components that you can install, see Custom setup for an Azure-SSIS IR.

  9. На вкладке Подключения перейдите к среде выполнения интеграции.On the Connections tab, switch to Integration Runtimes if needed. Щелкните Обновить, чтобы обновить состояние.Select Refresh to refresh the status.

    Состояние создания

  10. С помощью ссылок в столбце Действия вы можете остановить, запустить, изменить или удалить среду выполнения интеграции.Use the links in the Actions column to stop/start, edit, or delete the integration runtime. Последняя из этих ссылок позволяет просмотреть код JSON для среды выполнения интеграции.Use the last link to view JSON code for the integration runtime. Кнопки изменения и удаления действуют только в том случае, если среда выполнения интеграции остановлена.The edit and delete buttons are enabled only when the IR is stopped.

    Действия IR Azure SSIS

Среда выполнения интеграции Azure SSIS на порталеAzure SSIS integration runtimes in the portal

  1. В пользовательском интерфейсе фабрики данных переключитесь на вкладку Правка и щелкните Подключения.In the Azure Data Factory UI, switch to the Edit tab and select Connections. Затем откройте вкладку Среды выполнения интеграции, чтобы просмотреть все имеющиеся в фабрике данных среды выполнения интеграции.Then switch to the Integration Runtimes tab to view existing integration runtimes in your data factory.

    Просмотр существующих сред выполнения интеграции

  2. Выберите создать, чтобы создать новый Azure-SSIS IR.Select New to create a new Azure-SSIS IR.

    Доступ к среде выполнения интеграции через меню

  3. В окне Integration Runtime Setup (Настройка среды выполнения интеграции) выберите Lift-and-shift existing SSIS packages to execute in Azure (Перенос имеющихся пакетов служб SSIS по методике lift-and-shift для выполнения в Azure), а затем щелкните Далее.In the Integration Runtime Setup window, select Lift-and-shift existing SSIS packages to execute in Azure, and then select Next.

    Указание типа среды выполнения интеграции

  4. Оставшиеся действия по настройке Azure-SSIS IR см. в разделе " предоставление среды выполнения интеграции Azure SSIS ".For the remaining steps to set up an Azure-SSIS IR, see the Provision an Azure SSIS integration runtime section.

Использование Azure PowerShell для создания среды выполнения интеграцииUse Azure PowerShell to create an integration runtime

В этом разделе для создания Azure-SSIS IR используется Azure PowerShell.In this section, you use Azure PowerShell to create an Azure-SSIS IR.

Создание переменныхCreate variables

Скопируйте и вставьте следующий скрипт.Copy and paste the following script. Укажите значения для переменных.Specify values for the variables.

### Azure Data Factory information
# If your input contains a PSH special character like "$", precede it with the escape character "`" - for example, "`$"
$SubscriptionName = "[your Azure subscription name]"
$ResourceGroupName = "[your Azure resource group name]"
# Data factory name - must be globally unique
$DataFactoryName = "[your data factory name]"
# For supported regions, see https://azure.microsoft.com/global-infrastructure/services/?products=data-factory&regions=all
$DataFactoryLocation = "EastUS"

### Azure-SSIS integration runtime information. This is a Data Factory compute resource for running SSIS packages.
$AzureSSISName = "[your Azure-SSIS IR name]"
$AzureSSISDescription = "[your Azure-SSIS IR description]"
# For supported regions, see https://azure.microsoft.com/global-infrastructure/services/?products=data-factory&regions=all
$AzureSSISLocation = "EastUS"
# For supported node sizes, see https://azure.microsoft.com/pricing/details/data-factory/ssis/
$AzureSSISNodeSize = "Standard_D8_v3"
# 1-10 nodes are currently supported
$AzureSSISNodeNumber = 2
# Azure-SSIS IR edition/license info: Standard or Enterprise
$AzureSSISEdition = "Standard" # Standard by default, whereas Enterprise lets you use advanced features on your Azure-SSIS IR
# Azure-SSIS IR hybrid usage info: LicenseIncluded or BasePrice
$AzureSSISLicenseType = "LicenseIncluded" # LicenseIncluded by default, whereas BasePrice lets you bring your own on-premises SQL Server license with Software Assurance to earn cost savings from Azure Hybrid Benefit option
# For a Standard_D1_v2 node, up to 4 parallel executions per node are supported. For other nodes, up to (2 x number of cores) are currently supported.
$AzureSSISMaxParallelExecutionsPerNode = 8
# Custom setup info
$SetupScriptContainerSasUri = "" # OPTIONAL to provide the SAS URI of the blob container where your custom setup script and its associated files are stored
# Virtual network info: classic or Azure Resource Manager
$VnetId = "[your virtual network resource ID or leave it empty]" # REQUIRED if you use an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint, or if you require on-premises data without configuring a self-hosted IR. We recommend an Azure Resource Manager virtual network, because classic virtual networks will be deprecated soon.
$SubnetName = "[your subnet name or leave it empty]" # WARNING: Use the same subnet as the one used for your Azure SQL Database server with virtual network service endpoints, or a different subnet from the one used for your managed instance with a private endpoint

### SSISDB info
$SSISDBServerEndpoint = "[your Azure SQL Database server name.database.windows.net or managed instance name.DNS prefix.database.windows.net or managed instance name.public.DNS prefix.database.windows.net,3342 or leave it empty if you do not use SSISDB]" # WARNING: If you use SSISDB, ensure that there's no existing SSISDB on your database server, so we can prepare and manage one on your behalf
# Authentication info: SQL or Azure AD
$SSISDBServerAdminUserName = "[your server admin username for SQL authentication or leave it empty for Azure AD authentication]"
$SSISDBServerAdminPassword = "[your server admin password for SQL authentication or leave it empty for Azure AD authentication]"
# For the basic pricing tier, specify "Basic," not "B." For standard, premium, and elastic pool tiers, specify "S0," "S1," "S2," "S3," etc. See https://docs.microsoft.com/azure/sql-database/sql-database-resource-limits-database-server.
$SSISDBPricingTier = "[Basic|S0|S1|S2|S3|S4|S6|S7|S9|S12|P1|P2|P4|P6|P11|P15|…|ELASTIC_POOL(name = <elastic_pool_name>) for Azure SQL Database server or leave it empty for managed instance]"

Войдите и выберите подписку.Sign in and select a subscription

Добавьте следующий скрипт, чтобы войти и выбрать подписку Azure.Add the following script to sign in and select your Azure subscription.

Connect-AzAccount
Select-AzSubscription -SubscriptionName $SubscriptionName

Проверьте подключение к серверу базы данныхValidate the connection to database server

Добавьте следующий скрипт для проверки сервера базы данных SQL Azure или управляемого экземпляра.Add the following script to validate your Azure SQL Database server or managed instance.

# Validate only if you use SSISDB and you don't use virtual network or Azure AD authentication
if(![string]::IsNullOrEmpty($SSISDBServerEndpoint))
{
    if([string]::IsNullOrEmpty($VnetId) -and [string]::IsNullOrEmpty($SubnetName))
    {
        if(![string]::IsNullOrEmpty($SSISDBServerAdminUserName) -and ![string]::IsNullOrEmpty($SSISDBServerAdminPassword))
        {
            $SSISDBConnectionString = "Data Source=" + $SSISDBServerEndpoint + ";User ID=" + $SSISDBServerAdminUserName + ";Password=" + $SSISDBServerAdminPassword
            $sqlConnection = New-Object System.Data.SqlClient.SqlConnection $SSISDBConnectionString;
            Try
            {
                $sqlConnection.Open();
            }
            Catch [System.Data.SqlClient.SqlException]
            {
                Write-Warning "Cannot connect to your Azure SQL Database server, exception: $_";
                Write-Warning "Please make sure the server you specified has already been created. Do you want to proceed? [Y/N]"
                $yn = Read-Host
                if(!($yn -ieq "Y"))
                {
                    Return;
                }
            }
        }
    }
}

Настройка виртуальной сетиConfigure the virtual network

Добавьте следующий скрипт, чтобы автоматически настроить разрешения и параметры виртуальной сети для приподключения среды выполнения интеграции Azure SSIS.Add the following script to automatically configure virtual network permissions and settings for your Azure-SSIS integration runtime to join.

# Make sure to run this script against the subscription to which the virtual network belongs
if(![string]::IsNullOrEmpty($VnetId) -and ![string]::IsNullOrEmpty($SubnetName))
{
    # Register to the Azure Batch resource provider
    $BatchApplicationId = "ddbf3205-c6bd-46ae-8127-60eb93363864"
    $BatchObjectId = (Get-AzADServicePrincipal -ServicePrincipalName $BatchApplicationId).Id
    Register-AzResourceProvider -ProviderNamespace Microsoft.Batch
    while(!(Get-AzResourceProvider -ProviderNamespace "Microsoft.Batch").RegistrationState.Contains("Registered"))
    {
    Start-Sleep -s 10
    }
    if($VnetId -match "/providers/Microsoft.ClassicNetwork/")
    {
        # Assign the VM contributor role to Microsoft.Batch
        New-AzRoleAssignment -ObjectId $BatchObjectId -RoleDefinitionName "Classic Virtual Machine Contributor" -Scope $VnetId
    }
}

Создание группы ресурсовCreate a resource group

Создайте группу ресурсов Azure с помощью команды New-азресаурцеграуп .Create an Azure resource group by using the New-AzResourceGroup command. Группа ресурсов — это логический контейнер, в котором ресурсы Azure развертываются и администрируются как группа.A resource group is a logical container into which Azure resources are deployed and managed as a group.

Если группа ресурсов уже существует, не копируйте этот код в скрипт.If your resource group already exists, don't copy this code to your script.

New-AzResourceGroup -Location $DataFactoryLocation -Name $ResourceGroupName

Создание фабрики данныхCreate a data factory

Чтобы создать фабрику данных, выполните следующую команду.Run the following command to create a data factory.

Set-AzDataFactoryV2 -ResourceGroupName $ResourceGroupName `
                         -Location $DataFactoryLocation `
                         -Name $DataFactoryName

Создание среды выполнения интеграцииCreate an integration runtime

Выполните следующую команду для создания среды выполнения интеграции Azure SSIS, запускающей пакеты служб SSIS в Azure:Run the following commands to create an Azure-SSIS integration runtime that runs SSIS packages in Azure.

Если вы не используете SSISDB, можно опустить параметры CatalogServerEndpoint, CatalogPricingTierи CatalogAdminCredential.If you don't use SSISDB, you can omit the CatalogServerEndpoint, CatalogPricingTier, and CatalogAdminCredential parameters.

Если вы не используете сервер базы данных SQL Azure с конечными точками службы виртуальной сети или управляемым экземпляром с частной конечной точкой для размещения SSISDB или вам требуется доступ к локальным данным, можно опустить параметры VNetId и Subnet или передать пустые значения для них.If you don't use an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint to host SSISDB, or if you require access to on-premises data, you can omit the VNetId and Subnet parameters or pass empty values for them. Их также можно опустить, если настроить локальное IR в качестве прокси-сервера для Azure-SSIS IR локального доступа к данным.You can also omit them if you configure self-hosted IR as a proxy for your Azure-SSIS IR to access data on-premises. В противном случае их нельзя опустить и передать допустимые значения из конфигурации виртуальной сети.Otherwise, you can't omit them and must pass valid values from your virtual network configuration. Дополнительные сведения см. в статье Присоединение Azure-SSIS IR к виртуальной сети.For more information, see Join an Azure-SSIS IR to a virtual network.

Если для размещения SSISDB используется управляемый экземпляр, можно опустить параметр CatalogPricingTier или передать для него пустое значение.If you use managed instance to host SSISDB, you can omit the CatalogPricingTier parameter or pass an empty value for it. В противном случае его нельзя опустить и передать допустимое значение из списка поддерживаемых ценовых категорий для базы данных SQL Azure.Otherwise, you can't omit it and must pass a valid value from the list of supported pricing tiers for Azure SQL Database. Дополнительные сведения см. в разделе ограничения ресурсов базы данных SQL.For more information, see SQL Database resource limits.

Если вы используете аутентификацию Azure AD с управляемым удостоверением для подключения фабрики данных к серверу базы данных, можно опустить параметр CatalogAdminCredential.If you use Azure AD authentication with the managed identity for your data factory to connect to the database server, you can omit the CatalogAdminCredential parameter. Но вы должны добавить управляемое удостоверение для фабрики данных в группу Azure AD с разрешениями на доступ к серверу базы данных.But you must add the managed identity for your data factory into an Azure AD group with access permissions to the database server. Дополнительные сведения см. в статье Включение проверки подлинности Azure AD для Azure-SSIS IR.For more information, see Enable Azure AD authentication for an Azure-SSIS IR. В противном случае его нельзя опустить и передать допустимый объект, сформированный на основе имени пользователя и пароля администратора сервера для проверки подлинности SQL.Otherwise, you can't omit it and must pass a valid object formed from your server admin username and password for SQL authentication.

Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                           -DataFactoryName $DataFactoryName `
                                           -Name $AzureSSISName `
                                           -Description $AzureSSISDescription `
                                           -Type Managed `
                                           -Location $AzureSSISLocation `
                                           -NodeSize $AzureSSISNodeSize `
                                           -NodeCount $AzureSSISNodeNumber `
                                           -Edition $AzureSSISEdition `
                                           -LicenseType $AzureSSISLicenseType `
                                           -MaxParallelExecutionsPerNode $AzureSSISMaxParallelExecutionsPerNode `
                                           -VnetId $VnetId `
                                           -Subnet $SubnetName
       
# Add the CatalogServerEndpoint, CatalogPricingTier, and CatalogAdminCredential parameters if you use SSISDB
if(![string]::IsNullOrEmpty($SSISDBServerEndpoint))
{
    Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                               -DataFactoryName $DataFactoryName `
                                               -Name $AzureSSISName `
                                               -CatalogServerEndpoint $SSISDBServerEndpoint `
                                               -CatalogPricingTier $SSISDBPricingTier

    if(![string]::IsNullOrEmpty($SSISDBServerAdminUserName) –and ![string]::IsNullOrEmpty($SSISDBServerAdminPassword)) # Add the CatalogAdminCredential parameter if you don't use Azure AD authentication
    {
        $secpasswd = ConvertTo-SecureString $SSISDBServerAdminPassword -AsPlainText -Force
        $serverCreds = New-Object System.Management.Automation.PSCredential($SSISDBServerAdminUserName, $secpasswd)

        Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                                   -DataFactoryName $DataFactoryName `
                                                   -Name $AzureSSISName `
                                                   -CatalogAdminCredential $serverCreds
    }
}

# Add the SetupScriptContainerSasUri parameter if you use custom setup
if(![string]::IsNullOrEmpty($SetupScriptContainerSasUri))
{
    Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                               -DataFactoryName $DataFactoryName `
                                               -Name $AzureSSISName `
                                               -SetupScriptContainerSasUri $SetupScriptContainerSasUri
}

Запуск среды выполнения интеграцииStart the integration runtime

Выполните следующие команды для запуска среды выполнения интеграции SSIS Azure.Run the following commands to start the Azure-SSIS integration runtime.

write-host("##### Starting #####")
Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                             -DataFactoryName $DataFactoryName `
                                             -Name $AzureSSISName `
                                             -Force

write-host("##### Completed #####")
write-host("If any cmdlet is unsuccessful, please consider using -Debug option for diagnostics.")

Примечание

Этот процесс должен завершиться в течение пяти минут, не считая времени на пользовательские процессы настройки.Excluding any custom setup time, this process should finish within 5 minutes. Но Azure-SSIS IR присоединиться к виртуальной сети может занять 20-30 минут.But it might take 20-30 minutes for the Azure-SSIS IR to join a virtual network.

Если вы используете SSISDB, Фабрика данных Azure подключится к серверу базы данных для подготовки SSISDB.If you use SSISDB, the Data Factory service will connect to your database server to prepare SSISDB. Он также настраивает разрешения и параметры для виртуальной сети, если они указаны, и присоединяет Azure-SSIS IR к виртуальной сети.It also configures permissions and settings for your virtual network, if specified, and joins your Azure-SSIS IR to the virtual network.

При подготовке Azure-SSIS IR также устанавливается распространяемый компонент Access и пакет функций Azure для служб SSIS.When you provision an Azure-SSIS IR, Access Redistributable and Azure Feature Pack for SSIS are also installed. Эти компоненты обеспечивают подключение к файлам Excel или Access и другим источникам данных Azure помимо тех, которые уже поддерживаются встроенными компонентами.These components provide connectivity to Excel files, Access files, and various Azure data sources, in addition to the data sources that built-in components already support. См. сведения о других компонентах, доступных для установки, в руководстве по пользовательской установке для среды выполнения интеграции Azure-SSIS.For information about other components that you can install, see Custom setup for an Azure-SSIS IR.

Полный сценарийFull script

Ниже приведен полный сценарий, создающий среду выполнения интеграции Azure SSIS.Here's the full script that creates an Azure-SSIS integration runtime.

### Azure Data Factory information
# If your input contains a PSH special character like "$", precede it with the escape character "`" - for example, "`$"
$SubscriptionName = "[your Azure subscription name]"
$ResourceGroupName = "[your Azure resource group name]"
# Data factory name - must be globally unique
$DataFactoryName = "[your data factory name]"
# For supported regions, see https://azure.microsoft.com/global-infrastructure/services/?products=data-factory&regions=all
$DataFactoryLocation = "EastUS"

### Azure-SSIS integration runtime information. This is a Data Factory compute resource for running SSIS packages.
$AzureSSISName = "[your Azure-SSIS IR name]"
$AzureSSISDescription = "[your Azure-SSIS IR description]"
# For supported regions, see https://azure.microsoft.com/global-infrastructure/services/?products=data-factory&regions=all
$AzureSSISLocation = "EastUS"
# For supported node sizes, see https://azure.microsoft.com/pricing/details/data-factory/ssis/
$AzureSSISNodeSize = "Standard_D8_v3"
# 1-10 nodes are currently supported
$AzureSSISNodeNumber = 2
# Azure-SSIS IR edition/license info: Standard or Enterprise
$AzureSSISEdition = "Standard" # Standard by default, whereas Enterprise lets you use advanced features on your Azure-SSIS IR
# Azure-SSIS IR hybrid usage info: LicenseIncluded or BasePrice
$AzureSSISLicenseType = "LicenseIncluded" # LicenseIncluded by default, whereas BasePrice lets you bring your own on-premises SQL Server license with Software Assurance to earn cost savings from the Azure Hybrid Benefit option
# For a Standard_D1_v2 node, up to four parallel executions per node are supported. For other nodes, up to (2 x number of cores) are currently supported.
$AzureSSISMaxParallelExecutionsPerNode = 8
# Custom setup info
$SetupScriptContainerSasUri = "" # OPTIONAL to provide the SAS URI of the blob container where your custom setup script and its associated files are stored
# Virtual network info: classic or Azure Resource Manager
$VnetId = "[your virtual network resource ID or leave it empty]" # REQUIRED if you use an Azure SQL Database server with virtual network service endpoints or a managed instance with a private endpoint, or if you require on-premises data without configuring a self-hosted IR. We recommend an Azure Resource Manager virtual network, because classic virtual networks will be deprecated soon.
$SubnetName = "[your subnet name or leave it empty]" # WARNING: Use the same subnet as the one used for your Azure SQL Database server with virtual network service endpoints, or a different subnet from the one used for your managed instance with a private endpoint

### SSISDB info
$SSISDBServerEndpoint = "[your Azure SQL Database server name.database.windows.net or managed instance name.DNS prefix.database.windows.net or managed instance name.public.DNS prefix.database.windows.net,3342 or leave it empty if you do not use SSISDB]" # WARNING: If you use SSISDB, ensure that there's no existing SSISDB on your database server, so we can prepare and manage one on your behalf
# Authentication info: SQL or Azure AD
$SSISDBServerAdminUserName = "[your server admin username for SQL authentication or leave it empty for Azure AD authentication]"
$SSISDBServerAdminPassword = "[your server admin password for SQL authentication or leave it empty for Azure AD authentication]"
# For the basic pricing tier, specify "Basic," not "B." For standard, premium, and elastic pool tiers, specify "S0," "S1," "S2," "S3," etc. See https://docs.microsoft.com/azure/sql-database/sql-database-resource-limits-database-server.
$SSISDBPricingTier = "[Basic|S0|S1|S2|S3|S4|S6|S7|S9|S12|P1|P2|P4|P6|P11|P15|…|ELASTIC_POOL(name = <elastic_pool_name>) for Azure SQL Database server or leave it empty for managed instance]"

### Sign in and select a subscription
Connect-AzAccount
Select-AzSubscription -SubscriptionName $SubscriptionName

### Validate the connection to the database server
# Validate only if you use SSISDB and don't use a virtual network or Azure AD authentication
if(![string]::IsNullOrEmpty($SSISDBServerEndpoint))
{
    if([string]::IsNullOrEmpty($VnetId) -and [string]::IsNullOrEmpty($SubnetName))
    {
        if(![string]::IsNullOrEmpty($SSISDBServerAdminUserName) -and ![string]::IsNullOrEmpty($SSISDBServerAdminPassword))
        {
            $SSISDBConnectionString = "Data Source=" + $SSISDBServerEndpoint + ";User ID=" + $SSISDBServerAdminUserName + ";Password=" + $SSISDBServerAdminPassword
            $sqlConnection = New-Object System.Data.SqlClient.SqlConnection $SSISDBConnectionString;
            Try
            {
                $sqlConnection.Open();
            }
            Catch [System.Data.SqlClient.SqlException]
            {
                Write-Warning "Cannot connect to your Azure SQL Database server, exception: $_";
                Write-Warning "Please make sure the server you specified has already been created. Do you want to proceed? [Y/N]"
                $yn = Read-Host
                if(!($yn -ieq "Y"))
                {
                    Return;
                }
            }
        }
    }
}

### Configure a virtual network
# Make sure to run this script against the subscription to which the virtual network belongs
if(![string]::IsNullOrEmpty($VnetId) -and ![string]::IsNullOrEmpty($SubnetName))
{
    # Register to the Azure Batch resource provider
    $BatchApplicationId = "ddbf3205-c6bd-46ae-8127-60eb93363864"
    $BatchObjectId = (Get-AzADServicePrincipal -ServicePrincipalName $BatchApplicationId).Id
    Register-AzResourceProvider -ProviderNamespace Microsoft.Batch
    while(!(Get-AzResourceProvider -ProviderNamespace "Microsoft.Batch").RegistrationState.Contains("Registered"))
    {
    Start-Sleep -s 10
    }
    if($VnetId -match "/providers/Microsoft.ClassicNetwork/")
    {
        # Assign the VM contributor role to Microsoft.Batch
        New-AzRoleAssignment -ObjectId $BatchObjectId -RoleDefinitionName "Classic Virtual Machine Contributor" -Scope $VnetId
    }
}

### Create a data factory
Set-AzDataFactoryV2 -ResourceGroupName $ResourceGroupName `
                         -Location $DataFactoryLocation `
                         -Name $DataFactoryName

### Create an integration runtime
Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                           -DataFactoryName $DataFactoryName `
                                           -Name $AzureSSISName `
                                           -Description $AzureSSISDescription `
                                           -Type Managed `
                                           -Location $AzureSSISLocation `
                                           -NodeSize $AzureSSISNodeSize `
                                           -NodeCount $AzureSSISNodeNumber `
                                           -Edition $AzureSSISEdition `
                                           -LicenseType $AzureSSISLicenseType `
                                           -MaxParallelExecutionsPerNode $AzureSSISMaxParallelExecutionsPerNode `
                                           -VnetId $VnetId `
                                           -Subnet $SubnetName
       
# Add CatalogServerEndpoint, CatalogPricingTier, and CatalogAdminCredential parameters if you use SSISDB
if(![string]::IsNullOrEmpty($SSISDBServerEndpoint))
{
    Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                               -DataFactoryName $DataFactoryName `
                                               -Name $AzureSSISName `
                                               -CatalogServerEndpoint $SSISDBServerEndpoint `
                                               -CatalogPricingTier $SSISDBPricingTier

    if(![string]::IsNullOrEmpty($SSISDBServerAdminUserName) –and ![string]::IsNullOrEmpty($SSISDBServerAdminPassword)) # Add the CatalogAdminCredential parameter if you don't use Azure AD authentication
    {
        $secpasswd = ConvertTo-SecureString $SSISDBServerAdminPassword -AsPlainText -Force
        $serverCreds = New-Object System.Management.Automation.PSCredential($SSISDBServerAdminUserName, $secpasswd)

        Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                                   -DataFactoryName $DataFactoryName `
                                                   -Name $AzureSSISName `
                                                   -CatalogAdminCredential $serverCreds
    }
}

# Add the SetupScriptContainerSasUri parameter when you use custom setup
if(![string]::IsNullOrEmpty($SetupScriptContainerSasUri))
{
    Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                               -DataFactoryName $DataFactoryName `
                                               -Name $AzureSSISName `
                                               -SetupScriptContainerSasUri $SetupScriptContainerSasUri
}

### Start the integration runtime
write-host("##### Starting #####")
Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
                                             -DataFactoryName $DataFactoryName `
                                             -Name $AzureSSISName `
                                             -Force

write-host("##### Completed #####")
write-host("If any cmdlet is unsuccessful, please consider using -Debug option for diagnostics.")

Использование шаблона Azure Resource Manager для создания среды выполнения интеграцииUse an Azure Resource Manager template to create an integration runtime

В этом разделе описано, как использовать шаблон Azure Resource Manager для создания среды выполнения интеграции Azure SSIS.In this section, you use an Azure Resource Manager template to create the Azure-SSIS integration runtime. Ниже приведен пример пошагового руководства.Here's a sample walkthrough:

  1. Создайте файл JSON со следующим шаблоном Resource Manager Azure.Create a JSON file with the following Azure Resource Manager template. Замените значения в угловых скобках (заполнителями) собственными значениями.Replace values in the angle brackets (placeholders) with your own values.

    {
      "contentVersion": "1.0.0.0",
        "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
        "parameters": {},
        "variables": {},
        "resources": [{
            "name": "<Specify a name for your data factory>",
            "apiVersion": "2018-06-01",
            "type": "Microsoft.DataFactory/factories",
            "location": "East US",
            "properties": {},
            "resources": [{
                "type": "integrationruntimes",
                "name": "<Specify a name for your Azure-SSIS IR>",
                "dependsOn": [ "<The name of the data factory you specified at the beginning>" ],
                "apiVersion": "2018-06-01",
                "properties": {
                    "type": "Managed",
                    "typeProperties": {
                        "computeProperties": {
                            "location": "East US",
                            "nodeSize": "Standard_D8_v3",
                            "numberOfNodes": 1,
                            "maxParallelExecutionsPerNode": 8
                        },
                        "ssisProperties": {
                            "catalogInfo": {
                                "catalogServerEndpoint": "<Azure SQL Database server name>.database.windows.net",
                                "catalogAdminUserName": "<Azure SQL Database server admin username>",
                                "catalogAdminPassword": {
                                    "type": "SecureString",
                                    "value": "<Azure SQL Database server admin password>"
                                },
                                "catalogPricingTier": "Basic"
                            }
                        }
                    }
                }
            }]
        }]
    }
    
  2. Чтобы развернуть шаблон Azure Resource Manager, выполните команду New-AzResourceGroupDeployment, как показано в следующем примере.To deploy the Azure Resource Manager template, run the New-AzResourceGroupDeployment command as shown in the following example. В этом примере ADFTutorialResourceGroup — имя группы ресурсов.In the example, ADFTutorialResourceGroup is the name of your resource group. ADFTutorialARM.json — это файл, содержащий определение JSON для фабрики данных и Azure-SSIS IR.ADFTutorialARM.json is the file that contains the JSON definition for your data factory and the Azure-SSIS IR.

    New-AzResourceGroupDeployment -Name MyARMDeployment -ResourceGroupName ADFTutorialResourceGroup -TemplateFile ADFTutorialARM.json
    

    Эта команда создает фабрику данных и Azure-SSIS IR в ней, но не запускает IR.This command creates your data factory and Azure-SSIS IR in it, but it doesn't start the IR.

  3. Чтобы запустить Azure-SSIS IR, выполните команду Start-AzDataFactoryV2IntegrationRuntime.To start your Azure-SSIS IR, run the Start-AzDataFactoryV2IntegrationRuntime command:

    Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName "<Resource Group Name>" `
                                                 -DataFactoryName "<Data Factory Name>" `
                                                 -Name "<Azure SSIS IR Name>" `
                                                 -Force
    

Примечание

Этот процесс должен завершиться в течение пяти минут, не считая времени на пользовательские процессы настройки.Excluding any custom setup time, this process should finish within 5 minutes. Но Azure-SSIS IR присоединиться к виртуальной сети может занять 20-30 минут.But it might take 20-30 minutes for the Azure-SSIS IR to join a virtual network.

Если вы используете SSISDB, Фабрика данных Azure подключится к серверу базы данных для подготовки SSISDB.If you use SSISDB, the Data Factory service will connect to your database server to prepare SSISDB. Он также настраивает разрешения и параметры для виртуальной сети, если они указаны, и присоединяет Azure-SSIS IR к виртуальной сети.It also configures permissions and settings for your virtual network, if specified, and joins your Azure-SSIS IR to the virtual network.

При подготовке Azure-SSIS IR также устанавливается распространяемый компонент Access и пакет функций Azure для служб SSIS.When you provision an Azure-SSIS IR, Access Redistributable and Azure Feature Pack for SSIS are also installed. Эти компоненты обеспечивают подключение к файлам Excel или Access и другим источникам данных Azure помимо тех, которые уже поддерживаются встроенными компонентами.These components provide connectivity to Excel files, Access files, and various Azure data sources, in addition to the data sources that built-in components already support. См. сведения о других компонентах, доступных для установки, в руководстве по пользовательской установке для среды выполнения интеграции Azure-SSIS.For information about other components that you can install, see Custom setup for an Azure-SSIS IR.

Развертывание пакетов служб SSIS.Deploy SSIS packages

Если вы используете SSISDB, вы можете развернуть пакеты и запустить их в Azure-SSIS IR с помощью средств SQL Server Data Tools или SQL Server Management Studio.If you use SSISDB, you can deploy your packages into it and run them on the Azure-SSIS IR by using SQL Server Data Tools or SQL Server Management Studio tools. Эти средства подключаются к серверу базы данных через конечную точку сервера.These tools connect to your database server via its server endpoint:

  • Для сервера Базы данных SQL Azure с частной конечной точкой используется формат <server name>.database.windows.net.For an Azure SQL Database server with a private endpoint, the server endpoint format is <server name>.database.windows.net.
  • Для управляемого экземпляра с частной конечной точкой используется формат <server name>.<dns prefix>.database.windows.net.For a managed instance with a private endpoint, the server endpoint format is <server name>.<dns prefix>.database.windows.net.
  • Для управляемого экземпляра с общедоступной конечной точкой используется формат <server name>.public.<dns prefix>.database.windows.net,3342.For a managed instance with a public endpoint, the server endpoint format is <server name>.public.<dns prefix>.database.windows.net,3342.

Если вы не используете SSISDB, вы можете развернуть пакеты в файловых системах, общих файловых ресурсах или Файлах Azure.If you don't use SSISDB, you can deploy your packages into file systems, file shares, or Azure Files. Их можно будет запустить на Azure-SSIS IR с помощью средств командной строки dtinstall, dtutil и dtexec.You can then run them on the Azure-SSIS IR by using the dtinstall, dtutil, and dtexec command-line tools. Дополнительные сведения см. в разделе Развертывание пакетов на сервере служб Integration Services.For more information, see Deploy SSIS packages.

В обоих случаях вы также можете запустить развернутые пакеты в Azure-SSIS IR, используя действие "Выполнить пакеты служб SSIS" в конвейерах Фабрики данных Azure.In both cases, you can also run your deployed packages on the Azure-SSIS IR by using the Execute SSIS Package activity in Data Factory pipelines. См. сведения о запуске выполнения пакета SSIS с использованием действия Фабрики данных.For more information, see Invoke SSIS package execution as a first-class Data Factory activity.

Дальнейшие действияNext steps

См. другие разделы Azure-SSIS IR в этой документации:See other Azure-SSIS IR topics in this documentation: