Microsoft.DataFactory factories/integrationRuntimes 2018-06-01

Bicep resource definition

The factories/integrationRuntimes resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataFactory/factories/integrationRuntimes resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.DataFactory/factories/integrationRuntimes@2018-06-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    description: 'string'
    type: 'string'
    // For remaining properties, see IntegrationRuntime objects
  }
}

LinkedIntegrationRuntimeType objects

Set the authorizationType property to specify the type of object.

For Key, use:

{
  authorizationType: 'Key'
  key: {
    type: 'string'
    value: 'string'
  }
}

For RBAC, use:

{
  authorizationType: 'RBAC'
  credential: {
    referenceName: 'string'
    type: 'string'
  }
  resourceId: 'string'
}

CustomSetupBase objects

Set the type property to specify the type of object.

For AzPowerShellSetup, use:

{
  type: 'AzPowerShellSetup'
  typeProperties: {
    version: 'string'
  }
}

For CmdkeySetup, use:

{
  type: 'CmdkeySetup'
  typeProperties: {
    password: {
      type: 'string'
      // For remaining properties, see SecretBase objects
    }
    targetName: any(...)
    userName: any(...)
  }
}

For ComponentSetup, use:

{
  type: 'ComponentSetup'
  typeProperties: {
    componentName: 'string'
    licenseKey: {
      type: 'string'
      // For remaining properties, see SecretBase objects
    }
  }
}

For EnvironmentVariableSetup, use:

{
  type: 'EnvironmentVariableSetup'
  typeProperties: {
    variableName: 'string'
    variableValue: 'string'
  }
}

SecretBase objects

Set the type property to specify the type of object.

For AzureKeyVaultSecret, use:

{
  secretName: any(...)
  secretVersion: any(...)
  store: {
    parameters: {
      {customized property}: any(...)
    }
    referenceName: 'string'
    type: 'string'
  }
  type: 'AzureKeyVaultSecret'
}

For SecureString, use:

{
  type: 'SecureString'
  value: 'string'
}

IntegrationRuntime objects

Set the type property to specify the type of object.

For Managed, use:

{
  managedVirtualNetwork: {
    referenceName: 'string'
    type: 'string'
  }
  type: 'Managed'
  typeProperties: {
    computeProperties: {
      copyComputeScaleProperties: {
        dataIntegrationUnit: int
        timeToLive: int
      }
      dataFlowProperties: {
        cleanup: bool
        computeType: 'string'
        coreCount: int
        customProperties: [
          {
            name: 'string'
            value: 'string'
          }
        ]
        timeToLive: int
      }
      location: 'string'
      maxParallelExecutionsPerNode: int
      nodeSize: 'string'
      numberOfNodes: int
      pipelineExternalComputeScaleProperties: {
        numberOfExternalNodes: int
        numberOfPipelineNodes: int
        timeToLive: int
      }
      vNetProperties: {
        publicIPs: [
          'string'
        ]
        subnet: 'string'
        subnetId: 'string'
        vNetId: 'string'
      }
    }
    customerVirtualNetwork: {
      subnetId: 'string'
    }
    ssisProperties: {
      catalogInfo: {
        catalogAdminPassword: {
          type: 'string'
          value: 'string'
        }
        catalogAdminUserName: 'string'
        catalogPricingTier: 'string'
        catalogServerEndpoint: 'string'
        dualStandbyPairName: 'string'
      }
      credential: {
        referenceName: 'string'
        type: 'string'
      }
      customSetupScriptProperties: {
        blobContainerUri: 'string'
        sasToken: {
          type: 'string'
          value: 'string'
        }
      }
      dataProxyProperties: {
        connectVia: {
          referenceName: 'string'
          type: 'string'
        }
        path: 'string'
        stagingLinkedService: {
          referenceName: 'string'
          type: 'string'
        }
      }
      edition: 'string'
      expressCustomSetupProperties: [
        {
          type: 'string'
          // For remaining properties, see CustomSetupBase objects
        }
      ]
      licenseType: 'string'
      packageStores: [
        {
          name: 'string'
          packageStoreLinkedService: {
            referenceName: 'string'
            type: 'string'
          }
        }
      ]
    }
  }
}

For SelfHosted, use:

{
  type: 'SelfHosted'
  typeProperties: {
    linkedInfo: {
      authorizationType: 'string'
      // For remaining properties, see LinkedIntegrationRuntimeType objects
    }
    selfContainedInteractiveAuthoringEnabled: bool
  }
}

Property Values

AzPowerShellSetup

Name Description Value
type The type of custom setup. 'AzPowerShellSetup' (required)
typeProperties Install Azure PowerShell type properties. AzPowerShellSetupTypeProperties (required)

AzPowerShellSetupTypeProperties

Name Description Value
version The required version of Azure PowerShell to install. string (required)

AzureKeyVaultSecretReference

Name Description Value
secretName The name of the secret in Azure Key Vault. Type: string (or Expression with resultType string). any (required)
secretVersion The version of the secret in Azure Key Vault. The default value is the latest version of the secret. Type: string (or Expression with resultType string). any
store The Azure Key Vault linked service reference. LinkedServiceReference (required)
type Type of the secret. 'AzureKeyVaultSecret' (required)

CmdkeySetup

Name Description Value
type The type of custom setup. 'CmdkeySetup' (required)
typeProperties Cmdkey command custom setup type properties. CmdkeySetupTypeProperties (required)

CmdkeySetupTypeProperties

Name Description Value
password The password of data source access. SecretBase (required)
targetName The server name of data source access. Type: string. any (required)
userName The user name of data source access. Type: string. any (required)

ComponentSetup

Name Description Value
type The type of custom setup. 'ComponentSetup' (required)
typeProperties Install 3rd party component type properties. LicensedComponentSetupTypeProperties (required)

CopyComputeScaleProperties

Name Description Value
dataIntegrationUnit DIU number setting reserved for copy activity execution. Supported values are multiples of 4 in range 4-256. int

