Ausführen eines SSIS-Pakets mit der Aktivität „SSIS-Paket ausführen“ in Azure Data FactoryRun an SSIS package with the Execute SSIS Package activity in Azure Data Factory

In diesem Artikel wird das Ausführen eines SSIS-Pakets (SQL Server Integration Services) in einer Azure Data Factory-Pipeline mithilfe der Aktivität „SSIS-Paket ausführen“ beschrieben.This article describes how to run a SQL Server Integration Services (SSIS) package in an Azure Data Factory pipeline by using the Execute SSIS Package activity.

VoraussetzungenPrerequisites

Hinweis

Dieser Artikel wurde aktualisiert und beinhaltet jetzt das neue Az-Modul von Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Sie können das AzureRM-Modul weiterhin verwenden, das bis mindestens Dezember 2020 weiterhin Fehlerbehebungen erhält.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Weitere Informationen zum neuen Az-Modul und zur Kompatibilität mit AzureRM finden Sie unter Introducing the new Azure PowerShell Az module (Einführung in das neue Az-Modul von Azure PowerShell).To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Anweisungen zur Installation des Az-Moduls finden Sie unter Install Azure PowerShell (Installieren von Azure PowerShell).For Az module installation instructions, see Install Azure PowerShell.

Erstellen Sie eine Azure-SSIS Integration Runtime-Instanz (IR), falls Sie noch keine besitzen. Befolgen Sie dazu die ausführliche Anleitung unter Tutorial: Bereitstellen der Azure-SSIS Integration Runtime in Azure Data Factory.Create an Azure-SSIS integration runtime (IR) if you don't have one already by following the step-by-step instructions in the Tutorial: Provisioning Azure-SSIS IR.

Ausführen eines Pakets im Azure-PortalRun a package in the Azure portal

In diesem Abschnitt erstellen Sie mithilfe der Data Factory-Benutzeroberfläche oder -App eine Data Factory-Pipeline mit einer Aktivität „SSIS-Paket ausführen“, die Ihr SSIS-Paket ausführt.In this section, you use the Data Factory user interface (UI) or app to create a Data Factory pipeline with an Execute SSIS Package activity that runs your SSIS package.

Erstellen einer Pipeline mit einer Aktivität „SSIS-Paket ausführen“Create a pipeline with an Execute SSIS Package activity

