Why would I migrate applications to the cloud? If you need convincing that cloud-hosted applications can bring huge benefits to your business, this blog isn’t for you. Our job isn’t to sell the cloud, it’s to help people use it. So, as part of our sequence of explanatory blogs on Microsoft Azure, we’re going to dive into one of the most exciting opportunities businesses can embrace with cloud migrations: application re-platforming.
Now, I know that might sound like a rather dry and esoteric subject. Is re-platforming really something to get excited about? Simply, yes. In our last blog, we looked at the how most businesses start their Azure journey. We outlined easy-to-achieve benefits through adopting cloud backups, cloud-based domain controllers and SQL hosting. But, the truly transformative opportunities presented by the cloud come from mobilising, updating and re-platforming your line-of-business applications.
Typically, we see two kinds of line-of-business applications: packaged applications like Sage, SAP or Great Plains and bespoke applications which are company specific. Both are normally hosted on-premise or in a dedicated data centre and delivered to staff by LAN, WAN or VPN.
The benefits: Why Migrate Applications to The Cloud?
Re-platforming applications can deliver seven core benefits. These are mobility, device agnosticism, cost reduction, improved performance and user satisfaction, resilience, scalability and reduced management. Detail about these benefits is beyond the scope of this blog, but we’d be delighted to explain them in more detail person-to-person or if there’s enough demand, we’ll dedicate a future blog to those benefits.
Mobility, device agnosticism and scalability are truly transformational and are the keys to sustainable competitive advantage. Of course, re-platforming also gives you the opportunity of modernising your applications too. For example, if you need the latest version of SQL server to install the very latest Sage 200 release, but your on-premise server can’t handle the upgrade, Azure presents a simple solution.
Once you’ve decided to migrate applications to the cloud, there are five different ways of re-platforming.
Option 1: Rehost your application – simple migration using IaaS
Rehosting is, in effect, a simple migration from your existing servers to Azure cloud servers, where you’ll be using Azure’s Infrastructure as a Service (IaaS) virtual machines as your host. With this option, your hosting infrastructure is managed and delivered ready-to-use, but you’ll need to manage the server and your application, just like you did when it was on-site.
We always advise our clients to take the opportunity to update to latest version of everything too – the application, SQL and Windows Server for example. We recently helped Gulf Key Petroleum do just this and will be publishing a case study soon. If you’d like us to send the case study to you when it is published, please tell us here.
Option 2: Replace your application – out with the old, in with the new using SaaS
Sometimes, re-platforming is really replacing i.e. using a different application to do the same thing. There are two scenarios where replacing makes sense.
Firstly, if the application you’re re-platforming already has a Software as a Service (SaaS) version that can do the same job, it makes sense to switch instead of rehosting. The SaaS version will be supported, updated and upgraded by the vendor so you don’t need to administer the application.
Secondly, if the application you’re re-platforming doesn’t really meet your needs and there’s a better SaaS option out there, you may be better off replacing rather than rehosting. I say “may”, because this option comes with caveats. Replacing an existing application with a new one often involves data migration, integration, process change, customisation and end-user training. What looks like a simple switch on paper can be an expensive and protracted project.
Option 3: Refactor your application – innovate as you migrate using containers
If you’re developing and rolling out your own applications migrating to Azure presents an opportunity to refactor your application by containerising it. Containers are causing quite a buzz at the moment because they help you speed up deployment and improve reliability. Containers use the Platform as a Service offering, just like a virtual machine (VM), so you don’t need to concern yourself with administering the infrastructure. The reason containers are causing such a buzz is that they’re even simpler than a VM. Simplicity is good.
While a VM comes with a full operating system, a container comes with the bare minimum operating system necessary to do the job. A VM encapsulates the whole platform and its dependencies, whereas a container encapsulates just the software and its dependencies. Containers make your applications portable, scalable and nimble so they also enable highly efficient use of resources.
Option 4: Re-architect your application – modernise using PaaS
As part of your migration to Azure, you might also consider changing your application architecture by using Azure as a Platform as a Service (PaaS). This allows you to focus on application delivery, for example by hosting your application’s front-end using Azure Web Apps, without having to get involved with the complexity of building and maintaining the infrastructure. Re-architecting your application offers two key benefits; increased scalability and increased resilience. In both cases, the key to benefit delivery is the fact that your application infrastructure is managed for you.
Option 5: Rebuild your application – using PaaS
If you’re using an old application that can’t be migrated the cloud, you may need to rebuild all or part of it and discard some of the old code – including the back end. Rebuild might involve re-coding a C application in C# and rearchitecting the application to make use of a new container in, for example, .NET. Rebuilding allows you to modernise your application so that your user base can use the tools they’re already familiar with. It also promises to improve developer productivity, increase or enable scalability and reduce infrastructure administration.
Making the right choice
We’ve presented five different routes to migrating your apps to the Microsoft Cloud, but how do you know which one is right for you? Every company, department, application and user base is different, so there’s no clear answer. Each option has its own merits depending on your circumstances and the full explanation of each is well beyond the scope of this blog. It’s exactly why you engage with an Azure Gold Partner. We’ve got the skill and experience to guide you through the decision process.
For example; If you’re considering a SaaS option (replace), here are just a few of the considerations:
- Is there a clear migration path for your users? How are you going to train them? Can you offer first-line support?
- Are you migrating your legacy data or starting a new instance? How are you going to handle the crossover period? Do you need to access legacy data? If so, how often and how quickly?
- How much customisation of the SaaS product is needed? Can the vendor support it, or do you need to train your own team?
A great many UK companies still haven’t embraced the cloud in its most powerful guise. They may be using Office 365 to improve collaboration and productivity, but until core systems are working from the cloud, an opportunity is being missed. Application re-platforming drives innovation, improves performance and flexibility and reduces both time and financial commitment to system operations.
In this blog – which ended up being much longer than we intended – we’ve outlined five different ways of taking your core systems and migrating them to the cloud. We hope you find it useful and we’d love to discuss your options with you in more detail if you’re ready to migrate applications to the cloud with Azure.