Constraints:
Min value = 4
timeToLive Time to live (in minutes) setting of integration runtime which will execute copy activity. int

Constraints:
Min value = 5

CredentialReference

Name Description Value
referenceName Reference credential name. string (required)
type Credential reference type. 'CredentialReference' (required)

CustomSetupBase

Name Description Value
type Set to 'AzPowerShellSetup' for type AzPowerShellSetup. Set to 'CmdkeySetup' for type CmdkeySetup. Set to 'ComponentSetup' for type ComponentSetup. Set to 'EnvironmentVariableSetup' for type EnvironmentVariableSetup. 'AzPowerShellSetup'
'CmdkeySetup'
'ComponentSetup'
'EnvironmentVariableSetup' (required)

EntityReference

Name Description Value
referenceName The name of this referenced entity. string
type The type of this referenced entity. 'IntegrationRuntimeReference'
'LinkedServiceReference'

EnvironmentVariableSetup

Name Description Value
type The type of custom setup. 'EnvironmentVariableSetup' (required)
typeProperties Add environment variable type properties. EnvironmentVariableSetupTypeProperties (required)

EnvironmentVariableSetupTypeProperties

Name Description Value
variableName The name of the environment variable. string (required)
variableValue The value of the environment variable. string (required)

IntegrationRuntime

Name Description Value
description Integration runtime description. string
type Set to 'Managed' for type ManagedIntegrationRuntime. Set to 'SelfHosted' for type SelfHostedIntegrationRuntime. 'Managed'
'SelfHosted' (required)

IntegrationRuntimeComputeProperties

Name Description Value
copyComputeScaleProperties CopyComputeScale properties for managed integration runtime. CopyComputeScaleProperties
dataFlowProperties Data flow properties for managed integration runtime. IntegrationRuntimeDataFlowProperties
location The location for managed integration runtime. The supported regions could be found on /azure/data-factory/data-factory-data-movement-activities string
maxParallelExecutionsPerNode Maximum parallel executions count per node for managed integration runtime. int

Constraints:
Min value = 1
nodeSize The node size requirement to managed integration runtime. string
numberOfNodes The required number of nodes for managed integration runtime. int

Constraints:
Min value = 1
pipelineExternalComputeScaleProperties PipelineExternalComputeScale properties for managed integration runtime. PipelineExternalComputeScaleProperties
vNetProperties VNet properties for managed integration runtime. IntegrationRuntimeVNetProperties

IntegrationRuntimeCustomerVirtualNetwork

Name Description Value
subnetId The ID of subnet to which Azure-SSIS integration runtime will join. string

IntegrationRuntimeCustomSetupScriptProperties

Name Description Value
blobContainerUri The URI of the Azure blob container that contains the custom setup script. string
sasToken The SAS token of the Azure blob container. SecureString

IntegrationRuntimeDataFlowProperties

Name Description Value
cleanup Cluster will not be recycled and it will be used in next data flow activity run until TTL (time to live) is reached if this is set as false. Default is true. bool
computeType Compute type of the cluster which will execute data flow job. 'ComputeOptimized'
'General'
'MemoryOptimized'
coreCount Core count of the cluster which will execute data flow job. Supported values are: 8, 16, 32, 48, 80, 144 and 272. int
customProperties Custom properties are used to tune the data flow runtime performance. IntegrationRuntimeDataFlowPropertiesCustomPropertiesItem[]
timeToLive Time to live (in minutes) setting of the cluster which will execute data flow job. int

Constraints:
Min value = 0

IntegrationRuntimeDataFlowPropertiesCustomPropertiesItem

Name Description Value
name Name of custom property. string
value Value of custom property. string

IntegrationRuntimeDataProxyProperties

Name Description Value
connectVia The self-hosted integration runtime reference. EntityReference
path The path to contain the staged data in the Blob storage. string
stagingLinkedService The staging linked service reference. EntityReference

IntegrationRuntimeSsisCatalogInfo

Name Description Value
catalogAdminPassword The password of the administrator user account of the catalog database. SecureString
catalogAdminUserName The administrator user name of catalog database. string

Constraints:
Min length = 1
Max length = 128
catalogPricingTier The pricing tier for the catalog database. The valid values could be found in https://azure.microsoft.com/en-us/pricing/details/sql-database/ 'Basic'
'Premium'
'PremiumRS'
'Standard'
catalogServerEndpoint The catalog database server URL. string
dualStandbyPairName The dual standby pair name of Azure-SSIS Integration Runtimes to support SSISDB failover. string

IntegrationRuntimeSsisProperties

Name Description Value
catalogInfo Catalog information for managed dedicated integration runtime. IntegrationRuntimeSsisCatalogInfo
credential The credential reference containing authentication information. CredentialReference
customSetupScriptProperties Custom setup script properties for a managed dedicated integration runtime. IntegrationRuntimeCustomSetupScriptProperties
dataProxyProperties Data proxy properties for a managed dedicated integration runtime. IntegrationRuntimeDataProxyProperties
edition The edition for the SSIS Integration Runtime 'Enterprise'
'Standard'
expressCustomSetupProperties Custom setup without script properties for a SSIS integration runtime. CustomSetupBase[]
licenseType License type for bringing your own license scenario. 'BasePrice'
'LicenseIncluded'
packageStores Package stores for the SSIS Integration Runtime. PackageStore[]

IntegrationRuntimeVNetProperties

Name Description Value
publicIPs Resource IDs of the public IP addresses that this integration runtime will use. string[]
subnet The name of the subnet this integration runtime will join. string
subnetId The ID of subnet, to which this Azure-SSIS integration runtime will be joined. string
vNetId The ID of the VNet that this integration runtime will join. string

LicensedComponentSetupTypeProperties

Name Description Value
componentName The name of the 3rd party component. string (required)
licenseKey The license key to activate the component. SecretBase

LinkedIntegrationRuntimeKeyAuthorization

Name Description Value
authorizationType The authorization type for integration runtime sharing. 'Key' (required)
key The key used for authorization. SecureString (required)

