A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://learn.microsoft.com/en-us/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup below:

Customize the setup for an Azure-SSIS Integration Runtime - Azure Data Factory

APPLIES TO: Azure Data Factory Azure Synapse Analytics

You can customize your Azure-SQL Server Integration Services (SSIS) Integration Runtime (IR) in Azure Data Factory (ADF) or Synapse Pipelines via custom setups. They allow you to add your own steps during the provisioning or reconfiguration of your Azure-SSIS IR.

By using custom setups, you can alter the default operating configuration or environment of your Azure-SSIS IR. For example, to start additional Windows services, persist access credentials for file shares, or use only strong cryptography/more secure network protocol (TLS 1.2). Or you can install additional components, such as assemblies, drivers, or extensions, on each node of your Azure-SSIS IR. They can be custom-made, Open Source, or 3rd party components. For more information about built-in/preinstalled components, see Built-in/preinstalled components on Azure-SSIS IR.

You can do custom setups on your Azure-SSIS IR in either of two ways:

You can install both free (unlicensed) and paid (licensed) components with standard and express custom setups. If you're an independent software vendor (ISV), see Develop paid or licensed components for Azure-SSIS IR.

Important

To benefit from future enhancements, we recommend using v3 or later series of nodes for your Azure-SSIS IR with custom setup.

Current limitations

The following limitations apply only to standard custom setups:

Prerequisites

To customize your Azure-SSIS IR, you need the following items:

Instructions

You can provision or reconfigure your Azure-SSIS IR with custom setups on ADF UI. If you want to do the same using PowerShell, download and install Azure PowerShell.

Standard custom setup

To provision or reconfigure your Azure-SSIS IR with standard custom setups on ADF UI, complete the following steps.

  1. Prepare your custom setup script and its associated files (for example, .bat, .cmd, .exe, .dll, .msi, or .ps1 files).

  2. Download, install, and open Azure Storage Explorer.

    a. Under Local and Attached, right-click Storage Accounts, and then select Connect to Azure Storage.

    b. Select Storage account or service, select Account name and key, and then select Next.

    c. Enter your Azure Storage account name and key, select Next, and then select Connect.

    d. Under your connected Azure Storage account, right-click Blob Containers, select Create Blob Container, and name the new blob container.

    e. Select the new blob container, and upload your custom setup script and its associated files. Make sure that you upload main.cmd at the top level of your blob container, not in any folder. Your blob container should contain only the necessary custom setup files, so downloading them to your Azure-SSIS IR later won't take a long time. The maximum duration of a custom setup is currently set at 45 minutes before it times out. This includes the time to download all files from your blob container and install them on the Azure-SSIS IR. If setup requires more time, raise a support ticket.

    f. Right-click the blob container, and then select Get Shared Access Signature.

    g. Create the SAS URI for your blob container with a sufficiently long expiration time and with read/write/list permission. You need the SAS URI to download and run your custom setup script and its associated files. This happens whenever any node of your Azure-SSIS IR is reimaged or restarted. You also need write permission to upload setup execution logs.

    Important

    Ensure that the SAS URI doesn't expire and the custom setup resources are always available during the whole lifecycle of your Azure-SSIS IR, from creation to deletion, especially if you regularly stop and start your Azure-SSIS IR during this period.

    h. Copy and save the SAS URI of your blob container.

  3. Select the Customize your Azure-SSIS Integration Runtime with additional system configurations/component installations check box on the Advanced settings page of Integration runtime setup pane. Next, enter the SAS URI of your blob container in the Custom setup container SAS URI text box.

After your standard custom setup finishes and your Azure-SSIS IR starts, you can find all custom setup logs in the main.cmd.log folder of your blob container. They include the standard output of main.cmd and other execution logs.

Express custom setup

To provision or reconfigure your Azure-SSIS IR with express custom setups on ADF UI, complete the following steps.

  1. Select the Customize your Azure-SSIS Integration Runtime with additional system configurations/component installations check box on the Advanced settings page of Integration runtime setup pane.

  2. Select New to open the Add express custom setup pane, and then select a type in the Express custom setup type drop-down list. We currently offer express custom setups for running cmdkey command, adding environment variables, installing Azure PowerShell, and installing licensed components.

Running cmdkey command

If you select the Run cmdkey command type for your express custom setup, you can run the Windows cmdkey command on your Azure-SSIS IR. To do so, enter your targeted computer name or domain name, username or account name, and password or account key in the /Add, /User, and /Pass text boxes, respectively. This will allow you to persist access credentials for SQL Servers, file shares, or Azure Files on your Azure-SSIS IR. For example, to access Azure Files, you can enter YourAzureStorageAccountName.file.core.windows.net, azure\YourAzureStorageAccountName, and YourAzureStorageAccountKey for /Add, /User, and /Pass, respectively. This is similar to running the Windows cmdkey command on your local machine.

Adding environment variables

If you select the Add environment variable type for your express custom setup, you can add a Windows environment variable on your Azure-SSIS IR. To do so, enter your environment variable name and value in the Variable name and Variable value text boxes, respectively. This will allow you to use the environment variable in your packages that run on Azure-SSIS IR, for example in Script Components/Tasks. This is similar to running the Windows set command on your local machine.

Installing Azure PowerShell

If you select the Install Azure PowerShell type for your express custom setup, you can install the Az module of PowerShell on your Azure-SSIS IR. To do so, enter the Az module version number (x.y.z) you want from a list of supported ones. This will allow you to run Azure PowerShell cmdlets/scripts in your packages to manage Azure resources, for example Azure Analysis Services (AAS).

Installing licensed components

If you select the Install licensed component type for your express custom setup, you can then select an integrated component from our ISV partners in the Component name drop-down list:

