Cost optimisation and security are two crucial areas that must receive consideration while using AWS. We will discuss how using AWS management tools will help you save...
Reduce AWS spend: AWS cost optimization is a long-term process, not a one-off
Summary
This article is intended as an overview of the process of AWS cost optimisation and how to approach it. It is not a guide to using native AWS services like AWS cost explorer.
AWS cost optimization is not a one-off event. It can be difficult to know where to start, and most organisations start when there is a problem, such as uncontrollable AWS costs or if budgets are cut. We intended to break down the process for and options available to enable AWS cloud cost optimization.
What is AWS cost optimization?
This is the process used to manage your AWS costs. Public cloud platforms like Amazon web services (AWS) and Microsoft Azure provide their resources with a pay-as-you-go or on-demand model.
This is one of the much-trumpeted advantages of the cloud 'pay only for what you use' but it can be a double-edged sword if you don't constantly monitor and review your AWS spend on a regular basis. However, if a balance can be found between cost and usage and performance then the advantages of the cloud and its pricing model can be realised for the business.
REDUCE YOUR AWS BILL BY 30% IN 15 MINUTES!
Cloud financial management & budgets
Cloud financial management can often be an issue within an organisation as there can often be a conflict between operational, financial and development teams when it comes to cloud costs and management.
Often the finance team is not used to a pricing model that constantly changes amounts from month to month and has hundreds or thousands of line items. The operations and development teams then own the performance of the platform, but might not own the budget depending on the business structure.
AWS cost explorer & AWS cost management console
AWS provides two main tools to help with cost optimization:
- AWS cost explorer is a great tool for visualizing your AWS spend over time. It can be used to identify trends in cloud cost and areas of high expenditure (cost explorer overview)
- AWS cost management console is a more comprehensive tool that can be used to set budgets, track costs against budgets and set up AWS cloud cost allocation tags
Both of these tools do work well to give you visibility into your AWS cost but they have a few disadvantages:
- They only look at AWS cloud costs so if you have cloud deployments in other cloud platforms then they will not be included
- They both require setup and configuration - this has the knock-on that it requires someone in your team or an external consultant to carry this out and hand it over
Both tools are focused on visualising and alerting around your AWS cloud costs, they will not give you feedback or help you save money.
The AWS pricing calculator is another tool provided by AWS but this is mainly for working out the cost of a particular AWS service before it's implemented so it is not covered here. The AWS calculator could be used to get an idea of AWS budgets and compare a before and after scenario on savings plans but it is not primarily for that purpose.
AWS cost optimization best practices and steps involved?
There are a set of standard steps for first getting an understanding of your spend and then taking steps to evaluate and then rationalise it. This is usually done to ensure that your spend is as efficient as possible and includes:
- Organise - What are your goals for AWS cost optimization? (reduce costs / implement automatic scaling / ensure efficient spend)
- Visualise - Get a view of your AWS costs both live and historic as a baseline to find out where you are now and see if things are increasing/decreasing
- Coverage - does it take into account all cloud spend in AWS across subscriptions, regions etc...
- Forecast - Any tool you use should enable you to see your projected spend based on your current configuration
- Budget - Apply your business budgets for different areas to the resources deployed in AWS and set alerts for when you are about to approach/exceed your budgets
- Implement savings plans (Right size) - This can involve right-sizing/autoscaling/spot instances/reservations all to make your AWS spend as efficient as possible
- Repeat (Manage and optimize)- This process should be ongoing and also take into account changes to your architecture as well as the evolving AWS platform (Long term this should be repeated on a regular basis to reduce costs). Each round of auditing should then lead to implemented savings plans
This is where cloud management software which includes cost analysis and makes recommendations can make a real difference to how you manage your AWS cloud infrastructure.
AWS cost optimization tools don't always give you the full picture
Analysing your AWS cloud spend and making recommendations is a complex task. There are many factors which can affect the price you pay for AWS resources:
- AWS region
- AWS service
- Type of AWS resource e.g. Amazon EC2 instance/storage types e.g. Amazon EBS volumes or glacier deep archive
- Price plan - Are any price modifiers already in place like spot instances or reserved instances?
- EC2 Instance type - size/type (Be aware that costs for the same EC2 instance can vary according to region)
This is why many AWS cost optimization tools often just give you a view of your costs both live and historic.
When looking at AWS cost optimization tools, both from AWS and other providers, they are often comparable to a smart meter like you get from your energy provider. The tools usually give you the ability to see your AWS cost both live and historic and maybe set budgets and alerts against AWS spend. Some let you tag and group your AWS cloud spend as well so you can give it relevance to your internal budgets. This is as far as most of the tools available go. They don't provide any 'intelligence' for cost optimization like recommendations or steps to change things or help with implementation.
There are a few that provide a bit more; they are usually cost optimization tools from a third party and they might provide some form of 'intelligence' for your AWS deployment, with cost recommendations. Usually, these are limited to:
- Comparison of other AWS services which would be cheaper to run (i.e. EC2 instances comparison or EBS volumes comparison) that are comparable to the ones you are running now
- Balance cost reduction with the performance required - this is often lacking in online tools as they don't take into account your goals or requirements for the AWS workloads you are running
- Projected savings for using Spot instances - this only works if you are comfortable with having your AWS deployment turned off when demand is low
- Projected savings for using reserved instances - this only works if you are willing to commit to AWS for 1 or 3 years upfront
Very few managed services have the depth and capability to actually implement the things that matter when looking at reducing your AWS costs for the long term such as auto-scaling.
This is why over and above a cost optimization tool, organisations usually use a consultant or AWS trusted advisor on a one-off basis to come in the audit/review their AWS architecture/deployments and then make and implement recommendations. However, no matter how good the consultant / AWS trusted advisor is, they are looking at a snapshot in time and unless they come back in repeatedly, they will only be able to go so far when optimizing costs.
However, a consultant is not the only way. CloudOps provides unified cloud management bringing together a best-of-breed tools set to drive functionality.
How does CloudOps drive AWS cost optimization?
CloudOps has the intelligence that is often missing from AWS cost optimization and the capability to help you review and implement cost optimization recommendations.
What's usually missing is the ability to understand how your AWS architecture interacts with the way your business runs and the costs involved. The goal of AWS cost optimization should be to make your AWS spend as efficient as possible for your specific workloads.
That is why CloudOps has all of the normal cost visibility/analysis capabilities but then goes far beyond that.
- Integrated monitoring and fault prevention and fix - Often AWS architecture is the root of overspending and AWS billing surprises
- AWS analysis - CloudOps uses the data directly from the AWS APIs to build a picture of your specific workloads and then uses Artificial intelligence and machine learning to make recommendations to reduce cost while balancing performance
- Auto scaling to demand - Review your AWS usage and implement your AWS architecture for auto-scaling up and down according to demand
- Cost reviews - Ongoing cost reviews to validate your architecture/deployment is efficient and take into account changes to AWS and reduce costs
CloudOps is designed specifically to give you full transparency, control, and support, for your cloud infrastructure.
Get in touch with a member of our team to learn more, and we’d be happy to help!
Steve Rastall - Managing Director
Get in touch:Steve.Rastall@igcloudops.com