The cloud is expensive. That is what most service providers think when they consider migrating their infrastructure and services to Azure or the cloud in general. Nine out of ten shrink from the high costs when they compare their on-premise environment to the same infrastructure in Azure. They see their costs double or even triple.
Are they wrong? No, the calculation is correct. But if you compare a 16-core on-prem VM with a 16-core VM in Azure, you are actually comparing two different things: apples with bananas. To make a proper comparison and a well-founded decision, you need to adopt the right cloud mindset.
In order to adopt the right mindset for the cloud, it is necessary to understand three important pillars of the cloud and the balance between them:
End users all have different requirements for IT capacity. So what happens in the classic, on-prem scenario? Service providers provide a lot of resources for their customers. And why not? They have already invested in all the hardware, the data centre, pay the monthly bills for electricity, cooling and so on. When they shut down a VM now and then, it would not make any difference in costs. That’s completely different in Azure.
In Azure, you do not pay for what you have, but for what you actually use, without all the extra overhead.
In the majority of the cases, resources are often overprovisioned in the on-premise data centre to ensure that customers do not encounter any restrictions in the event of unpredicted usage. But also because Service Providers overcommit the CPUs, sticking multiple virtual cores in a single physical one.
Because of this, the average CPU usage in the on-premise data centre appears to be 15 to 20%. I even talked to prospects with only 5% (!) usage. It might sound overwhelming, but best practice in Azure is to use up to 80%, because smaller (and therefore cheaper) VMs can be provisioned with the latest technology (and therefore more powerful) than in the on-premise environment. In the case of peaks or unpredicted activities, it takes just a few minutes to create new VMs to load balance whether for five minutes, five weeks or for five months. Is the peak over? Then the VM size is reduced to the original, smaller VM again.
In Azure, smaller VMs cover the same workload: 4 cores can do the same job as 16 cores.
The third pillar is what I call ‘the shower effect’. Just like you turn off the shower at home when you are finished, even though you expect your son to take a shower in the afternoon, so you can turn CPU usage off or on with automation and scripts, depending on demand. If a VM can be turned off for three hours per day, let’s say from 1am to 4am, this is an immediate cost saving of 10%. If an average company works five days a week, twelve hours per day, this means 65% can be saved. While this seems magic with an on-premise mindset, the opposite is true: it is straightforward cloud logic with the use of automation and scripts.
In Azure, you can optimize the CPU usage and save costs with automation and scripts, depending on demand.
Below is an example of what cost savings can be achieved when you balance CPU usage with the two pillars of Right Sizing and Snoozing.
If cloud service providers really want to take advantage of the benefits of the cloud, including cost efficiency, they need to change their mindset. A recent customer case describes what makes the difference.
One of our partners who was already using VMs from another provider to migrate to Azure. When they calculated their number of VMs and cores for a one-to-one scenario in Azure, their monthly costs would double from 5,000 euros per month to around 10,000 euros. An absolute no-go.
Analyzing their average CPU usage, I saw that the vast majority of customers had no 24/7 usage. This completely changed the calculation, because with scripts and automation VMs could be switched on and off on demand.
Monthly costs dropped by almost 90% from 5,000 to 700 euros.
Although the application was not yet ready for the cloud, the partner decided to change the application, despite the extra costs, and to migrate to Azure with an ROI of 3-4 months to rebuild the application and continuously lower monthly costs after the transition. All achieved by switching to the right cloud mindset.