In diesem Schritt erstellen Sie über die Data Factory-Benutzeroberfläche oder -App eine Pipeline.In this step, you use the Data Factory UI or app to create a pipeline. Sie fügen eine Aktivität „SSIS-Paket ausführen“ zur Pipeline hinzu und konfigurieren sie für die Ausführung des SSIS-Pakets.You add an Execute SSIS Package activity to the pipeline and configure it to run your SSIS package.

  1. Wählen Sie im Azure-Portal in der Übersicht oder auf der Startseite von Data Factory die Kachel Erstellen und überwachen aus, um die Data Factory-Benutzeroberfläche oder -App in einem separaten Tab zu öffnen.On your Data Factory overview or home page in the Azure portal, select the Author & Monitor tile to start the Data Factory UI or app in a separate tab.

    Data Factory-Startseite

    Wählen Sie auf der Seite Erste Schritte die Option Pipeline erstellen aus.On the Let's get started page, select Create pipeline.

    Seite für die ersten Schritte

  2. Erweitern Sie in der Toolbox Aktivitäten die Option Allgemein.In the Activities toolbox, expand General. Ziehen Sie dann die Aktivität SSIS-Paket ausführen auf die Oberfläche des Pipeline-Designers.Then drag an Execute SSIS Package activity to the pipeline designer surface.

    Ziehen und Ablegen der Aktivität „SSIS-Paket ausführen“ auf der Oberfläche des Designers

  3. Geben Sie auf der Registerkarte Allgemein für die Aktivität „SSIS-Paket ausführen“ einen Namen und eine Beschreibung für die Aktivität an.On the General tab for the Execute SSIS Package activity, provide a name and description for the activity. Legen Sie optional Werte für Timeout und Wiederholung fest.Set optional Timeout and Retry values.

    Festlegen von Eigenschaften auf der Registerkarte „Allgemein“

  4. Wählen Sie auf der Registerkarte Einstellungen für die Aktivität „SSIS-Paket ausführen“ eine Azure-SSIS Integration Runtime-Instanz aus, in der Sie Ihr Paket ausführen möchten.On the Settings tab for the Execute SSIS Package activity, select an Azure-SSIS IR where you want to run your package. Wenn Ihr Paket die Windows-Authentifizierung für den Zugriff auf Datenspeicher (beispielsweise lokale SQL-Server/Dateifreigaben oder Azure Files) verwendet, aktivieren Sie das Kontrollkästchen Windows-Authentifizierung.If your package uses Windows authentication to access data stores (for example, SQL servers or file shares on-premises or Azure Files), select the Windows authentication check box. Geben Sie die Werte Ihrer Anmeldeinformationen für die Paketausführung in die Felder Domäne, Benutzername und Kennwort ein.Enter the values for your package execution credentials in the Domain, Username, and Password boxes.

    Alternativ können Sie in Ihrem Azure-Schlüsseltresor gespeicherte Geheimnisse als Werte verwenden.Alternatively, you can use secrets stored in your Azure key vault as their values. Aktivieren Sie hierzu das Kontrollkästchen AZURE KEY VAULT neben den entsprechenden Anmeldeinformationen.To do so, select the AZURE KEY VAULT check box next to the relevant credential. Sie können einen vorhandenen verknüpften Dienst für den Schlüsseltresor auswählen oder bearbeiten oder einen neuen Dienst erstellen.Select or edit your existing key vault linked service or create a new one. Wählen Sie anschließend den Geheimnisnamen oder die Geheimnisversion für den Wert Ihrer Anmeldeinformationen aus.Then select the secret name or version for your credential value.

    Wenn Sie Ihren verknüpften Dienst für den Schlüsseltresor erstellen oder bearbeiten, können Sie den vorhandenen Schlüsseltresor auswählen und bearbeiten oder einen neuen erstellen.When you create or edit your key vault linked service, you can select or edit your existing key vault or create a new one. Stellen Sie sicher, dass die verwaltete Data Factory-Identität Zugriff auf Ihren Schlüsseltresor hat, sofern dies noch nicht der Fall ist.Make sure to grant Data Factory managed identity access to your key vault if you haven't done so already. Sie können Ihre Geheimnisse auch direkt im folgenden Format eingeben: <Key vault linked service name>/<secret name>/<secret version>.You can also enter your secrets directly in the following format: <Key vault linked service name>/<secret name>/<secret version>. Wenn Ihr Paket die 32-Bit-Runtime zum Ausführen benötigt, aktivieren Sie das Kontrollkästchen 32-Bit-Runtime.If your package needs 32-bit runtime to run, select the 32-Bit runtime check box.

    Wählen Sie unter Paketspeicherort eine der Optionen SSISDB, Dateisystem (Paket) , Dateisystem (Projekt) oder Eingebettetes Paket aus.For Package location, select SSISDB, File System (Package), File System (Project), or Embedded package. Wenn Sie SSISDB als Paketspeicherort auswählen, geben Sie das auszuführende Paket an, das in SSISDB bereitgestellt wurde. Die Option „SSISDB“ wird automatisch ausgewählt, wenn Azure-SSIS Integration Runtime mit dem SSIS-Katalog (SSISDB) bereitgestellt wurde und dieser vom Azure SQL-Datenbank-Server bzw. von der verwalteten Instanz gehostet wird.If you select SSISDB as your package location, which is automatically selected if your Azure-SSIS IR was provisioned with the SSIS catalog (SSISDB) hosted by an Azure SQL Database server or managed instance, specify your package to run that was deployed into SSISDB.

    Wenn Ihre Azure-SSIS Integration Runtime-Instanz ausgeführt wird und das Kontrollkästchen Manuelle Einträge nicht aktiviert ist, können Sie Ihre vorhandenen Ordner, Projekte, Pakete oder Umgebungen über SSISDB durchsuchen und auswählen.If your Azure-SSIS IR is running and the Manual entries check box is cleared, browse and select your existing folders, projects, packages, or environments from SSISDB. Wählen Sie Aktualisieren aus, um Ihre neu hinzugefügten Ordner, Projekte, Pakete oder Umgebungen aus SSISDB abzurufen, sodass sie zum Durchsuchen und Auswählen verfügbar sind.Select Refresh to fetch your newly added folders, projects, packages, or environments from SSISDB so that they're available for browsing and selection. Um die Umgebungen für Ihre Paketausführungen zu durchsuchen oder auszuwählen, müssen Sie Ihre Projekte zuvor so konfigurieren, dass sie diese Umgebungen als Referenzen aus denselben Ordnern unter SSISDB hinzufügen.To browse or select the environments for your package executions, you must configure your projects beforehand to add those environments as references from the same folders under SSISDB. Weitere Informationen finden Sie unter Erstellen und Zuordnen einer Serverumgebung.For more information, see Create and map SSIS environments.

    Wählen Sie für Protokolliergrad einen vordefinierten Bereich für die Protokollierung Ihrer Paketausführung.For Logging level, select a predefined scope of logging for your package execution. Aktivieren Sie das Kontrollkästchen Angepasst, wenn Sie stattdessen einen angepassten Namen für die Protokollierung eingeben möchten.Select the Customized check box if you want to enter your customized logging name instead.

    Festlegen von Eigenschaften auf der Registerkarte „Einstellungen“ – Automatisch

    Wenn Ihre Azure-SSIS Integration Runtime-Instanz nicht ausgeführt wird oder das Kontrollkästchen Manuelle Einträge aktiviert ist, geben Sie Ihre Paket- und Umgebungspfade aus SSISDB direkt in den folgenden Formaten ein: <folder name>/<project name>/<package name>.dtsx und <folder name>/<environment name>.If your Azure-SSIS IR isn't running or the Manual entries check box is selected, enter your package and environment paths from SSISDB directly in the following formats: <folder name>/<project name>/<package name>.dtsx and <folder name>/<environment name>.

    Festlegen von Eigenschaften auf der Registerkarte „Einstellungen“ – Manuell

    Wenn Sie Dateisystem (Paket) als Paketspeicherort auswählen, geben Sie zur Angabe des auszuführenden Pakets im Feld Paketpfad einen UNC-Pfad (Universal Naming Convention) zu Ihrer Paketdatei (.dtsx) an. Die Option „Dateisystem (Paket)“ wird automatisch ausgewählt, wenn Azure-SSIS Integration Runtime ohne SSISDB bereitgestellt wurde.If you select File System (Package) as your package location, which is automatically selected if your Azure-SSIS IR was provisioned without SSISDB, specify your package to run by providing a Universal Naming Convention (UNC) path to your package file (.dtsx) in the Package path box. Wenn Sie Ihr Paket also beispielsweise in Azure Files speichern, lautet der Paketpfad \\<storage account name>.file.core.windows.net\<file share name>\<package name>.dtsx.For example, if you store your package in Azure Files, its package path is \\<storage account name>.file.core.windows.net\<file share name>\<package name>.dtsx.

    Wenn Sie Ihr Paket in einer separaten Datei konfigurieren, müssen Sie außerdem im Feld Konfigurationspfad einen UNC-Pfad zu Ihrer Konfigurationsdatei (.dtsConfig) angeben.If you configure your package in a separate file, you also need to provide a UNC path to your configuration file (.dtsConfig) in the Configuration path box. Wenn Sie Ihre Konfiguration also beispielsweise in Azure Files speichern, lautet der Konfigurationspfad \\<storage account name>.file.core.windows.net\<file share name>\<configuration name>.dtsConfig.For example, if you store your configuration in Azure Files, its configuration path is \\<storage account name>.file.core.windows.net\<file share name>\<configuration name>.dtsConfig.

    Festlegen von Eigenschaften auf der Registerkarte „Einstellungen“ – Manuell

    Wenn Sie Dateisystem (Projekt) als Paketspeicherort auswählen, geben Sie zur Angabe des auszuführenden Pakets im Feld Projektpfad einen UNC-Pfad (Universal Naming Convention) zu Ihrer Projektdatei (.ispac) und im Feld Paketname eine Paketdatei (.dtsx) aus Ihrem Projekt an.If you select File System (Project) as your package location, specify your package to run by providing a UNC path to your project file (.ispac) in the Project path box and a package file (.dtsx) from your project in the Package name box. Wenn Sie Ihr Projekt also beispielsweise in Azure Files speichern, lautet der Projektpfad \\<storage account name>.file.core.windows.net\<file share name>\<project name>.ispac.For example, if you store your project in Azure Files, its project path is \\<storage account name>.file.core.windows.net\<file share name>\<project name>.ispac.

    Festlegen von Eigenschaften auf der Registerkarte „Einstellungen“ – Manuell

    Als Nächstes geben Sie die Anmeldeinformationen für den Zugriff auf Ihre Projekt-, Paket- oder Konfigurationsdateien an.Next, specify the credentials to access your project, package, or configuration files. Wenn Sie wie weiter oben beschrieben die Werte der Anmeldeinformationen für die Paketausführung eingegeben haben, können Sie diese Werte wiederverwenden, indem Sie das Kontrollkästchen Same as package execution credentials (Identisch mit den Anmeldeinformationen für die Paketausführung) aktivieren.If you previously entered the values for your package execution credentials (see previous), you can reuse them by selecting the Same as package execution credentials check box. Geben Sie andernfalls die Werte Ihrer Anmeldeinformationen für den Paketzugriff in die Felder Domäne, Benutzername und Kennwort ein.Otherwise, enter the values for your package access credentials in the Domain, Username, and Password boxes. Wenn Sie Ihr Projekt, Ihr Paket oder Ihre Konfiguration also beispielsweise in Azure Files speichern, lauten die Werte wie folgt: Domäne: Azure; Benutzername: <storage account name>; Kennwort: <storage account key>.For example, if you store your project, package, or configuration in Azure Files, the domain is Azure, the username is <storage account name>, and the password is <storage account key>.

    Alternativ können Sie in Ihrem Schlüsseltresor gespeicherte Geheimnisse als Werte verwenden (wie weiter oben beschrieben).Alternatively, you can use secrets stored in your key vault as their values (see previous). Diese Anmeldeinformationen werden sowohl für den Zugriff auf Ihr Paket und Ihre Unterpakete in der Paketausführungsaufgabe (jeweils unter ihrem eigenen Pfad oder dem gleichen Projekt) als auch für den Zugriff auf Konfigurationen verwendet (einschließlich der Konfigurationen, die in Ihren Paketen angegeben sind).These credentials are used to access your package and child packages in Execute Package Task, all from their own path or the same project, as well as configurations, which include those specified in your packages.

    Wenn Sie Eingebettetes Paket als Ihren Paketspeicherort auswählen, können Sie das Paket ziehen und ablegen, um es auszuführen, oder es aus einem Dateiordner in das dafür vorgesehene Feld hochladen.If you select Embedded package as your package location, drag and drop your package to run or Upload it from a file folder into the box provided. Ihr Paket wird automatisch komprimiert und in die Nutzlast für die Aktivität eingebettet.Your package will be automatically compressed and embedded in the activity payload. Nachdem das Paket eingebettet wurde, können Sie es zum späteren Bearbeiten herunterladen.Once embedded, you can Download your package later for editing. Sie können Ihr eingebettetes Paket auch Parametrisieren, indem Sie es einem Pipelineparameter zuweisen, der in mehreren Aktivitäten verwendet werden kann. Auf diese Weise wird die Größe Ihrer Pipelinenutzlast optimiert.You can also Parameterize your embedded package by assigning it to a pipeline parameter that can be used in multiple activities, hence optimizing the size of your pipeline payload. Wenn Ihr eingebettetes Paket nicht vollständig verschlüsselt wurde und darin die Verwendung des Tasks „Paket ausführen“ erkannt wird, wird das Kontrollkästchen Task „Paket ausführen“ automatisch aktiviert, und die relevanten untergeordneten Pakete mit ihren Dateisystemverweisen werden automatisch hinzugefügt und so auch eingebettet.If your embedded package is not all encrypted and we detect the use of Execute Package Task in it, the Execute Package Task check box will be automatically selected and the relevant child packages with their file system references will be automatically added for you to also embed them. Wenn die Verwendung des Tasks „Paket ausführen“ nicht erkannt werden kann, müssen Sie das Kontrollkästchen Task „Paket ausführen“ manuell aktivieren und die relevanten untergeordneten Pakete mit ihren Dateisystemverweisen einzeln hinzufügen, damit sie auch eingebettet werden.If we can't detect the use of Execute Package Task, you'll have to manually select the Execute Package Task check box and add the relevant child packages with their file system references one by one for you to also embed them. Wenn die untergeordneten Pakete SQL Server-Verweise verwenden, stellen Sie sicher, dass Ihre Azure-SSIS Integration Runtime-Instanz auf den SQL-Server zugreifen kann.If the child packages use SQL Server references, please ensure that the SQL Server is accessible by your Azure-SSIS IR. Die Verwendung von Projektverweisen für untergeordnete Pakete wird derzeit nicht unterstützt.The use of project references for child packages is currently unsupported.

    Festlegen von Eigenschaften auf der Registerkarte „Einstellungen“ – Manuell

    Wenn Sie bei der Paketerstellung über SQL Server Data Tools die Schutzebene EncryptAllWithPassword oder EncryptSensitiveWithPassword verwendet haben, müssen Sie unter Verschlüsselungskennwort den Wert für Ihr Kennwort eingeben.If you used the EncryptAllWithPassword or EncryptSensitiveWithPassword protection level when you created your package via SQL Server Data Tools, enter the value for your password in the Encryption password box. Alternativ können Sie ein in Ihrem Schlüsseltresor gespeichertes Geheimnis als Wert verwenden (wie weiter oben beschrieben).Alternatively, you can use a secret stored in your key vault as its value (see previous). Wenn Sie die Schutzebene EncryptSensitiveWithUserKey verwendet haben, geben Sie Ihre vertraulichen Werte in Konfigurationsdateien oder auf den Registerkarten SSIS-Parameter, Verbindungs-Manager oder Eigenschaftenüberschreibungen erneut ein (wie weiter unten beschrieben).If you used the EncryptSensitiveWithUserKey protection level, reenter your sensitive values in configuration files or on the SSIS Parameters, Connection Managers, or Property Overrides tabs (see later).

    Die Verwendung der Schutzebene EncryptAllWithUserKey wird nicht unterstützt.If you used the EncryptAllWithUserKey protection level, it's unsupported. Sie müssen Ihr Paket über SQL Server Data Tools oder das Befehlszeilenprogramm dtutil für die Verwendung einer anderen Schutzebene neu konfigurieren.You need to reconfigure your package to use another protection level via SQL Server Data Tools or the dtutil command-line utility.

    Wählen Sie für Protokolliergrad einen vordefinierten Bereich für die Protokollierung Ihrer Paketausführung.For Logging level, select a predefined scope of logging for your package execution. Aktivieren Sie das Kontrollkästchen Angepasst, wenn Sie stattdessen einen angepassten Namen für die Protokollierung eingeben möchten.Select the Customized check box if you want to enter your customized logging name instead. Wenn Sie für Ihre Paketausführungen eine Protokollierung verwenden möchten, die über die Standardprotokollanbieter hinausgeht, die in Ihrem Paket angegeben werden können, geben Sie im Feld Protokollierungspfad den UNC-Pfad Ihres Protokollordners an.If you want to log your package executions beyond using the standard log providers that can be specified in your package, specify your log folder by providing its UNC path in the Logging path box. Wenn Sie Ihre Protokolle also beispielsweise in Azure Files speichern, lautet Ihr Protokollierungspfad \\<storage account name>.file.core.windows.net\<file share name>\<log folder name>.For example, if you store your logs in Azure Files, your logging path is \\<storage account name>.file.core.windows.net\<file share name>\<log folder name>. An diesem Pfad wird für jedes ausgeführte Einzelpaket ein Unterordner erstellt und mit der Aktivitätsausführungs-ID von „SSIS-Paket ausführen“ benannt. In diesem Unterordner werden alle fünf Minuten Protokolldateien generiert.A subfolder is created in this path for each individual package run and named after the Execute SSIS Package activity run ID, in which log files are generated every five minutes.

    Abschließend geben Sie die Anmeldeinformationen für den Zugriff auf Ihren Protokollordner an.Finally, specify the credentials to access your log folder. Wenn Sie wie weiter oben beschrieben die Werte der Anmeldeinformationen für den Paketzugriff eingegeben haben, können Sie diese Werte wiederverwenden, indem Sie das Kontrollkästchen Same as package access credentials (Identisch mit den Anmeldeinformationen für den Paketzugriff) aktivieren.If you previously entered the values for your package access credentials (see previous), you can reuse them by selecting the Same as package access credentials check box. Geben Sie andernfalls die Werte Ihrer Anmeldeinformationen für den Protokollierungszugriff in die Felder Domäne, Benutzername und Kennwort ein.Otherwise, enter the values for your logging access credentials in the Domain, Username, and Password boxes. Wenn Sie Ihre Protokolle also beispielsweise in Azure Files speichern, lauten die Werte wie folgt: Domäne: Azure; Benutzername: <storage account name>; Kennwort: <storage account key>.For example, if you store your logs in Azure Files, the domain is Azure, the username is <storage account name>, and the password is <storage account key>.

    Alternativ können Sie in Ihrem Schlüsseltresor gespeicherte Geheimnisse als Werte verwenden (wie weiter oben beschrieben).Alternatively, you can use secrets stored in your key vault as their values (see previous). Diese Anmeldeinformationen werden zum Speichern Ihrer Protokolle verwendet.These credentials are used to store your logs.

    Für alle zuvor erwähnten UNC-Pfade muss der vollqualifizierte Dateiname weniger als 260 Zeichen umfassen.For all UNC paths previously mentioned, the fully qualified file name must be fewer than 260 characters. Der Verzeichnisname muss weniger als 248 Zeichen umfassen.The directory name must be fewer than 248 characters.

  5. Wenn Ihre Azure-SSIS Integration Runtime-Instanz ausgeführt wird, die Option SSISDB als Paketspeicherort ausgewählt ist und das Kontrollkästchen Manuelle Einträge auf der Registerkarte Einstellungen deaktiviert ist, werden auf der Registerkarte SSIS-Parameter der Aktivität „SSIS-Paket ausführen“ die vorhandenen SSIS-Parameter im ausgewählten Projekt oder Paket aus SSISDB angezeigt, damit Sie ihnen Werte zuweisen können.On the SSIS Parameters tab for the Execute SSIS Package activity, if your Azure-SSIS IR is running, SSISDB is selected as your package location, and the Manual entries check box on the Settings tab is cleared, the existing SSIS parameters in your selected project or package from SSISDB are displayed for you to assign values to them. Andernfalls können Sie sie einzeln eingeben, um ihnen manuell Werte zuzuweisen.Otherwise, you can enter them one by one to assign values to them manually. Vergewissern Sie sich, dass sie vorhanden sind und korrekt eingegeben wurden, damit Ihre Paketausführung erfolgreich ist.Make sure that they exist and are correctly entered for your package execution to succeed.

    Wenn Sie bei der Paketerstellung über SQL Server Data Tools die Schutzebene EncryptSensitiveWithUserKey verwendet haben und Dateisystem (Paket) oder Dateisystem (Projekt) als Paketspeicherort ausgewählt ist, müssen Sie Ihre vertraulichen Parameter erneut eingeben, um ihnen in Konfigurationsdateien oder auf dieser Registerkarte Werte zuzuweisen.If you used the EncryptSensitiveWithUserKey protection level when you created your package via SQL Server Data Tools and File System (Package) or File System (Project) is selected as your package location, you also need to reenter your sensitive parameters to assign values to them in configuration files or on this tab.

    Beim Zuweisen von Werten für Ihre Parameter können Sie Ausdrücke, Funktionen, Data Factory-Systemvariablen und Data Factory-Pipelineparameter oder -Variablen verwenden, um dynamische Inhalte hinzuzufügen.When you assign values to your parameters, you can add dynamic content by using expressions, functions, Data Factory system variables, and Data Factory pipeline parameters or variables. Alternativ können Sie in Ihrem Schlüsseltresor gespeicherte Geheimnisse als Werte verwenden (wie weiter oben beschrieben).Alternatively, you can use secrets stored in your key vault as their values (see previous).

    Festlegen von Eigenschaften auf der Registerkarte „SSIS-Parameter“

  6. Wenn Ihre Azure-SSIS Integration Runtime-Instanz ausgeführt wird, die Option SSISDB als Paketspeicherort ausgewählt ist und das Kontrollkästchen Manuelle Einträge auf der Registerkarte Einstellungen deaktiviert ist, werden auf der Registerkarte Verbindungs-Manager der Aktivität „SSIS-Paket ausführen“ die vorhandenen Verbindungs-Manager im ausgewählten Projekt oder Paket aus SSISDB angezeigt, damit Sie ihren Eigenschaften Werte zuweisen können.On the Connection Managers tab for the Execute SSIS Package activity, if your Azure-SSIS IR is running, SSISDB is selected as your package location, and the Manual entries check box on the Settings tab is cleared, the existing connection managers in your selected project or package from SSISDB are displayed for you to assign values to their properties. Andernfalls können Sie sie einzeln eingeben, um ihren Eigenschaften manuell Werte zuzuweisen.Otherwise, you can enter them one by one to assign values to their properties manually. Vergewissern Sie sich, dass sie vorhanden sind und korrekt eingegeben wurden, damit Ihre Paketausführung erfolgreich ist.Make sure that they exist and are correctly entered for your package execution to succeed.

    Wenn Sie bei der Paketerstellung über SQL Server Data Tools die Schutzebene EncryptSensitiveWithUserKey verwendet haben und Dateisystem (Paket) oder Dateisystem (Projekt) als Paketspeicherort ausgewählt ist, müssen Sie auch Ihre vertraulichen Verbindungs-Manager-Eigenschaften erneut eingeben, um ihnen in Konfigurationsdateien oder auf dieser Registerkarte Werte zuzuweisen.If you used the EncryptSensitiveWithUserKey protection level when you created your package via SQL Server Data Tools and File System (Package) or File System (Project) is selected as your package location, you also need to reenter your sensitive connection manager properties to assign values to them in configuration files or on this tab.

    Beim Zuweisen von Werten für Ihre Verbindungs-Manager-Eigenschaften können Sie Ausdrücke, Funktionen, Data Factory-Systemvariablen und Data Factory-Pipelineparameter oder -Variablen verwenden, um dynamische Inhalte hinzuzufügen.When you assign values to your connection manager properties, you can add dynamic content by using expressions, functions, Data Factory system variables, and Data Factory pipeline parameters or variables. Alternativ können Sie in Ihrem Schlüsseltresor gespeicherte Geheimnisse als Werte verwenden (wie weiter oben beschrieben).Alternatively, you can use secrets stored in your key vault as their values (see previous).

    Festlegen von Eigenschaften auf der Registerkarte „Verbindungs-Manager“

  7. Geben Sie auf der Registerkarte Eigenschaftenüberschreibungen der Aktivität „SSIS-Paket ausführen“ die Pfade der vorhandenen Eigenschaften in dem von Ihnen ausgewählten Paket einzeln an, um ihnen manuell Werte zuzuweisen.On the Property Overrides tab for the Execute SSIS Package activity, enter the paths of existing properties in your selected package one by one to assign values to them manually. Vergewissern Sie sich, dass sie vorhanden sind und korrekt eingegeben wurden, damit Ihre Paketausführung erfolgreich ist.Make sure that they exist and are correctly entered for your package execution to succeed. Geben Sie also beispielsweise zum Überschreiben des Werts Ihrer Benutzervariablen den zugehörigen Pfad im folgenden Format ein: \Package.Variables[User::<variable name>].Value.For example, to override the value of your user variable, enter its path in the following format: \Package.Variables[User::<variable name>].Value.

    Wenn Sie bei der Paketerstellung über SQL Server Data Tools die Schutzebene EncryptSensitiveWithUserKey verwendet haben und Dateisystem (Paket) oder Dateisystem (Projekt) als Paketspeicherort ausgewählt ist, müssen Sie auch Ihre vertraulichen Parameter Eigenschaften eingeben, um ihnen in Konfigurationsdateien oder auf dieser Registerkarte Werte zuzuweisen.If you used the EncryptSensitiveWithUserKey protection level when you created your package via SQL Server Data Tools and File System (Package) or File System (Project) is selected as your package location, you also need to reenter your sensitive properties to assign values to them in configuration files or on this tab.

    Beim Zuweisen von Werten für Ihre Eigenschaften können Sie Ausdrücke, Funktionen, Data Factory-Systemvariablen und Data Factory-Pipelineparameter oder -Variablen verwenden, um dynamische Inhalte hinzuzufügen.When you assign values to your properties, you can add dynamic content by using expressions, functions, Data Factory system variables, and Data Factory pipeline parameters or variables.

    Festlegen von Eigenschaften auf der Registerkarte „Eigenschaftenüberschreibungen“

    Die in den Konfigurationsdateien und auf der Registerkarte SSIS-Parameter zugewiesenen Werte können mithilfe der Registerkarten Verbindungs-Manager oder Eigenschaftenüberschreibungen überschrieben werden.The values assigned in configuration files and on the SSIS Parameters tab can be overridden by using the Connection Managers or Property Overrides tabs. Die auf der Registerkarte Verbindungs-Manager zugewiesenen Werte können ebenfalls auf der Registerkarte Eigenschaftenüberschreibungen überschrieben werden.The values assigned on the Connection Managers tab can also be overridden by using the Property Overrides tab.

  8. Wählen Sie zum Überprüfen der Pipelinekonfiguration auf der Symbolleiste die Option Überprüfen aus.To validate the pipeline configuration, select Validate on the toolbar. Wählen Sie zum Schließen von Pipeline Validation Report (Pipelineüberprüfungsbericht) die Option >> aus.To close the Pipeline Validation Report, select >>.

  9. Veröffentlichen Sie die Pipeline in Data Factory, indem Sie die Schaltfläche Alle veröffentlichen auswählen.To publish the pipeline to Data Factory, select Publish All.