LinkedIntegrationRuntimeRbacAuthorization

Name Description Value
authorizationType The authorization type for integration runtime sharing. 'RBAC' (required)
credential The credential reference containing authentication information. CredentialReference
resourceId The resource identifier of the integration runtime to be shared. string (required)

LinkedIntegrationRuntimeType

Name Description Value
authorizationType Set to 'Key' for type LinkedIntegrationRuntimeKeyAuthorization. Set to 'RBAC' for type LinkedIntegrationRuntimeRbacAuthorization. 'Key'
'RBAC' (required)

LinkedServiceReference

Name Description Value
parameters Arguments for LinkedService. ParameterValueSpecification
referenceName Reference LinkedService name. string (required)
type Linked service reference type. 'LinkedServiceReference' (required)

ManagedIntegrationRuntime

Name Description Value
managedVirtualNetwork Managed Virtual Network reference. ManagedVirtualNetworkReference
type Type of integration runtime. 'Managed' (required)
typeProperties Managed integration runtime properties. ManagedIntegrationRuntimeTypeProperties (required)

ManagedIntegrationRuntimeTypeProperties

Name Description Value
computeProperties The compute resource for managed integration runtime. IntegrationRuntimeComputeProperties
customerVirtualNetwork The name of virtual network to which Azure-SSIS integration runtime will join IntegrationRuntimeCustomerVirtualNetwork
ssisProperties SSIS properties for managed integration runtime. IntegrationRuntimeSsisProperties

ManagedVirtualNetworkReference

Name Description Value
referenceName Reference ManagedVirtualNetwork name. string (required)
type Managed Virtual Network reference type. 'ManagedVirtualNetworkReference' (required)

Microsoft.DataFactory/factories/integrationRuntimes

Name Description Value
name The resource name string

Constraints:
Min length = 3
Max length = 63
Pattern = ^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$ (required)
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: factories
properties Integration runtime properties. IntegrationRuntime (required)

PackageStore

Name Description Value
name The name of the package store string (required)
packageStoreLinkedService The package store linked service reference. EntityReference (required)

ParameterValueSpecification

Name Description Value

PipelineExternalComputeScaleProperties

Name Description Value
numberOfExternalNodes Number of the the external nodes, which should be greater than 0 and less than 11. int

Constraints:
Min value = 1
Max value = 10
numberOfPipelineNodes Number of the pipeline nodes, which should be greater than 0 and less than 11. int

Constraints:
Min value = 1
Max value = 10
timeToLive Time to live (in minutes) setting of integration runtime which will execute pipeline and external activity. int

Constraints:
Min value = 5

SecretBase

Name Description Value
type Set to 'AzureKeyVaultSecret' for type AzureKeyVaultSecretReference. Set to 'SecureString' for type SecureString. 'AzureKeyVaultSecret'
'SecureString' (required)

SecureString

Name Description Value
type Type of the secret. string (required)
value Value of secure string. string (required)

SecureString

Name Description Value
type Type of the secret. 'SecureString' (required)
value Value of secure string. string (required)

SelfHostedIntegrationRuntime

Name Description Value
type Type of integration runtime. 'SelfHosted' (required)
typeProperties When this property is not null, means this is a linked integration runtime. The property is used to access original integration runtime. SelfHostedIntegrationRuntimeTypeProperties

SelfHostedIntegrationRuntimeTypeProperties

Name Description Value
linkedInfo The base definition of a linked integration runtime. LinkedIntegrationRuntimeType
selfContainedInteractiveAuthoringEnabled An alternative option to ensure interactive authoring function when your self-hosted integration runtime is unable to establish a connection with Azure Relay. bool

Usage Examples

Azure Quickstart Samples

The following Azure Quickstart templates contain Bicep samples for deploying this resource type.

Bicep File Description
Azure Data Factory with Git and managed vnet configuration This template creates Azure Data Factory with Git configuration and managed virtual network.
Self-host Integration Runtime on Azure VMs This template creates a selfhost integration runtime and registers it on Azure virtual machines

ARM template resource definition

The factories/integrationRuntimes resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataFactory/factories/integrationRuntimes resource, add the following JSON to your template.

{
  "type": "Microsoft.DataFactory/factories/integrationRuntimes",
  "apiVersion": "2018-06-01",
  "name": "string",
  "properties": {
    "description": "string",
    "type": "string"
    // For remaining properties, see IntegrationRuntime objects
  }
}

LinkedIntegrationRuntimeType objects

Set the authorizationType property to specify the type of object.

For Key, use:

{
  "authorizationType": "Key",
  "key": {
    "type": "string",
    "value": "string"
  }
}

For RBAC, use:

{
  "authorizationType": "RBAC",
  "credential": {
    "referenceName": "string",
    "type": "string"
  },
  "resourceId": "string"
}

CustomSetupBase objects

Set the type property to specify the type of object.

For AzPowerShellSetup, use:

{
  "type": "AzPowerShellSetup",
  "typeProperties": {
    "version": "string"
  }
}

For CmdkeySetup, use:

{
  "type": "CmdkeySetup",
  "typeProperties": {
    "password": {
      "type": "string"
      // For remaining properties, see SecretBase objects
    },
    "targetName": {},
    "userName": {}
  }
}

For ComponentSetup, use:

{
  "type": "ComponentSetup",
  "typeProperties": {
    "componentName": "string",
    "licenseKey": {
      "type": "string"
      // For remaining properties, see SecretBase objects
    }
  }
}

For EnvironmentVariableSetup, use:

{
  "type": "EnvironmentVariableSetup",
  "typeProperties": {
    "variableName": "string",
    "variableValue": "string"
  }
}

SecretBase objects

Set the type property to specify the type of object.

For AzureKeyVaultSecret, use:

{
  "secretName": {},
  "secretVersion": {},
  "store": {
    "parameters": {
      "{customized property}": {}
    },
    "referenceName": "string",
    "type": "string"
  },
  "type": "AzureKeyVaultSecret"
}

