Why is cloud spend such a thorny subject for so many organisations? And what can be done to resolve the issues that hinder effective cost management in the cloud?
A recent article on ZDNet suggests that cloud computing ‘sticker shock’ is on the rise. Unfortunately, the shock often comes after the transition to cloud is complete. The author says that savings seen when switching from upfront CapEx investments in IT to a subscription model “soon [sour] as the rising monthly bills come in for services nobody knows [about].”
The article, which draws on data from the FinOps Foundation’s State of FinOps Report 2021, suggests that a lack of cloud cost optimisation automation is at the heart of the problem.
Yet this predicament can be resolved with an outcome-focused approach to cloud adoption and migration which takes long-term costs into account. In fact, many organisations are getting it right at least some of the time. Data from AWS shows that customers save between 30-50% in the cloud compared to on-premise spend. So how can you ensure your cloud strategy delivers cost savings, not cost headaches?
The fact is, cloud cost optimisation doesn’t happen by accident – it needs to be an intrinsic part of your strategy. And there are three core ways to make that happen.
Three ways to improve cloud cost control
1. Think about how you move to the cloud
Migrating existing applications to the cloud won’t necessarily generate immediate cost savings. In fact, a simple ‘lift and shift’ migration can sometimes result in higher costs, especially for applications that were over-provisioned in the on-premise environment.
Companies implementing a largescale migration with a hard deadline, such as a planned datacentre exit, are most likely to fall into this trap. The need for speed makes straightforward re-hosting of virtual machines in the cloud seem an attractive option. But it can be a costly one in the long term; especially if there is no plan for post-migration optimisation. Our whitepaper ‘Supercharge your cloud migration with DevOps’ highlights the importance of looking at the way infrastructure is recreated in the cloud.
A good alternative for some workloads is to evolve and modernise applications in line with DevOps principles as you move them to the cloud. Making operability and infrastructure improvements during the migration process enables applications to unlock the benefits of cloud computing sooner. We look at this in more detail here: Why Cloud and DevOps are better together.
2. Implement cost management principles
Whether you’re looking at cost-optimisation for applications already in the cloud, or those earmarked for migration, certain engineering principles are ubiquitous. Automating procedures related to tagging, scaling and reserved or spot instances is the cornerstone of good practice.
Nevertheless, the State of FinOps Report found that 49% of respondents had little or no automation of cloud spend management in place. Of those with some automation, notification and tagging were the most likely to be automated (31% and 29% respectively had done this). However, the figure dropped to 13% for rightsizing and 9% for spot use.
Automating these procedures is a relatively quick and hugely effective way to leverage the cost savings associated with cloud computing. Take rapid elasticity. When you automate key parts of provisioning, application deployment and orchestration you only use (and pay for) the capacity you need, when you need it. This dynamic approach to rightsizing reduces wasted spend and keeps total cost of ownership down.
3. Nurture a more joined-up culture
The biggest challenge to cloud cost optimisation cited in the State of FinOps Report is ‘getting engineers to take action’. Considering that 44.5% of respondents work for large organisations employing more than 10,000 people this is perhaps not surprising. Departmental siloes endemic in larger organisations make workers less inclined to care about goals or initiatives outside of their core remit.
Deep-seated cultural issues like these can’t be rectified overnight, but steps can be taken to start driving positive change. One approach worth considering is a shift from project-led to product-centric IT, with long-lived multidisciplinary teams working in collaboration. Ideally, this would go together with use of self-service platforms and Infrastructure as Code to empower engineers and reduce toil.
While product-centric IT is geared towards software production rather than cloud adoption, the two are closely linked. It’s about giving people greater autonomy, with appropriate guardrails in place. Ultimately it means people understand the bigger picture, and the part they play in that, which fosters greater personal responsibility.
If you want to read more about the benefits of product-centric IT, check out Steve Thair’s blog here.
Do I need a dedicated FinOps team?
According to the State of FinOps Report, big companies tend to be heavier adopters of FinOps. The implication is that the complexity of large businesses and their cloud use mean the discipline requires specialist attention.
However, it’s our belief that good DevOps practice encompasses FinOps principles as a matter of course, for organisations of all sizes. Nobody wants to get stuck in a cycle of unaccountable, unexpected or untenable cloud spend. So while you don’t necessarily need a dedicated FinOps team, you do need a dedicated focus on cloud cost management. When you integrate DevOps with your cloud strategy, you’ll keep cloud costs on track.