Führen Sie die Pipeline aus.Run the pipeline

In diesem Schritt lösen Sie eine Pipelineausführung aus.In this step, you trigger a pipeline run.

  1. Wählen Sie zum Auslösen einer Pipelineausführung auf der Symbolleiste die Option Trigger (Auslösen) und dann Trigger now (Jetzt auslösen) aus.To trigger a pipeline run, select Trigger on the toolbar, and select Trigger now.

    Manuelles Auslösen

  2. Wählen Sie im Fenster Pipelineausführung die Option Fertig stellen aus.In the Pipeline Run window, select Finish.

Überwachen der PipelineMonitor the pipeline

  1. Wechseln Sie im linken Bereich zur Registerkarte Überwachen.Switch to the Monitor tab on the left. Die Pipelineausführung, der zugehörige Status sowie weitere Informationen (z. B. Startzeit der Ausführung) werden angezeigt.You see the pipeline run and its status along with other information, such as the Run Start time. Klicken Sie zum Aktualisieren der Ansicht auf Aktualisieren.To refresh the view, select Refresh.

    Pipelineausführungen

  2. Klicken Sie in der Spalte Aktionen auf den Link View Activity Runs (Aktivitätsausführungen anzeigen).Select the View Activity Runs link in the Actions column. Sie sehen nur eine Aktivitätsausführung, da die Pipeline nur eine Aktivität enthält.You see only one activity run because the pipeline has only one activity. Dabei handelt es sich um die Aktivität „SSIS-Paket ausführen“.It's the Execute SSIS Package activity.

    Aktivitätsausführungen

  3. Führen Sie auf Ihrem SQL-Server die folgende Abfrage für die SSISDB-Datenbank ausführen, um zu überprüfen, ob das Paket ausgeführt wurde.Run the following query against the SSISDB database in your SQL server to verify that the package executed.

    select * from catalog.executions
    

    Überprüfen von Paketausführungen

  4. Sie können auch die SSISDB-Ausführungs-ID aus der Ausgabe der Pipelineaktivitätsausführung abrufen und anhand der ID umfangreichere Ausführungsprotokolle und Fehlermeldungen in SQL Server Management Studio überprüfen.You can also get the SSISDB execution ID from the output of the pipeline activity run and use the ID to check more comprehensive execution logs and error messages in SQL Server Management Studio.

    Abrufen der Ausführungs-ID