For SecureString, use:

{
  "type": "SecureString",
  "value": "string"
}

IntegrationRuntime objects

Set the type property to specify the type of object.

For Managed, use:

{
  "managedVirtualNetwork": {
    "referenceName": "string",
    "type": "string"
  },
  "type": "Managed",
  "typeProperties": {
    "computeProperties": {
      "copyComputeScaleProperties": {
        "dataIntegrationUnit": "int",
        "timeToLive": "int"
      },
      "dataFlowProperties": {
        "cleanup": "bool",
        "computeType": "string",
        "coreCount": "int",
        "customProperties": [
          {
            "name": "string",
            "value": "string"
          }
        ],
        "timeToLive": "int"
      },
      "location": "string",
      "maxParallelExecutionsPerNode": "int",
      "nodeSize": "string",
      "numberOfNodes": "int",
      "pipelineExternalComputeScaleProperties": {
        "numberOfExternalNodes": "int",
        "numberOfPipelineNodes": "int",
        "timeToLive": "int"
      },
      "vNetProperties": {
        "publicIPs": [ "string" ],
        "subnet": "string",
        "subnetId": "string",
        "vNetId": "string"
      }
    },
    "customerVirtualNetwork": {
      "subnetId": "string"
    },
    "ssisProperties": {
      "catalogInfo": {
        "catalogAdminPassword": {
          "type": "string",
          "value": "string"
        },
        "catalogAdminUserName": "string",
        "catalogPricingTier": "string",
        "catalogServerEndpoint": "string",
        "dualStandbyPairName": "string"
      },
      "credential": {
        "referenceName": "string",
        "type": "string"
      },
      "customSetupScriptProperties": {
        "blobContainerUri": "string",
        "sasToken": {
          "type": "string",
          "value": "string"
        }
      },
      "dataProxyProperties": {
        "connectVia": {
          "referenceName": "string",
          "type": "string"
        },
        "path": "string",
        "stagingLinkedService": {
          "referenceName": "string",
          "type": "string"
        }
      },
      "edition": "string",
      "expressCustomSetupProperties": [ {
        "type": "string"
        // For remaining properties, see CustomSetupBase objects
      } ],
      "licenseType": "string",
      "packageStores": [
        {
          "name": "string",
          "packageStoreLinkedService": {
            "referenceName": "string",
            "type": "string"
          }
        }
      ]
    }
  }
}

For SelfHosted, use:

{
  "type": "SelfHosted",
  "typeProperties": {
    "linkedInfo": {
      "authorizationType": "string"
      // For remaining properties, see LinkedIntegrationRuntimeType objects
    },
    "selfContainedInteractiveAuthoringEnabled": "bool"
  }
}

Property Values

AzPowerShellSetup

Name Description Value
type The type of custom setup. 'AzPowerShellSetup' (required)
typeProperties Install Azure PowerShell type properties. AzPowerShellSetupTypeProperties (required)

AzPowerShellSetupTypeProperties

Name Description Value
version The required version of Azure PowerShell to install. string (required)

AzureKeyVaultSecretReference

Name Description Value
secretName The name of the secret in Azure Key Vault. Type: string (or Expression with resultType string). any (required)
secretVersion The version of the secret in Azure Key Vault. The default value is the latest version of the secret. Type: string (or Expression with resultType string). any
store The Azure Key Vault linked service reference. LinkedServiceReference (required)
type Type of the secret. 'AzureKeyVaultSecret' (required)

CmdkeySetup

Name Description Value
type The type of custom setup. 'CmdkeySetup' (required)
typeProperties Cmdkey command custom setup type properties. CmdkeySetupTypeProperties (required)

CmdkeySetupTypeProperties

Name Description Value
password The password of data source access. SecretBase (required)
targetName The server name of data source access. Type: string. any (required)
userName The user name of data source access. Type: string. any (required)

ComponentSetup

Name Description Value
type The type of custom setup. 'ComponentSetup' (required)
typeProperties Install 3rd party component type properties. LicensedComponentSetupTypeProperties (required)

CopyComputeScaleProperties

Name Description Value
dataIntegrationUnit DIU number setting reserved for copy activity execution. Supported values are multiples of 4 in range 4-256. int

Constraints:
Min value = 4
timeToLive Time to live (in minutes) setting of integration runtime which will execute copy activity. int

Constraints:
Min value = 5

CredentialReference

Name Description Value
referenceName Reference credential name. string (required)
type Credential reference type. 'CredentialReference' (required)

CustomSetupBase

Name Description Value
type Set to 'AzPowerShellSetup' for type AzPowerShellSetup. Set to 'CmdkeySetup' for type CmdkeySetup. Set to 'ComponentSetup' for type ComponentSetup. Set to 'EnvironmentVariableSetup' for type EnvironmentVariableSetup. 'AzPowerShellSetup'
'CmdkeySetup'
'ComponentSetup'
'EnvironmentVariableSetup' (required)

EntityReference

Name Description Value
referenceName The name of this referenced entity. string
type The type of this referenced entity. 'IntegrationRuntimeReference'
'LinkedServiceReference'

EnvironmentVariableSetup

Name Description Value
type The type of custom setup. 'EnvironmentVariableSetup' (required)
typeProperties Add environment variable type properties. EnvironmentVariableSetupTypeProperties (required)

EnvironmentVariableSetupTypeProperties

Name Description Value
variableName The name of the environment variable. string (required)
variableValue The value of the environment variable. string (required)

IntegrationRuntime

Name Description Value
description Integration runtime description. string
type Set to 'Managed' for type ManagedIntegrationRuntime. Set to 'SelfHosted' for type SelfHostedIntegrationRuntime. 'Managed'
'SelfHosted' (required)

IntegrationRuntimeComputeProperties

Name Description Value
copyComputeScaleProperties CopyComputeScale properties for managed integration runtime. CopyComputeScaleProperties
dataFlowProperties Data flow properties for managed integration runtime. IntegrationRuntimeDataFlowProperties
location The location for managed integration runtime. The supported regions could be found on /azure/data-factory/data-factory-data-movement-activities string
maxParallelExecutionsPerNode Maximum parallel executions count per node for managed integration runtime. int

Constraints:
Min value = 1
nodeSize The node size requirement to managed integration runtime. string
numberOfNodes The required number of nodes for managed integration runtime. int

Constraints:
Min value = 1
pipelineExternalComputeScaleProperties PipelineExternalComputeScale properties for managed integration runtime. PipelineExternalComputeScaleProperties
vNetProperties VNet properties for managed integration runtime. IntegrationRuntimeVNetProperties

IntegrationRuntimeCustomerVirtualNetwork

Name Description Value
subnetId The ID of subnet to which Azure-SSIS integration runtime will join. string

IntegrationRuntimeCustomSetupScriptProperties

Name Description Value
blobContainerUri The URI of the Azure blob container that contains the custom setup script. string
sasToken The SAS token of the Azure blob container. SecureString

IntegrationRuntimeDataFlowProperties

Name Description Value
cleanup Cluster will not be recycled and it will be used in next data flow activity run until TTL (time to live) is reached if this is set as false. Default is true. bool
computeType Compute type of the cluster which will execute data flow job. 'ComputeOptimized'
'General'
'MemoryOptimized'
coreCount Core count of the cluster which will execute data flow job. Supported values are: 8, 16, 32, 48, 80, 144 and 272. int
customProperties Custom properties are used to tune the data flow runtime performance. IntegrationRuntimeDataFlowPropertiesCustomPropertiesItem[]
timeToLive Time to live (in minutes) setting of the cluster which will execute data flow job. int

Constraints:
Min value = 0

IntegrationRuntimeDataFlowPropertiesCustomPropertiesItem

Name Description Value
name Name of custom property. string
value Value of custom property. string

IntegrationRuntimeDataProxyProperties

Name Description Value
connectVia The self-hosted integration runtime reference. EntityReference
path The path to contain the staged data in the Blob storage. string
stagingLinkedService The staging linked service reference. EntityReference

IntegrationRuntimeSsisCatalogInfo

Name Description Value
catalogAdminPassword The password of the administrator user account of the catalog database. SecureString
catalogAdminUserName The administrator user name of catalog database. string

Constraints:
Min length = 1
Max length = 128
catalogPricingTier The pricing tier for the catalog database. The valid values could be found in https://azure.microsoft.com/en-us/pricing/details/sql-database/ 'Basic'
'Premium'
'PremiumRS'
'Standard'
catalogServerEndpoint The catalog database server URL. string
dualStandbyPairName The dual standby pair name of Azure-SSIS Integration Runtimes to support SSISDB failover. string

IntegrationRuntimeSsisProperties

Name Description Value
catalogInfo Catalog information for managed dedicated integration runtime. IntegrationRuntimeSsisCatalogInfo
credential The credential reference containing authentication information. CredentialReference
customSetupScriptProperties Custom setup script properties for a managed dedicated integration runtime. IntegrationRuntimeCustomSetupScriptProperties
dataProxyProperties Data proxy properties for a managed dedicated integration runtime. IntegrationRuntimeDataProxyProperties
edition The edition for the SSIS Integration Runtime 'Enterprise'
'Standard'
expressCustomSetupProperties Custom setup without script properties for a SSIS integration runtime. CustomSetupBase[]
licenseType License type for bringing your own license scenario. 'BasePrice'
'LicenseIncluded'
packageStores Package stores for the SSIS Integration Runtime. PackageStore[]

IntegrationRuntimeVNetProperties

Name Description Value
publicIPs Resource IDs of the public IP addresses that this integration runtime will use. string[]
subnet The name of the subnet this integration runtime will join. string
subnetId The ID of subnet, to which this Azure-SSIS integration runtime will be joined. string
vNetId The ID of the VNet that this integration runtime will join. string

LicensedComponentSetupTypeProperties

Name Description Value
componentName The name of the 3rd party component. string (required)
licenseKey The license key to activate the component. SecretBase

LinkedIntegrationRuntimeKeyAuthorization

Name Description Value
authorizationType The authorization type for integration runtime sharing. 'Key' (required)
key The key used for authorization. SecureString (required)

LinkedIntegrationRuntimeRbacAuthorization

Name Description Value
authorizationType The authorization type for integration runtime sharing. 'RBAC' (required)
credential The credential reference containing authentication information. CredentialReference
resourceId The resource identifier of the integration runtime to be shared. string (required)

LinkedIntegrationRuntimeType

Name Description Value
authorizationType Set to 'Key' for type LinkedIntegrationRuntimeKeyAuthorization. Set to 'RBAC' for type LinkedIntegrationRuntimeRbacAuthorization. 'Key'
'RBAC' (required)

LinkedServiceReference

Name Description Value
parameters Arguments for LinkedService. ParameterValueSpecification
referenceName Reference LinkedService name. string (required)
type Linked service reference type. 'LinkedServiceReference' (required)

ManagedIntegrationRuntime

Name Description Value
managedVirtualNetwork Managed Virtual Network reference. ManagedVirtualNetworkReference
type Type of integration runtime. 'Managed' (required)
typeProperties Managed integration runtime properties. ManagedIntegrationRuntimeTypeProperties (required)

ManagedIntegrationRuntimeTypeProperties

Name Description Value
computeProperties The compute resource for managed integration runtime. IntegrationRuntimeComputeProperties
customerVirtualNetwork The name of virtual network to which Azure-SSIS integration runtime will join IntegrationRuntimeCustomerVirtualNetwork
ssisProperties SSIS properties for managed integration runtime. IntegrationRuntimeSsisProperties

ManagedVirtualNetworkReference

Name Description Value
referenceName Reference ManagedVirtualNetwork name. string (required)
type Managed Virtual Network reference type. 'ManagedVirtualNetworkReference' (required)

Microsoft.DataFactory/factories/integrationRuntimes

