Public cloud has been with us for a decade and a permanent fixture of IT strategies for several years. Yet budget and cloud project overspend remains one of the top concerns for cloud adoption and expansion. With cloud adoption set to increase and public cloud spending budgets exceed non-cloud budgets, keeping on top of cloud spend will continue to be a critical objective for enterprises:
“More than half of enterprise IT spending in key market segments will shift to the cloud by 2025” – Gartner, Feb 2022
This post aims to de-mystify public cloud spending so you can navigate the pitfalls.
Lesson 1 – Cloud is not Cheaper or More Expensive
The purpose of public cloud is not to be cheaper than a non-cloud solution. The purpose of public cloud is to bring a speed, agility, flexibility, and capability that isn’t possible with a non-cloud solution.
It stands to reason that with architecture so radically different that some solutions are going to be more expensive, and some will be cheaper than their non-cloud alternative.
What you should be asking though is what are my business gains for potential additional cost. Will a cloud solution accelerate progress to business goals? Will it make my business more competitive? Will it save money in other ways?
A cost analysis/evaluation isn’t just about how much my IT costs. It’s more a question of what my business is set to gain.
Lesson 2 – You can’t Compare Apples with Apples
Public cloud is a consumable model. You pay for what you consume as you expand. You may think that can make costs unpredictable, but they are actually easier to manage than large up front capital expenditure. More on that later.
So, the first thing is trying to calculate if your cloud project is more expensive than non-cloud is automatically impossible. You might be able to figure out how much your cost per virtual server is including storage for non-cloud. But how do you compare that with a solution that includes a consumption price for monitoring, network ingress, storage, compute, functions, databases, regional DR, etc, etc.
Public cloud is very transparent in telling you what you will be charged for so you can calculate the costs of your solution. Non-cloud is much more opaque. In the above example I suspect the following costs are missing for non-cloud evalaution:
- Networking management / maintenance
- Network security
- Perimeter security
- Monitoring licensing
- Monitoring infra
- Image management
- Hyper-visor management and licensing
- Physical tin management and licensing (Manufacturer tools)
- Server room cooling, electric, water, fire suppression and maintenance
- Building security
Finally, comparing the cost of running a workload on virtual servers (apples) is difficult to compare to running the same workload across non-server services like databases, functions, containers, data lakes, web apps, etc (pears).
A straight cost comparison isn’t possible and is no longer the right approach. It’s important now to start factoring in business benefit such as moving to cloud means we can release 3 times as many feature updates to our customers, or it means that overload at black Friday events no longer prevents client purchases due to auto-scaling and content delivery.
Lesson 3 – Your Purchaser has Changed
Before to public cloud, purchasing was tightly controlled and required formal approval by a manager, prior to any order being made.
With public cloud that purchasing power has shifted to the cloud engineer who is building, configuring, or maintaining your cloud environment. There isn’t a workflow with gates to pause a configuration in the Azure portal or Azure API until a manager has approved. That would actually be counterproductive in a DevOps and cloud world.
Yes, you will still go through your analysis and business case for large projects but in terms of day-to-day maintenance and improvements, that’s in the hands of your admins. There is also the factor of cost fluctuation by design. Autoscaling on apps means that during peak time your app will scale out its infrastructure based on user demand, then shrink as demand drops off. Your costs will also expand and shrink at the same time.
The important thing to remember is that your technical people aren’t trained to do their jobs with a financial mindset. The purchasing power has shifted, but fiscal mindfulness hasn’t come with it.
Lesson 4 – Misconfiguration Can Cost Dearly
Most configuration in cloud is set and forget when you’re focussed on whether something has been successfully deployed, updated, or fixed from a technical standpoint. It’s a natural part of the cycle to require some optimisation as it’s impossible to think of everything from the get go.
Common areas of configuration that draw unnecessary costs:
- Orphaned objects – Server deleted, but has left behind public IPs and storage
- Virtual Servers left switched on permanently when they aren’t needed all the time – can double or triple your server bill
- Oversizing virtual machines or database systems
Cost optimisation is something that should be reviewed regularly to see where improvements can be made. Remember, you pay for what you use, while you’re using it, or while it’s enabled.
Summary – Insight is Crucial
Moving and modernising your applications to take advantage of public cloud flexibility and capability requires not only a different technical mindset but also requires regular fiscal monitoring.
It can be extremely challenging to obtain the right information to see at a glance the financial health of your cloud investment and be certain of your ROI, particularly when it requires technical skill and access to pull data out of the system.
This is where a good Cloud Management Portal (CMP) will help you by presenting crucial data, concisely and intuitively at your fingertips. A CMP will help you manage your cloud platform by providing insights to activity across the environment and actions to help you govern your cloud. One aspect of a CMP is providing cost management data to help your key people in finance and IT turn your cloud expenditure transparent.
Key insights and capability to look for are:
- Current spend/projected spend, budget overspend
- Set/monitor budgets and owners
- Define costs centres and workloads with attached budgets
- Drill down dashboards to see departmental expenditure
- Anomalous activity analysis data
- Anomalous activity alerting
- Budget threshold warning and breach ChatOps alerts
- RBAC for finance analysts
These features arm you with the information and tools necessary to govern your cloud expenditure and assign accountability, not just from an IT admin perspective but as a tool designed for use by everyone, not just the technical staff.