How to clone/copy Azure Data Factory to another tenant?

Pitawat 351 Reputation points
2023-09-19T16:29:15.1666667+00:00

My organization is moving to another Azure tenant. We have an Azure Data Factory with 50 pipelines, 40 datasets, 15 linked services and 5 triggers configured in the current tenant that needs to be available in the new tenant.

I know that moving Azure resources to another tenant is not possible but I would like to seek an easy way to create ADF in the new tenant with everything mentioned above available. Current ADF needs to still be available in the current tenant for existing workloads and will be decommissioned later after cutover.

One possibility I found is to export ARM template suggested by this documentation. I tried clicking Export but the validator found some errors in one of the pipelines. While I fix the error, I would like to ask the community if there are any alternative ways to achieve this so I can consider my options.

Thank you.

Azure Data Factory
Azure Data Factory
An Azure service for ingesting, preparing, and transforming data at scale.
11,624 questions
{count} votes

Accepted answer
  1. Amira Bedhiafi 33,071 Reputation points Volunteer Moderator
    2023-09-19T16:42:07.0633333+00:00

    I highly recommend the ARM templates, in the Azure portal, navigate to your ADF instance and click on the "Author & Monitor" tile. Then, click on the "Export ARM template" button from the ADF blade. This will generate a template of your entire ADF instance. After exporting, you might need to modify some parts of the template, especially the parameters related to naming conventions or tenant-specific resources.

    Log into your new tenant, and use the Azure portal or Azure CLI to deploy the modified ARM template.

    Or you can use the SDK, where you can write a programmatic solution to extract ADF components from the source tenant and create them in the target tenant. This might be overkill, but it offers greater flexibility and control.

    You can try Azure PowerShell cmdlets to extract configurations from the source tenant and apply them to the target tenant. Check the official Azure PowerShell module https://docs.microsoft.com/en-us/powershell/azure/new-azureps-module-az?view=azps-10.5.0 for more details.

    For smaller ADF configurations (though yours is moderately sized), you can manually recreate the linked services, datasets, pipelines, etc., in the new tenant. You can export individual pipeline JSON definitions and recreate them in the new tenant. This is tedious, but sometimes it's the best way to ensure everything is set up correctly.


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.