Name Description Value
apiVersion The api version '2018-06-01'
name The resource name string

Constraints:
Min length = 3
Max length = 63
Pattern = ^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$ (required)
properties Integration runtime properties. IntegrationRuntime (required)
type The resource type 'Microsoft.DataFactory/factories/integrationRuntimes'

PackageStore

Name Description Value
name The name of the package store string (required)
packageStoreLinkedService The package store linked service reference. EntityReference (required)

ParameterValueSpecification

Name Description Value

PipelineExternalComputeScaleProperties

Name Description Value
numberOfExternalNodes Number of the the external nodes, which should be greater than 0 and less than 11. int

Constraints:
Min value = 1
Max value = 10
numberOfPipelineNodes Number of the pipeline nodes, which should be greater than 0 and less than 11. int

Constraints:
Min value = 1
Max value = 10
timeToLive Time to live (in minutes) setting of integration runtime which will execute pipeline and external activity. int

Constraints:
Min value = 5

SecretBase

Name Description Value
type Set to 'AzureKeyVaultSecret' for type AzureKeyVaultSecretReference. Set to 'SecureString' for type SecureString. 'AzureKeyVaultSecret'
'SecureString' (required)

SecureString

Name Description Value
type Type of the secret. string (required)
value Value of secure string. string (required)

SecureString

Name Description Value
type Type of the secret. 'SecureString' (required)
value Value of secure string. string (required)

SelfHostedIntegrationRuntime

Name Description Value
type Type of integration runtime. 'SelfHosted' (required)
typeProperties When this property is not null, means this is a linked integration runtime. The property is used to access original integration runtime. SelfHostedIntegrationRuntimeTypeProperties

SelfHostedIntegrationRuntimeTypeProperties

Name Description Value
linkedInfo The base definition of a linked integration runtime. LinkedIntegrationRuntimeType
selfContainedInteractiveAuthoringEnabled An alternative option to ensure interactive authoring function when your self-hosted integration runtime is unable to establish a connection with Azure Relay. bool

Usage Examples

Azure Quickstart Templates

The following Azure Quickstart templates deploy this resource type.

Template Description
Azure Data Factory with Git and managed vnet configuration

Deploy to Azure
This template creates Azure Data Factory with Git configuration and managed virtual network.
Self-host Integration Runtime on Azure VMs

Deploy to Azure
This template creates a selfhost integration runtime and registers it on Azure virtual machines

Terraform (AzAPI provider) resource definition

The factories/integrationRuntimes resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DataFactory/factories/integrationRuntimes resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DataFactory/factories/integrationRuntimes@2018-06-01"
  name = "string"
  body = {
    properties = {
      description = "string"
      type = "string"
      // For remaining properties, see IntegrationRuntime objects
    }
  }
}

LinkedIntegrationRuntimeType objects

Set the authorizationType property to specify the type of object.

For Key, use:

{
  authorizationType = "Key"
  key = {
    type = "string"
    value = "string"
  }
}

For RBAC, use:

{
  authorizationType = "RBAC"
  credential = {
    referenceName = "string"
    type = "string"
  }
  resourceId = "string"
}

CustomSetupBase objects

Set the type property to specify the type of object.

For AzPowerShellSetup, use:

{
  type = "AzPowerShellSetup"
  typeProperties = {
    version = "string"
  }
}

For CmdkeySetup, use:

{
  type = "CmdkeySetup"
  typeProperties = {
    password = {
      type = "string"
      // For remaining properties, see SecretBase objects
    }
    targetName = ?
    userName = ?
  }
}

For ComponentSetup, use:

{
  type = "ComponentSetup"
  typeProperties = {
    componentName = "string"
    licenseKey = {
      type = "string"
      // For remaining properties, see SecretBase objects
    }
  }
}

For EnvironmentVariableSetup, use:

{
  type = "EnvironmentVariableSetup"
  typeProperties = {
    variableName = "string"
    variableValue = "string"
  }
}

SecretBase objects

Set the type property to specify the type of object.

For AzureKeyVaultSecret, use:

{
  secretName = ?
  secretVersion = ?
  store = {
    parameters = {
      {customized property} = ?
    }
    referenceName = "string"
    type = "string"
  }
  type = "AzureKeyVaultSecret"
}

For SecureString, use:

{
  type = "SecureString"
  value = "string"
}

IntegrationRuntime objects

Set the type property to specify the type of object.

For Managed, use:

{
  managedVirtualNetwork = {
    referenceName = "string"
    type = "string"
  }
  type = "Managed"
  typeProperties = {
    computeProperties = {
      copyComputeScaleProperties = {
        dataIntegrationUnit = int
        timeToLive = int
      }
      dataFlowProperties = {
        cleanup = bool
        computeType = "string"
        coreCount = int
        customProperties = [
          {
            name = "string"
            value = "string"
          }
        ]
        timeToLive = int
      }
      location = "string"
      maxParallelExecutionsPerNode = int
      nodeSize = "string"
      numberOfNodes = int
      pipelineExternalComputeScaleProperties = {
        numberOfExternalNodes = int
        numberOfPipelineNodes = int
        timeToLive = int
      }
      vNetProperties = {
        publicIPs = [
          "string"
        ]
        subnet = "string"
        subnetId = "string"
        vNetId = "string"
      }
    }
    customerVirtualNetwork = {
      subnetId = "string"
    }
    ssisProperties = {
      catalogInfo = {
        catalogAdminPassword = {
          type = "string"
          value = "string"
        }
        catalogAdminUserName = "string"
        catalogPricingTier = "string"
        catalogServerEndpoint = "string"
        dualStandbyPairName = "string"
      }
      credential = {
        referenceName = "string"
        type = "string"
      }
      customSetupScriptProperties = {
        blobContainerUri = "string"
        sasToken = {
          type = "string"
          value = "string"
        }
      }
      dataProxyProperties = {
        connectVia = {
          referenceName = "string"
          type = "string"
        }
        path = "string"
        stagingLinkedService = {
          referenceName = "string"
          type = "string"
        }
      }
      edition = "string"
      expressCustomSetupProperties = [
        {
          type = "string"
          // For remaining properties, see CustomSetupBase objects
        }
      ]
      licenseType = "string"
      packageStores = [
        {
          name = "string"
          packageStoreLinkedService = {
            referenceName = "string"
            type = "string"
          }
        }
      ]
    }
  }
}

