Spiraling costs are causing organizations to look for ways to reduce their monthly spend – hidden charges and unexpected bills are surprises that CFOs can no longer afford. With current costs from hyperscaler cloud providers skyrocketing, many are now asking whether going cloud-native is the right move for them.
There are, however, a number of tips and tricks that you can action today that will help you reduce your cloud bill at any provider. With the right tools in your arsenal, you can ensure you're on top of all charges coming your way, whilst still reaping all the benefits that cloud has to offer.
Across organizations, we're seeing leaders redefine their company culture and encourage a collaborative relationship between their CFO and financial teams and developers. This relationship is emerging under the umbrella term of FinOps. Similar to the uptake of a DevOps approach, businesses must now encourage the different branches of their finance teams and developer teams to come together to build a new approach to cloud.
Whilst cloud cost can seem like a purely financial issue, it is also closely tied to your developer team's actions, so expanding the responsibility of financial management to involve your developers is an important first step. Provide your employees with training and educate them on the best metrics they should analyze to provide all teams with the information they need to make data-driven spending decisions. With the right communication, you can display your current spend, whether through a dashboard or other tool, across each action from each team and ensure it fits within the budgets allocated per team and project.
If done successfully, this approach will enable you to manage increasing expenses gradually. You’ll be equipped with the right data to budget for planned projects and avoid sudden, and unexpected, costs as your company grows and increases its cloud usage.
Identifying the hidden traps in your bill
There are four common areas across all cloud vendors that risk running up your bill. Luckily, these are things that can be managed and observed by your team. By putting mechanisms in place to tune these parameters, you can ensure you're reducing the chance that your provider has snuck hidden charges into your monthly bill that you're unaware of.
A common misconception is that when you delete compute its volume is removed. However, this is not mandatory. If a member of your team isn't trained to spot this, you risk this volume running in the background and entering the bill every month.
Some cloud providers have tools that can help you optimize your cost. Compute-Optimizer from AWS, for example, gives you a good view of what your costings are per service and how you can optimize this cost. Associated with this is a recommender system that can give you recommendations based on your exact usage pattern – if you have enabled this. With enough logs and monitoring, you'll be able to monitor and fine-tune your usage across specific projects.
Remember that every IP address is chargeable. Your provider will charge you if you do not delete the reserved IP or when you delete the instance but do not remove the reserved IP s. It is important, therefore, that you have a system in place to monitor any unattached IP addresses that are still within your network because they’ll be contributing to your monthly bill.
Data transfers across cloud and regions can be costly, but this won’t appear on a pricing calculator. So, before sharing large quantities of data, make sure you know the associated cost to avoid being caught unaware.
From a Kubernetes perspective, you must ensure you don't have any unattached PVs. Whenever you create a Persistent Volume, this can be backed up by EBS or some other volume, so if you delete this, it doesn't necessarily mean that the PV goes away – so you could be charged.
Make sure you're sanity-checking your extra volumes and that you don't have any sitting there, adding to your bill but doing nothing. Retention policies are great ways to reduce your chance of building up snapshots and logs you're not using. With Kubernetes, if you keep every metric generated, your workload cost will get out of hand. Instead, check through each recording process and streamline this to incorporate only the metrics that you need, and delete any unnecessary additions.
Even if you don't run any nodes or workloads, you'll still be charged extra due to the controlplane charge. Correct sizing of your workloads by using their requests and limits can make best use of your nodes, and the cluster autoscaler feature can also be used to avoid overprovisioning of the nodes. In the long run you can get the traffic patterns and use open source tooling like KEDA to do more advanced levels of autoscaling of your workloads, even when there is a spike.
When taken in combination, these tasks have the potential to stop your bills from growing exponentially. Enforcing them from the beginning and incorporating these monitoring practices into your training is a crucial way that organizations can prevent hidden bills from scaling rapidly.
Using the right tools
Putting these parameters into place may appear complicated, but there are already several tools available that you can deploy to make monitoring these areas simpler. For example, Komiser or Kubecost. There are also tools Goldilocks that can recommend the right sizing of resources and KEDA that can help you with advanced auto scaling within Kubernetes.
Most tools rely on giving you a clear overview of the resources you're using and allow you to sanity check where your money is going. Komiser, for example, can draw information from multiple cloud providers, if this is your chosen cloud model, and relay your relevant costs under one unified view. This can then be saved and downloaded as separate reports.
Crucially, these tools show you exactly what you're spending across each service. So if you're looking to manage your cost, this is an essential foundation that breaks down precisely what your provider is charging you and why.
With rising costs, you shouldn't allow hyperscaler providers to seize the advantage. Instead, incorporate awareness of these financial practices at all levels of your organization and begin work now.
Building these tricks into daily practice may seem complicated, but if you make them habitual, you'll give yourself the best safeguards to predict your costs and projects into the future. There are four things that I'd recommend that you look to implement from today:
- Set budget allocations per project
- Set a budget and billing alert monthly
- Make sure your logs and metrics data do not overpopulate
- Bring in company policy training to build in FinOps
Of course, FinOps is designed to incorporate the best working practices into your organization – not necessarily reduce your costs. However, when combined with the right tools, you can build an accurate picture of your costs and work to manage your monthly charges.
Another method for reducing costs could be to look beyond the traditional big 3 hyperscaler providers and use an alternative cloud provider, such as Civo, who are able to provide the same if not better level of service. On top of this, many alternative providers give prioritized support, which is frequently an additional charge from the Big Three.
If you're interested in learning more about the cost of cloud, the current state of the industry, and insights and tools to drive innovation, then check out some of our latest resources: