Mastering Azure DevOps Data Migration- A Comprehensive Guide
Mastering Azure DevOps Data Migration: A Comprehensive Guide
Before embarking on your Azure DevOps data migration journey, it’s important to understand the key concepts and considerations that will ensure a successful transition from your on-premises server to the cloud-based Azure DevOps Services.
Understanding the Migration Process
The Azure DevOps Data Migration Tool facilitates a high-fidelity migration, ensuring that the majority of your data is seamlessly transferred to the cloud. However, it’s crucial to note that not all data is migrated. Separate databases, such as those used for reporting and SharePoint, are not included in the migration process.
Included Data
The migration process covers the following data:
- Collection Mapping: Each collection in your on-premises Azure DevOps Server corresponds to a single database. During migration, the entire collection, including work items, history, Team Foundation Version Control (TFVC) changesets, Git data, build definitions, and more, are migrated to Azure DevOps Services. The work item, TFVC changeset, and Git commit numbers/IDs remain unchanged.
Excluded Data
While most data is migrated, there are some exclusions to be aware of:
- Extensions: Extensions must be reinstalled after the migration. You should publish your local extensions to the Marketplace as private extensions and share them with your organization.
- Service Hooks: Service Hooks data is not included in the migration; you’ll need to reconfigure them after the migration.
- Load Tests: Load test data is not brought over; you’ll need to reconfigure your load tests after the migration.
- Pipeline Agents and Agent Pools: You’ll need to reconfigure your pipeline agents and agent pools after the migration.
- Mentions: User mentions in work item discussions retain the on-premises identity, not the new Microsoft Entra ID. Hovering on usernames may not display contact cards, and some hyperlinks might be invalid.
- Project Server Integrations: These are not available for Azure DevOps Services, such as XAML Builds, Microsoft Test Manager, SharePoint, SQL Data Warehouse, and more.
- Preview Features: Some Azure DevOps Server features may be previewed during the migration to Azure DevOps Services.
Project Limits and Organization Mapping
It’s important to understand the relationship between your on-premises databases and Azure DevOps organizations. Each team project collection in Azure DevOps Server corresponds to a single SQL database and is the source of migrations to Azure DevOps Services. On the destination side, Azure DevOps Services organizations are the management unit in the cloud-hosted service, and they map 1:1 to the team project collections.
During the migration process, the Data Migration Tool creates a new Azure DevOps organization with a user-provided name. It’s not possible to migrate a collection database into an existing Azure DevOps Services organization or to consolidate multiple collection databases into a single Azure DevOps Services organization. The mapping is strictly one-to-one between team project collections and Azure DevOps Services organizations.
It’s also important to note that Azure DevOps Services imposes a limit of 1,000 projects per organization, although it’s recommended to keep the number below 300. If your collection contains numerous projects, exceeding this threshold may degrade certain experiences, such as connecting to the organization from Visual Studio. To stay within the limit, you may consider splitting the collection or deleting older projects.
Choosing a Data Center and Pricing Considerations
When setting up your Azure DevOps Services organization, you can choose the location for your data. During the initial sign-up and organization creation, select a region that suits your needs, and make a note of the region’s shorthand code for later use during the migration process.
Regarding pricing, the good news is that you’re likely to have all the licenses you already need to use Azure DevOps Services. Microsoft has provided a user licenses worksheet to help you estimate the costs based on your specific requirements, such as the number of team members, stakeholders, and Visual Studio subscribers. Additionally, Azure DevOps offers various value-added services, such as hosted load testing and Test Manager extensions, that you may find beneficial, but these may come with additional costs.
It’s essential to evaluate your requirements and budget accordingly, and if you have any specific questions, don’t hesitate to reach out to your DevOps Partner, Microsoft Reseller, or your Microsoft Developer Solutions Sales Specialist for personalized guidance.
Reserving Your New Organization
To ensure a smooth transition, it’s recommended to reserve the name of your organization early on in the migration project’s timeline. This will help you secure your desired organization name, such as https://dev.azure.com/contoso
, for the final migration.
Here’s the recommended approach:
- Initial Reservation:
- Create an organization with a temporary name, such as
https://dev.azure.com/contoso-temporary
. - Reserve this temporary name for your future migration.
- Create an organization with a temporary name, such as
- Final Migration:
- When you’re ready to begin the final migration, perform it into the
https://dev.azure.com/contoso-temporary
organization. - After a successful migration, rename the reserved organization to open your desired name for the imported organization. Renaming is immediate, while deleting can take up to an hour to release the name.
- Immediately rename the migrated organization to the desired name, for example,
https://dev.azure.com/contoso
. - Optionally, you can delete the originally reserved and renamed organization at this point.
- When you’re ready to begin the final migration, perform it into the
By following this approach, you’ll have a smooth transition while ensuring your preferred organization name remains available.
To get started with your Azure DevOps data migration, be sure to complete the prerequisites for migration and review the related articles for more detailed guidance on the migration process.
[Source: https://raw.githubusercontent.com/MicrosoftDocs/azure-devops-docs/main/docs/migrate/migration-get-started.md]