For SelfHosted, use:

{
  type = "SelfHosted"
  typeProperties = {
    linkedInfo = {
      authorizationType = "string"
      // For remaining properties, see LinkedIntegrationRuntimeType objects
    }
    selfContainedInteractiveAuthoringEnabled = bool
  }
}

Property Values

AzPowerShellSetup

Name Description Value
type The type of custom setup. 'AzPowerShellSetup' (required)
typeProperties Install Azure PowerShell type properties. AzPowerShellSetupTypeProperties (required)

AzPowerShellSetupTypeProperties

Name Description Value
version The required version of Azure PowerShell to install. string (required)

AzureKeyVaultSecretReference

Name Description Value
secretName The name of the secret in Azure Key Vault. Type: string (or Expression with resultType string). any (required)
secretVersion The version of the secret in Azure Key Vault. The default value is the latest version of the secret. Type: string (or Expression with resultType string). any
store The Azure Key Vault linked service reference. LinkedServiceReference (required)
type Type of the secret. 'AzureKeyVaultSecret' (required)

CmdkeySetup

Name Description Value
type The type of custom setup. 'CmdkeySetup' (required)
typeProperties Cmdkey command custom setup type properties. CmdkeySetupTypeProperties (required)

CmdkeySetupTypeProperties

Name Description Value
password The password of data source access. SecretBase (required)
targetName The server name of data source access. Type: string. any (required)
userName The user name of data source access. Type: string. any (required)

ComponentSetup

Name Description Value
type The type of custom setup. 'ComponentSetup' (required)
typeProperties Install 3rd party component type properties. LicensedComponentSetupTypeProperties (required)

CopyComputeScaleProperties

Name Description Value
dataIntegrationUnit DIU number setting reserved for copy activity execution. Supported values are multiples of 4 in range 4-256. int

Constraints:
Min value = 4
timeToLive Time to live (in minutes) setting of integration runtime which will execute copy activity. int

Constraints:
Min value = 5

CredentialReference

Name Description Value
referenceName Reference credential name. string (required)
type Credential reference type. 'CredentialReference' (required)

CustomSetupBase

Name Description Value
type Set to 'AzPowerShellSetup' for type AzPowerShellSetup. Set to 'CmdkeySetup' for type CmdkeySetup. Set to 'ComponentSetup' for type ComponentSetup. Set to 'EnvironmentVariableSetup' for type EnvironmentVariableSetup. 'AzPowerShellSetup'
'CmdkeySetup'
'ComponentSetup'
'EnvironmentVariableSetup' (required)

EntityReference

Name Description Value
referenceName The name of this referenced entity. string
type The type of this referenced entity. 'IntegrationRuntimeReference'
'LinkedServiceReference'

EnvironmentVariableSetup

Name Description Value
type The type of custom setup. 'EnvironmentVariableSetup' (required)
typeProperties Add environment variable type properties. EnvironmentVariableSetupTypeProperties (required)

EnvironmentVariableSetupTypeProperties

Name Description Value
variableName The name of the environment variable. string (required)
variableValue The value of the environment variable. string (required)

IntegrationRuntime

Name Description Value
description Integration runtime description. string
type Set to 'Managed' for type ManagedIntegrationRuntime. Set to 'SelfHosted' for type SelfHostedIntegrationRuntime. 'Managed'
'SelfHosted' (required)

IntegrationRuntimeComputeProperties

Name Description Value
copyComputeScaleProperties CopyComputeScale properties for managed integration runtime. CopyComputeScaleProperties
dataFlowProperties Data flow properties for managed integration runtime. IntegrationRuntimeDataFlowProperties
location The location for managed integration runtime. The supported regions could be found on /azure/data-factory/data-factory-data-movement-activities string
maxParallelExecutionsPerNode Maximum parallel executions count per node for managed integration runtime. int

Constraints:
Min value = 1
nodeSize The node size requirement to managed integration runtime. string
numberOfNodes The required number of nodes for managed integration runtime. int

Constraints:
Min value = 1
pipelineExternalComputeScaleProperties PipelineExternalComputeScale properties for managed integration runtime. PipelineExternalComputeScaleProperties
vNetProperties VNet properties for managed integration runtime. IntegrationRuntimeVNetProperties

IntegrationRuntimeCustomerVirtualNetwork

Name Description Value
subnetId The ID of subnet to which Azure-SSIS integration runtime will join. string

IntegrationRuntimeCustomSetupScriptProperties

Name Description Value
blobContainerUri The URI of the Azure blob container that contains the custom setup script. string
sasToken The SAS token of the Azure blob container. SecureString

IntegrationRuntimeDataFlowProperties

Name Description Value
cleanup Cluster will not be recycled and it will be used in next data flow activity run until TTL (time to live) is reached if this is set as false. Default is true. bool
computeType Compute type of the cluster which will execute data flow job. 'ComputeOptimized'
'General'
'MemoryOptimized'
coreCount Core count of the cluster which will execute data flow job. Supported values are: 8, 16, 32, 48, 80, 144 and 272. int
customProperties Custom properties are used to tune the data flow runtime performance. IntegrationRuntimeDataFlowPropertiesCustomPropertiesItem[]
timeToLive Time to live (in minutes) setting of the cluster which will execute data flow job. int

Constraints:
Min value = 0

IntegrationRuntimeDataFlowPropertiesCustomPropertiesItem

Name Description Value
name Name of custom property. string
value Value of custom property. string

IntegrationRuntimeDataProxyProperties

