Application migration between Microsoft Azure data centers has become a little easier thanks to a free open source solution from Persistent Systems. Developed in collaboration with the Azure CAT team in Bangalore, Azure Data Center Migration Solution helps migrate cloud assets from one Azure data center to another.
Licensed under Apache v2.0, customizable ADCMS replaces the need to develop a custom application migration solution. It automatically copies an entire deployment from one location to another.
Microsoft and its largest competitor in cloud services Amazon Web Services kicked off 2015 with a bang, both rolling out additions and improvements to their cloud service portfolios. Just last week, Azure announced availability of new high-performance cloud instances. AWS made a similar announcement earlier today, following the roll-out of numerous new cloud features last week.
Persistent Systems architect Satish Nikam listed some of the potential reasons for data or application migration in his LinkedIn post:
- Moving IaaS deployments to a data center that is closer to you or your customers
- Creating multiple data center deployments
- Providing a backup solution to work around IaaS maintenance plans
- Transitioning between subscriptions
Microsoft operates Azure in data centers around the world and it continues to expand locations. One use case may migrating a workload to a new location because it provides better performance.
The solution is also useful in test scenarios and for migrating between cloud subscriptions.
ADCMS addresses potential problems mid-migration. It is designed to handle interruptions and either start from where it left off or roll back.
“A migration can encounter two kinds of faults: transient and permanent,” Nikam wrote. “The solution uses early validations and retries, and compensations to implement a limited level of 'atomicity.' It also supports automatic rollback in case of permanent failure.”
If a migration stops, the migration can resume at the point of error. For consistency’s sake, the solution also shuts down virtual machines just before migrating them to avoid inconsistency issues.
It creates resources in parallel wherever possible. There is also resource name mapping and enables customization.
"Writing a script to add automation, customization and repeatability to your data center migration can become a major programming project, with extensive investment in error handling in case a problem occurs mid-migration," Guy Bowerman, senior program manager, Azure, wrote on the Azure blog. The new solution "takes much of the pain away from these types of migration."
The solution was developed using .NET Framework 4.5 and uses the Microsoft Azure Management APIs to interact with Azure. ADCMS can run on premises or on a virtual machine in the cloud.