Your added express custom setups will appear on the Advanced settings page. To remove them, select their check boxes, and then select Delete.

Azure PowerShell

To provision or reconfigure your Azure-SSIS IR with custom setups using Azure PowerShell, complete the following steps.

  1. If your Azure-SSIS IR is already started/running, stop it first.

  2. You can then add or remove custom setups by running the Set-AzDataFactoryV2IntegrationRuntime cmdlet before you start your Azure-SSIS IR.

    $ResourceGroupName = "[your Azure resource group name]"
    $DataFactoryName = "[your data factory name]"
    $AzureSSISName = "[your Azure-SSIS IR name]"
    # Custom setup info: Standard/express custom setups
    $SetupScriptContainerSasUri = "" # OPTIONAL to provide a SAS URI of blob container for standard custom setup where your script and its associated files are stored
    $ExpressCustomSetup = "[RunCmdkey|SetEnvironmentVariable|InstallAzurePowerShell|SentryOne.TaskFactory|oh22is.SQLPhonetics.NET|oh22is.HEDDA.IO|KingswaySoft.IntegrationToolkit|KingswaySoft.ProductivityPack|Theobald.XtractIS|AecorSoft.IntegrationService|CData.Standard|CData.Extended or leave it empty]" # OPTIONAL to configure an express custom setup without script
    
    # Add custom setup parameters if you use standard/express custom setups
    if(![string]::IsNullOrEmpty($SetupScriptContainerSasUri))
    {
        Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
            -DataFactoryName $DataFactoryName `
            -Name $AzureSSISName `
            -SetupScriptContainerSasUri $SetupScriptContainerSasUri
    }
    if(![string]::IsNullOrEmpty($ExpressCustomSetup))
    {
        if($ExpressCustomSetup -eq "RunCmdkey")
        {
            $addCmdkeyArgument = "YourFileShareServerName or YourAzureStorageAccountName.file.core.windows.net"
            $userCmdkeyArgument = "YourDomainName\YourUsername or azure\YourAzureStorageAccountName"
            $passCmdkeyArgument = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourPassword or YourAccessKey")
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.CmdkeySetup($addCmdkeyArgument, $userCmdkeyArgument, $passCmdkeyArgument)
        }
        if($ExpressCustomSetup -eq "SetEnvironmentVariable")
        {
            $variableName = "YourVariableName"
            $variableValue = "YourVariableValue"
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.EnvironmentVariableSetup($variableName, $variableValue)
        }
        if($ExpressCustomSetup -eq "InstallAzurePowerShell")
        {
            $moduleVersion = "YourAzModuleVersion"
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.AzPowerShellSetup($moduleVersion)
        }
        if($ExpressCustomSetup -eq "SentryOne.TaskFactory")
        {
            $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey")
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey)
        }
        if($ExpressCustomSetup -eq "oh22is.SQLPhonetics.NET")
        {
            $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey")
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey)
        }
        if($ExpressCustomSetup -eq "oh22is.HEDDA.IO")
        {
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup)
        }
        if($ExpressCustomSetup -eq "KingswaySoft.IntegrationToolkit")
        {
            $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey")
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey)
        }
        if($ExpressCustomSetup -eq "KingswaySoft.ProductivityPack")
        {
            $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey")
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey)
        }    
        if($ExpressCustomSetup -eq "Theobald.XtractIS")
        {
            $jsonData = Get-Content -Raw -Path YourLicenseFile.json
            $jsonData = $jsonData -replace '\s',''
            $jsonData = $jsonData.replace('"','\"')
            $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString($jsonData)
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey)
        }
        if($ExpressCustomSetup -eq "AecorSoft.IntegrationService")
        {
            $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey")
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey)
        }
        if($ExpressCustomSetup -eq "CData.Standard")
        {
            $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey")
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey)
        }
        if($ExpressCustomSetup -eq "CData.Extended")
        {
            $licenseKey = New-Object Microsoft.Azure.Management.DataFactory.Models.SecureString("YourLicenseKey")
            $setup = New-Object Microsoft.Azure.Management.DataFactory.Models.ComponentSetup($ExpressCustomSetup, $licenseKey)
        }    
        # Create an array of one or more express custom setups
        $setups = New-Object System.Collections.ArrayList
        $setups.Add($setup)
    
        Set-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
            -DataFactoryName $DataFactoryName `
            -Name $AzureSSISName `
            -ExpressCustomSetup $setups
    }
    Start-AzDataFactoryV2IntegrationRuntime -ResourceGroupName $ResourceGroupName `
        -DataFactoryName $DataFactoryName `
        -Name $AzureSSISName `
        -Force
    
Standard custom setup samples
  1. You can view and reuse some samples of standard custom setups:

    a. In this folder are the following items:

    b. Double-click the UserScenarios folder to find the following items:

    c. To reuse these standard custom setup samples, copy the content of selected folder to your blob container.

  2. When you provision or reconfigure your Azure-SSIS IR on ADF UI, select the Customize your Azure-SSIS Integration Runtime with additional system configurations/component installations check box on the Advanced settings page of Integration runtime setup pane. Next, enter the SAS URI of your blob container in the Custom setup container SAS URI text box.

  3. When you provision or reconfigure your Azure-SSIS IR using Azure PowerShell, stop it if it's already started/running, run the Set-AzDataFactoryV2IntegrationRuntime cmdlet with the SAS URI of your blob container as the value for SetupScriptContainerSasUri parameter, and then start your Azure-SSIS IR.

  4. After your standard custom setup finishes and your Azure-SSIS IR starts, you can find all custom setup logs in the main.cmd.log folder of your blob container. They include the standard output of main.cmd and other execution logs.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4