Name Description Value
connectVia The self-hosted integration runtime reference. EntityReference
path The path to contain the staged data in the Blob storage. string
stagingLinkedService The staging linked service reference. EntityReference

IntegrationRuntimeSsisCatalogInfo

Name Description Value
catalogAdminPassword The password of the administrator user account of the catalog database. SecureString
catalogAdminUserName The administrator user name of catalog database. string

Constraints:
Min length = 1
Max length = 128
catalogPricingTier The pricing tier for the catalog database. The valid values could be found in https://azure.microsoft.com/en-us/pricing/details/sql-database/ 'Basic'
'Premium'
'PremiumRS'
'Standard'
catalogServerEndpoint The catalog database server URL. string
dualStandbyPairName The dual standby pair name of Azure-SSIS Integration Runtimes to support SSISDB failover. string

IntegrationRuntimeSsisProperties

Name Description Value
catalogInfo Catalog information for managed dedicated integration runtime. IntegrationRuntimeSsisCatalogInfo
credential The credential reference containing authentication information. CredentialReference
customSetupScriptProperties Custom setup script properties for a managed dedicated integration runtime. IntegrationRuntimeCustomSetupScriptProperties
dataProxyProperties Data proxy properties for a managed dedicated integration runtime. IntegrationRuntimeDataProxyProperties
edition The edition for the SSIS Integration Runtime 'Enterprise'
'Standard'
expressCustomSetupProperties Custom setup without script properties for a SSIS integration runtime. CustomSetupBase[]
licenseType License type for bringing your own license scenario. 'BasePrice'
'LicenseIncluded'
packageStores Package stores for the SSIS Integration Runtime. PackageStore[]

IntegrationRuntimeVNetProperties

Name Description Value
publicIPs Resource IDs of the public IP addresses that this integration runtime will use. string[]
subnet The name of the subnet this integration runtime will join. string
subnetId The ID of subnet, to which this Azure-SSIS integration runtime will be joined. string
vNetId The ID of the VNet that this integration runtime will join. string

LicensedComponentSetupTypeProperties

Name Description Value
componentName The name of the 3rd party component. string (required)
licenseKey The license key to activate the component. SecretBase

LinkedIntegrationRuntimeKeyAuthorization

Name Description Value
authorizationType The authorization type for integration runtime sharing. 'Key' (required)
key The key used for authorization. SecureString (required)

LinkedIntegrationRuntimeRbacAuthorization

Name Description Value
authorizationType The authorization type for integration runtime sharing. 'RBAC' (required)
credential The credential reference containing authentication information. CredentialReference
resourceId The resource identifier of the integration runtime to be shared. string (required)

LinkedIntegrationRuntimeType

Name Description Value
authorizationType Set to 'Key' for type LinkedIntegrationRuntimeKeyAuthorization. Set to 'RBAC' for type LinkedIntegrationRuntimeRbacAuthorization. 'Key'
'RBAC' (required)

LinkedServiceReference

Name Description Value
parameters Arguments for LinkedService. ParameterValueSpecification
referenceName Reference LinkedService name. string (required)
type Linked service reference type. 'LinkedServiceReference' (required)

ManagedIntegrationRuntime

Name Description Value
managedVirtualNetwork Managed Virtual Network reference. ManagedVirtualNetworkReference
type Type of integration runtime. 'Managed' (required)
typeProperties Managed integration runtime properties. ManagedIntegrationRuntimeTypeProperties (required)

ManagedIntegrationRuntimeTypeProperties

Name Description Value
computeProperties The compute resource for managed integration runtime. IntegrationRuntimeComputeProperties
customerVirtualNetwork The name of virtual network to which Azure-SSIS integration runtime will join IntegrationRuntimeCustomerVirtualNetwork
ssisProperties SSIS properties for managed integration runtime. IntegrationRuntimeSsisProperties

ManagedVirtualNetworkReference

Name Description Value
referenceName Reference ManagedVirtualNetwork name. string (required)
type Managed Virtual Network reference type. 'ManagedVirtualNetworkReference' (required)

Microsoft.DataFactory/factories/integrationRuntimes

Name Description Value
name The resource name string

Constraints:
Min length = 3
Max length = 63
Pattern = ^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$ (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: factories
properties Integration runtime properties. IntegrationRuntime (required)
type The resource type "Microsoft.DataFactory/factories/integrationRuntimes@2018-06-01"

PackageStore

Name Description Value
name The name of the package store string (required)
packageStoreLinkedService The package store linked service reference. EntityReference (required)

ParameterValueSpecification

Name Description Value

PipelineExternalComputeScaleProperties

Name Description Value
numberOfExternalNodes Number of the the external nodes, which should be greater than 0 and less than 11. int

Constraints:
Min value = 1
Max value = 10
numberOfPipelineNodes Number of the pipeline nodes, which should be greater than 0 and less than 11. int

Constraints:
Min value = 1
Max value = 10
timeToLive Time to live (in minutes) setting of integration runtime which will execute pipeline and external activity. int

Constraints:
Min value = 5

SecretBase

Name Description Value
type Set to 'AzureKeyVaultSecret' for type AzureKeyVaultSecretReference. Set to 'SecureString' for type SecureString. 'AzureKeyVaultSecret'
'SecureString' (required)

SecureString

Name Description Value
type Type of the secret. string (required)
value Value of secure string. string (required)

SecureString

Name Description Value
type Type of the secret. 'SecureString' (required)
value Value of secure string. string (required)

SelfHostedIntegrationRuntime

Name Description Value
type Type of integration runtime. 'SelfHosted' (required)
typeProperties When this property is not null, means this is a linked integration runtime. The property is used to access original integration runtime. SelfHostedIntegrationRuntimeTypeProperties

SelfHostedIntegrationRuntimeTypeProperties

Name Description Value
linkedInfo The base definition of a linked integration runtime. LinkedIntegrationRuntimeType
selfContainedInteractiveAuthoringEnabled An alternative option to ensure interactive authoring function when your self-hosted integration runtime is unable to establish a connection with Azure Relay. bool