Google results with tons of articles on AWS cost optimization. Even Amazon itself teaches you how to pay less for AWS. But most of these detailed and helpful “AWS cost reduction guides” are primarily addressed to developers, DevOps, and CTOs.
So here, we want to share our personal experience of AWS cost optimization. For businesses, in simple words.
The main argument in favor of cloud services always sounds like “pay only for what you use.” So tips for optimizing your AWS bill are always boiling down to three areas:
- Selection of optimal tools for your tasks
- Reducing the runtime of resources used
- Choosing the suitable payment model
Therefore, we have compiled our top cost items for which we have already saved more than 1M$ for our clients.
Using incorrect-sized EC2 and RDS instances
Sooner or later, your account will get “oversized” EC2 instances with excess performance for their tasks. It is usual for any project that lives and develops, so rightsizing should be your regular practice.
Please pay close attention to instances with a maximum monthly load of less than 50% of the possible, and it may be time to downgrade them.
Producing “zombie assets”
“Zombie assets” is a name for unused resources you keep paying. Such assets arise because the billing model for some AWS instruments does not work as formal logic might suggest:
- EBS volume attached to the EC2 instance does not delete by default while deleting the instance. The administrator must check an appropriate checkbox during the EBS setup process. Otherwise, you will pay for all such unpinned EBS volumes.
- If you use S3 snapshots, you should configure the retention policy so that only the necessary data is stored. And only for the required period. Otherwise, you run the risk of monthly paying for outdated and no avail data storage.
- If you used a free “Elastic IP Address” with an EC2 instance, you should delete this IP separately after deleting the following instance. Otherwise, the IP address will no longer be free of charge.
Remember? Pay only for what you use. For example, how often are instances for the test environment used? Maybe, during business hours only.
For such cases, Amazon offers AWS Instance Scheduler, so you can use it to shut down instances that are not in use temporarily.
Using just on-demand plans
Amazon is interested in selling as many resources as possible. Therefore, it provides some alternative payment models that can save you a lot:
– Reserved Instances. A set of flexible payment models when you reserve the instances in advance and pay less.
– Spot instances. You bid the price but get instances only when they become available. So you can save up to 90% on resource-intensive tasks that you can wait to complete, which is a great deal.
Want to get a Free professional AWS account audit in 1 day?
We can share our 12 years of experience with cloud services for SaaS and cloud-related projects, including work on the cost management service for AWS and Azure Cloudyn (now – Azure management cost).