What to do when your apps can’t use native Azure migration tools and services


Enterprises are increasingly migrating their applications to public clouds, and Microsoft’s Azure is a preferred target for many of them. During the migration, enterprises must consider their diverse estate of operating systems, databases, middleware, COTS products and application technologies, as well as their multiple versions.

Azure Site Recovery is an Azure service that orchestrates replication of on-premises physical servers and virtual machines to Azure. Migration tools such as Azure Site Recovery can typically be used in migrating applications when there are no source-target variations to the operating system, technology, application server, runtime or other application components.

Unfortunately, not all applications can benefit from great services like Azure Site Recovery. What do you do in those scenarios, and what are the options available to you? Here are some of those use cases:

  • Clean Install – This requires the application and its components to be manually installed afresh on Azure VHDs-based VMs.
  • OS Upgrade – If the application is currently on a Windows or Linux version that is unsupported on Azure, then the application will need to be made compatible on a supported version before migration. This may also involve an upgrade or change to the application server or runtime vendor if the current is unavailable on the target operating system version.
  • U2L – Applications on UNIX platforms such as Solaris, HP-UX or AIX will need to be made compatible with Azure-supported Linux platforms before migration. Any OS dependencies, file paths, hardcoded references, etc. will need to be remediated. DXC has a tool that can assess your applications for UNIX to Linux migrations irrespective of the application technology.
  • Technology Upgrade – Minimal code changes may be required to upgrade application technologies such as Java or .NET to the Azure-supported versions on Azure VMs or Azure Web Apps.
  • Middleware Upgrade – This option involves upgrading the application servers or other middleware to versions compatible on Azure-supported operating systems. The upgrade may also be required to ensure compatibility with Azure PaaS platforms. Vendor tools that can assess and automate the middleware upgrade can be leveraged.
  • Runtime Upgrade – This requires an upgrade to application runtimes and/or compilers to Azure-supported versions on Azure VMs.
  • Refactor – This is the outcome of any version upgrades or changes to the frameworks used by the application, e.g. EJB to Spring, JDBC to Hibernate, etc. The application will need to be refactored to use the new framework before the migration. DXC tools are available to automate the refactor of legacy frameworks to modern ones such as Spring and Hibernate.
  • Re-architect – Not all application architectures are designed to distribute their workload to multiple resources using Auto Scaling. The application may need to undergo a re-architect to enable it to scale automatically on Azure. These architectural changes will need to be applied to certain areas of the application such as:
    • User Sessions
    • Workflows
    • File Storage
    • Databases
  • Technology Refresh – Any change required to the application’s legacy or thick client technologies such as Visual Basic, Access, Oracle Forms, PowerBuilder or Classic ASP to more modern ones will not be suited for a tool-based migration. A combination of manual and tool-based approaches will be used to convert the application’s technologies before it is migrated to Azure. DXC’s suite of tools can convert applications on legacy technologies to modern technologies such as Java, .NET and AngularJS.
  • Commercial Software – In the case of commercial software, version upgrades may be required if the current version is unsupported on Azure VMs. Care must be taken to ensure that functionality is not impacted when upgrading to a newer version. In extreme cases, the commercial software may even need to be replaced if a supported version does not exist.

Enterprises must ensure preparedness for any migration scenario arising out of their varied application estate. Working with an independent IT services company can accelerate outcomes through the use of proven frameworks, processes and experienced technologists. DXC, for example, has more than 35 industrialized models to match any technology landscape, and the DXC and Microsoft global strategic partnership offers integrated and innovative solutions to help enterprises succeed in their Azure journey.

Mudasser Zaheer headshotMudasser Zaheer (Maz) is passionate about digital transformations. He is currently responsible for Public Cloud Application services at DXC Technology. His previous roles include Chief Evangelist, Digital Transformation Officer and Chief Product officer for companies like HP Enterprise.

Speak Your Mind


This site uses Akismet to reduce spam. Learn how your comment data is processed.