This is the first in a multi-part series aimed at how organisations can manage and optimise costs to get the best of their cloud infrastructure. At Momenton, we place a strong focus on leveraging cloud whilst also seeking to optimise cost management.
Public cloud adoption continues to accelerate with cloud spending rising as companies adopt multi-cloud strategies and expand into the cloud. Public cloud is now a significant line item in IT budgets, especially among larger organisations. Cloud spends are expected to increase by half in the next year and are typically over budget¹.
COVID-19 will further increase cloud use. Extra capacity will be needed to meet increased demand as online usage grows. Migration from data centres to cloud will accelerate in response to reduced headcount, difficulties in accessing data centre facilities and delays in hardware supply chains¹.
Organisations struggle to handle this growing cloud spend, not taking advantage of strategies to reduce cloud costs. They are wasting an estimated 30 per cent of cloud spend⁶, even though one of the leading cloud initiatives is to optimise the existing use of cloud and save costs¹.
Managing cloud spend is one to top challenges that organisations face¹.
Managing cloud spend
Cloud spend comes from multiple sources such as costs for virtual machines, container management, and serverless computing. Each cloud provider structures its pricing differently and offers different discount types for savings opportunities¹:
- AWS offers reserved instances, spot instances, Enterprise discounts, Saving Plans and ad hoc negotiated discounts.
- Azure offers enterprise agreements, reserved instances, hybrid benefits and low priority VMs.
- Google has committed use discounts, ad-hoc negotiated discounts and preemptible VMs.
This makes understanding your cloud spend complex and challenging to manage, especially for organisations with multi-cloud strategies.
Organisations are not taking advantage of all the available discounts. For example, only around half of AWS and Azure users leverage reserved instances¹. Cloud providers have recognised that users want simplified discounting, with AWS now offering a simplified AWS Saving Plan².
Taking a close look at provider discounts could uncover opportunities to reduce costs.
Optimising and Monitoring
Most organisations have at least a hundred virtual machines, and it is not uncommon for enterprises to run thousands of virtual machines¹. Although there is a growing trend to use PaaS, the use of compute instances will still be one of the largest cost items for companies. From our experience, we see that compute contributes to 40% to 70% of the overall cloud spend.
To achieve cost benefits for compute resources, organisations must optimise or right-size instances by selecting the best instances for their workloads.
Cloud vendors offer a wide selection of instances that are compute, memory, and storage optimised, allowing users to pick and configure the best fit for provisioning their workloads. Further AWS spot instances can save up to 90% compared to the cost of On-Demand Instances³ or Google’s Preemptible VMs costing up to 70 per cent less than the company’s standard instances. However, the instances terminate after 24 hours or when the resources are required for other tasks⁴.
Once provisioned, instances should be tuned for proper performance and optimal usage. The number one cause of companies spending too much on their cloud services is failing to understand how their instances operate. You need to know how your workloads function at a granular level.
Workloads should be modelled to provide insights into their usage⁵, which requires:
- monitoring compute resources to understand CPU, disk I/O, and memory utilisation,
- monitoring system idle time and underutilisation,
- monitoring network bandwidth utilisation, throughput and response times,
- periodic sampling of data and analysis of workloads, and
- identifying trends to pinpoint cost drivers.
Cloud vendors provide tools to monitor and evaluate costs and utilisation to identify opportunities for optimisation. Cloud usage reports help you address workload inefficiencies by determining more precisely the memory, virtual CPU cores, or other resources your workloads need. They also provided recommendations for right-sizing. For example, AWS provides tools such as Amazon CloudWatch, AWS Cost Explorer, EC2 Right-Sizing, and AWS Trusted Advisor to monitor and evaluate costs and utilisation to identify opportunities for optimisation.
Organisations should use automation to monitor and optimise spend continually. Automated optimisation policies for cloud costs can save time while ensuring organisations monitor their environments consistently to eliminate waste.
Automated policies can be leveraged to shut down workloads after hours or when not required. For example, a batch processing job with infrequent high utilisation would be suitable to be turned off when inactive, so you are not paying for CPU cycles you do not need.
Turning off instances is not always feasible. Organisations that have geographically distributed teams across different timezones or with volatile infrastructure — causing frequent issues with tearing down and restarting infrastructure — will have drastically reduced productivity, outweighing the gain of turning off infrastructure when not required. Also, Google offers sustained usage discounts, so turning off instances can be more expensive than leaving them on.
Rather than tearing down infrastructure, using container-as-a-service offerings (AWS ECS/EKS, Azure Container Services or Google GKE) with Kubernetes provides flexibility to scale clusters up and down as required to support always-on workloads and optimise costs.
Containers offer more flexibility over instances, so container usage can also help control costs because they allow more efficient use of infrastructure¹.
Kubernetes will optimise resource utilisation by using its bin packaging feature. Kubernetes treats instances as a pool of CPU and memory and allocates resources from this pool in an optimal way. This allows you to focus on your cloud at a high-level and lets Kubernetes take care of the difficult part of allocating resources.
Organisations looking to optimise their spend should:
- take a close look at provider discounts to uncover opportunities to reduce costs,
- use automation to monitor and evaluate costs and utilisation continually,
- use right-size instances by selecting the best instances for workloads,
- use Kubernetes for flexibility and more efficient use of infrastructure.
Momenton has developed a number of tools to provide strategies and actionable insights to manage and reduce cloud costs. Reach out to firstname.lastname@example.org to understand how Momenton can help your organization with this and more.