Planen der Pipeline mit einem TriggerSchedule the pipeline with a trigger

Sie können auch einen geplanten Trigger für die Pipeline erstellen, damit die Pipeline basierend auf einem Zeitplan (etwa stündlich oder täglich) ausgeführt wird.You can also create a scheduled trigger for your pipeline so that the pipeline runs on a schedule, such as hourly or daily. Ein Beispiel finden Sie unter Erstellen einer Data Factory über die Azure Data Factory-Benutzeroberfläche.For an example, see Create a data factory - Data Factory UI.

Ausführen eines Pakets mit PowerShellRun a package with PowerShell

In diesem Abschnitt erstellen Sie mithilfe von Azure PowerShell eine Data Factory-Pipeline mit der Aktivität „SSIS-Paket ausführen“, die Ihr SSIS-Paket ausführt.In this section, you use Azure PowerShell to create a Data Factory pipeline with an Execute SSIS Package activity that runs your SSIS package.

Installieren Sie die aktuellen Azure PowerShell-Module, indem Sie die Schritt-für-Schritt-Anweisungen unter Installieren und Konfigurieren von Azure PowerShell befolgen.Install the latest Azure PowerShell modules by following the step-by-step instructions in How to install and configure Azure PowerShell.

Erstellen einer Data Factory mit Azure-SSIS IRCreate a data factory with Azure-SSIS IR

