Mihai Tataran
General Manager & Partner | Azure MVP
In this 8-minute video, we’ll go together through the major decisions an organization has to take when migrating an existing solution to Microsoft Azure.
- Should we do it?
- Which would be the best solutions to start with?
- What should we expect from the solution once it runs in the Cloud?
Porting an existing solution from on-premises to Microsoft Azure comes with certain challenges. Most of these challenges are related though to choosing the right way to migrate and the models of cloud service that were took into consideration. Therefore, the better the research and planning, the easier the migration will be.
Migrating An Existing Solution to Azure
First of all, let’s discuss some limitations that you might encounter when you host solutions on premises.
Challenge #1: Scaling issues
How do you predict / estimate future users’ load? – It’s really hard to predict how many users the application will have next week or in 3 or 6 months’ time. Estimates are often wrong, so wrong that a lot of business can be lost.
Hard to scale on demand – Ideally, your solution would be able to scale based on the user needs, based on metrics on its own. This is very hard to implement in an on-premises infrastructure.
Takes days or weeks to do it – Saying you are able to scale manually, it takes days or even weeks to do it, because you have to go through the proper purchasing workflows and processes that you might have in place within your company. So on-premises, it’s close to impossible to autoscale in minutes.
How Azure can help? – Autoscaling
Autoscaling, or when the solution scales itself. There are lots of features which enable autoscaling. However, the autoscaling happens on demand only, based on some performance counters or metrics that we want to look at. It usually takes minutes (not hours or weeks) and depends on preset settings and constraints based on your budget constraints, the disaster recovery you need to consider etc.
Takeaway: with consideration to those constraints, the solution is able to autoscale itself.
Challenge #2: Capex
Capital expenditure – you must an upfront investment when you want to host your solution on your premises. There’s the risk to render the solution as obsolete before you streamline your investment, especially when you consider that the equipment investment needs to be big enough to accommodate your highest load. This investment would sit unused for probably months or more than 50% of the time. Which shows that this approach isn’t efficient in terms of investment.
How Azure can help? – Pay per use
You get to pay only for what you use. You are able to shut down or scale down resources in a very efficient manner. Whenever you stop those resources, the costs go down as well.
Many features like automatic shutdown, automatic stop can be found in Azure Automation, where one can define Powershell scripts based on which your solution will be able to scale up or down, paying just for what you use.
Challenge #3: Maintenance costs
You’ve got an ongoing cost that must cover services like disaster recovery and high availability are usually needed in your solutions, so you have to personnel taking care of the above-mentioned services. You spend man hours, and you enforce procedures in order to maintain them. Which leads to ongoing maintenance costs.
How Azure can help? – Lower ongoing costs
Disaster Recovery and High Availability are built-in, so don’t need to anything in order to achieve this.
Virtual Machines in Azure are not just Virtual Machines – it’s not a 1:1 relationship with the VMs that you’ve got on premises. They come with a lot of extra features, for which, on premises, you would have to work to set up.
When talking about Platform as a Service (PaaS), the maintenance work is near zero.