Sie können entweder eine vorhandene Data Factory verwenden, in der Azure-SSIS IR bereits bereitgestellt wurde, oder eine neue Data Factory mit Azure-SSIS IR erstellen.You can either use an existing data factory that already has Azure-SSIS IR provisioned or create a new data factory with Azure-SSIS IR. Befolgen Sie dann die Schrittanleitungen unter Tutorial: Bereitstellen von SSIS-Paketen in Azure mit PowerShell folgen.Follow the step-by-step instructions in the Tutorial: Deploy SSIS packages to Azure via PowerShell.

Erstellen einer Pipeline mit einer Aktivität „SSIS-Paket ausführen“Create a pipeline with an Execute SSIS Package activity

In diesem Schritt erstellen Sie eine Pipeline mit einer Aktivität „SSIS-Paket ausführen“.In this step, you create a pipeline with an Execute SSIS Package activity. Die Aktivität führt Ihr SSIS-Paket aus.The activity runs your SSIS package.

  1. Erstellen Sie im Ordner C:\ADF\RunSSISPackage eine JSON-Datei mit dem Namen RunSSISPackagePipeline.json und einem Inhalt wie im folgenden Beispiel:Create a JSON file named RunSSISPackagePipeline.json in the C:\ADF\RunSSISPackage folder with content similar to the following example.

    Wichtig

    Bevor Sie die Datei speichern, ersetzen Sie Objektnamen, Beschreibungen, Pfade, Eigenschafts- oder Parameterwerte, Kennwörter und andere Variablenwerte.Replace object names, descriptions, and paths, property or parameter values, passwords, and other variable values before you save the file.

    {
        "name": "RunSSISPackagePipeline",
        "properties": {
            "activities": [{
                "name": "MySSISActivity",
                "description": "My SSIS package/activity description",
                "type": "ExecuteSSISPackage",
                "typeProperties": {
                    "connectVia": {
                        "referenceName": "MyAzureSSISIR",
                        "type": "IntegrationRuntimeReference"
                    },
                    "executionCredential": {
                        "domain": "MyExecutionDomain",
                        "username": "MyExecutionUsername",
                        "password": {
                            "type": "SecureString",
                            "value": "MyExecutionPassword"
                        }
                    },
                    "runtime": "x64",
                    "loggingLevel": "Basic",
                    "packageLocation": {
                        "packagePath": "MyFolder/MyProject/MyPackage.dtsx",
                        "type": "SSISDB"
                    },
                    "environmentPath": "MyFolder/MyEnvironment",
                    "projectParameters": {
                        "project_param_1": {
                            "value": "123"
                        },
                        "project_param_2": {
                            "value": {
                                "value": "@pipeline().parameters.MyProjectParameter",
                                "type": "Expression"
                            }
                        }
                    },
                    "packageParameters": {
                        "package_param_1": {
                            "value": "345"
                        },
                        "package_param_2": {
                            "value": {
                                "type": "AzureKeyVaultSecret",
                                "store": {
                                    "referenceName": "myAKV",
                                    "type": "LinkedServiceReference"
                                },
                                "secretName": "MyPackageParameter"
                            }
                        }
                    },
                    "projectConnectionManagers": {
                        "MyAdonetCM": {
                            "username": {
                                "value": "MyConnectionUsername"
                            },
                            "password": {
                                "value": {
                                    "type": "SecureString",
                                    "value": "MyConnectionPassword"
                                }
                            }
                        }
                    },
                    "packageConnectionManagers": {
                        "MyOledbCM": {
                            "username": {
                                "value": {
                                    "value": "@pipeline().parameters.MyConnectionUsername",
                                    "type": "Expression"
                                }
                            },
                            "password": {
                                "value": {
                                    "type": "AzureKeyVaultSecret",
                                    "store": {
                                        "referenceName": "myAKV",
                                        "type": "LinkedServiceReference"
                                    },
                                    "secretName": "MyConnectionPassword",
                                    "secretVersion": "MyConnectionPasswordVersion"
                                }
                            }
                        }
                    },
                    "propertyOverrides": {
                        "\\Package.MaxConcurrentExecutables": {
                            "value": 8,
                            "isSensitive": false
                        }
                    }
                },
                "policy": {
                    "timeout": "0.01:00:00",
                    "retry": 0,
                    "retryIntervalInSeconds": 30
                }
            }]
        }
    }
    

    Geben Sie zum Ausführen von Paketen, die in Dateisystemen, Dateifreigaben oder Azure Files gespeichert sind, die Werte für Ihre Paket- und Protokollspeicherort-Eigenschaften wie folgt ein:To execute packages stored in file systems, file shares, or Azure Files, enter the values for your package and log location properties as follows:

    {
        {
            {
                {
                    "packageLocation": {
                        "packagePath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyPackage.dtsx",
                        "type": "File",
                        "typeProperties": {
                            "packagePassword": {
                                "type": "SecureString",
                                "value": "MyEncryptionPassword"
                            },
                            "accessCredential": {
                                "domain": "Azure",
                                "username": "MyStorageAccount",
                                "password": {
                                    "type": "SecureString",
                                    "value": "MyAccountKey"
                                }
                            }
                        }
                    },
                    "logLocation": {
                        "logPath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyLogFolder",
                        "type": "File",
                        "typeProperties": {
                            "accessCredential": {
                                "domain": "Azure",
                                "username": "MyStorageAccount",
                                "password": {
                                    "type": "AzureKeyVaultSecret",
                                    "store": {
                                        "referenceName": "myAKV",
                                        "type": "LinkedServiceReference"
                            },
                                    "secretName": "MyAccountKey"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    

    Geben Sie zum Ausführen von Paketen in Projekten, die in Dateisystemen, Dateifreigaben oder Azure Files gespeichert sind, die Werte für Ihre Paketspeicherort-Eigenschaft wie folgt ein:To execute packages within projects stored in file systems, file shares, or Azure Files, enter the values for your package location property as follows:

    {
        {
            {
                {
                    "packageLocation": {
                        "packagePath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyProject.ispac:MyPackage.dtsx",
                        "type": "File",
                        "typeProperties": {
                            "packagePassword": {
                                "type": "SecureString",
                                "value": "MyEncryptionPassword"
                            },
                            "accessCredential": {
                                "domain": "Azure",
                                "userName": "MyStorageAccount",
                                "password": {
                                    "type": "SecureString",
                                    "value": "MyAccountKey"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    

    Geben Sie zum Ausführen von eingebetteten Paketen die Werte für Ihre Paketspeicherort-Eigenschaft wie folgt ein:To execute embedded packages, enter the values for your package location property as follows:

    {
        {
            {
                {
                    "packageLocation": {
                        "type": "InlinePackage",
                        "typeProperties": {
                            "packagePassword": {
                                "type": "SecureString",
                                "value": "MyEncryptionPassword"
                            },
                            "packageName": "MyPackage.dtsx",
                            "packageContent":"My compressed/uncompressed package content",
                            "packageLastModifiedDate": "YYYY-MM-DDTHH:MM:SSZ UTC-/+HH:MM"
                        }
                    }
                }
            }
        }
    }
    
  2. Wechseln Sie in Azure PowerShell zum Ordner C:\ADF\RunSSISPackage.In Azure PowerShell, switch to the C:\ADF\RunSSISPackage folder.

  3. Führen Sie das Cmdlet Set-AzDataFactoryV2Pipeline aus, um die Pipeline RunSSISPackagePipeline zu erstellen.To create the pipeline RunSSISPackagePipeline, run the Set-AzDataFactoryV2Pipeline cmdlet.

    $DFPipeLine = Set-AzDataFactoryV2Pipeline -DataFactoryName $DataFactory.DataFactoryName `
                                                   -ResourceGroupName $ResGrp.ResourceGroupName `
                                                   -Name "RunSSISPackagePipeline"
                                                   -DefinitionFile ".\RunSSISPackagePipeline.json"
    

    Hier ist die Beispielausgabe:Here's the sample output:

    PipelineName      : Adfv2QuickStartPipeline
    ResourceGroupName : <resourceGroupName>
    DataFactoryName   : <dataFactoryName>
    Activities        : {CopyFromBlobToBlob}
    Parameters        : {[inputPath, Microsoft.Azure.Management.DataFactory.Models.ParameterSpecification], [outputPath, Microsoft.Azure.Management.DataFactory.Models.ParameterSpecification]}
    

Führen Sie die Pipeline aus.Run the pipeline

Verwenden Sie das Cmdlet Invoke-AzDataFactoryV2Pipeline, um die Pipeline auszuführen.Use the Invoke-AzDataFactoryV2Pipeline cmdlet to run the pipeline. Das Cmdlet gibt die ID der Pipelineausführung für die zukünftige Überwachung zurück.The cmdlet returns the pipeline run ID for future monitoring.

$RunId = Invoke-AzDataFactoryV2Pipeline -DataFactoryName $DataFactory.DataFactoryName `
                                             -ResourceGroupName $ResGrp.ResourceGroupName `
                                             -PipelineName $DFPipeLine.Name

Überwachen der PipelineMonitor the pipeline

Führen Sie das folgende PowerShell-Skript aus, um den Status der Pipelineausführung kontinuierlich zu überwachen, bis das Kopieren der Daten beendet ist.Run the following PowerShell script to continuously check the pipeline run status until it finishes copying the data. Kopieren Sie das folgende Skript, fügen Sie es in das PowerShell-Fenster ein, und drücken Sie die EINGABETASTE.Copy or paste the following script in the PowerShell window, and select Enter.

while ($True) {
    $Run = Get-AzDataFactoryV2PipelineRun -ResourceGroupName $ResGrp.ResourceGroupName `
                                               -DataFactoryName $DataFactory.DataFactoryName `
                                               -PipelineRunId $RunId

    if ($Run) {
        if ($run.Status -ne 'InProgress') {
            Write-Output ("Pipeline run finished. The status is: " +  $Run.Status)
            $Run
            break
        }
        Write-Output  "Pipeline is running...status: InProgress"
    }

    Start-Sleep -Seconds 10
}   

Sie können die Pipeline auch mithilfe des Azure-Portals überwachen.You can also monitor the pipeline by using the Azure portal. Schritt-für-Schritt-Anweisungen finden Sie unter Überwachen der Pipeline.For step-by-step instructions, see Monitor the pipeline.

Planen der Pipeline mit einem TriggerSchedule the pipeline with a trigger

Im vorherigen Schritt wurde die Pipeline auf Anforderung ausgeführt.In the previous step, you ran the pipeline on demand. Alternativ können Sie einen Zeitplantrigger erstellen, um die Pipeline nach Zeitplan (etwa stündlich oder täglich) auszuführen.You can also create a schedule trigger to run the pipeline on a schedule, such as hourly or daily.

  1. Erstellen Sie im Ordner C:\ADF\RunSSISPackage eine JSON-Datei mit dem Namen MyTrigger.json und dem folgenden Inhalt:Create a JSON file named MyTrigger.json in the C:\ADF\RunSSISPackage folder with the following content:

    {
        "properties": {
            "name": "MyTrigger",
            "type": "ScheduleTrigger",
            "typeProperties": {
                "recurrence": {
                    "frequency": "Hour",
                    "interval": 1,
                    "startTime": "2017-12-07T00:00:00-08:00",
                    "endTime": "2017-12-08T00:00:00-08:00"
                }
            },
            "pipelines": [{
                "pipelineReference": {
                    "type": "PipelineReference",
                    "referenceName": "RunSSISPackagePipeline"
                },
                "parameters": {}
            }]
        }
    }    
    
  2. Wechseln Sie in Azure PowerShell zum Ordner C:\ADF\RunSSISPackage.In Azure PowerShell, switch to the C:\ADF\RunSSISPackage folder.

  3. Führen Sie das Cmdlet Set-AzDataFactoryV2Trigger aus, um den Trigger zu erstellen.Run the Set-AzDataFactoryV2Trigger cmdlet, which creates the trigger.

    Set-AzDataFactoryV2Trigger -ResourceGroupName $ResGrp.ResourceGroupName `
                                    -DataFactoryName $DataFactory.DataFactoryName `
                                    -Name "MyTrigger" -DefinitionFile ".\MyTrigger.json"
    
  4. Standardmäßig befindet sich der Trigger im beendeten Zustand.By default, the trigger is in stopped state. Starten Sie den Trigger durch Ausführen des Cmdlets Start-AzDataFactoryV2Trigger.Start the trigger by running the Start-AzDataFactoryV2Trigger cmdlet.

    Start-AzDataFactoryV2Trigger -ResourceGroupName $ResGrp.ResourceGroupName `
                                      -DataFactoryName $DataFactory.DataFactoryName `
                                      -Name "MyTrigger" 
    
  5. Bestätigen Sie, dass der Trigger sich im gestarteten Zustand befindet, indem Sie das Cmdlet Get-AzDataFactoryV2Trigger ausführen.Confirm that the trigger is started by running the Get-AzDataFactoryV2Trigger cmdlet.

    Get-AzDataFactoryV2Trigger -ResourceGroupName $ResourceGroupName `
                                    -DataFactoryName $DataFactoryName `
                                    -Name "MyTrigger"     
    
  6. Führen Sie nach der nächsten vollen Stunde den folgenden Befehl aus.Run the following command after the next hour. Wenn die aktuelle Uhrzeit z.B. 15:25 UTC ist, führen Sie den Befehl um 16:00 UTC aus.For example, if the current time is 3:25 PM UTC, run the command at 4 PM UTC.

    Get-AzDataFactoryV2TriggerRun -ResourceGroupName $ResourceGroupName `
                                       -DataFactoryName $DataFactoryName `
                                       -TriggerName "MyTrigger" `
                                       -TriggerRunStartedAfter "2017-12-06" `
                                       -TriggerRunStartedBefore "2017-12-09"
    

    Führen Sie auf Ihrem SQL-Server die folgende Abfrage für die SSISDB-Datenbank ausführen, um zu überprüfen, ob das Paket ausgeführt wurde.Run the following query against the SSISDB database in your SQL server to verify that the package executed.

    select * from catalog.executions
    

Nächste SchritteNext steps

Informationen finden Sie im folgenden Blogbeitrag:See the following blog post: