3 Tips for Reducing AWS EBS and S3 Costs
Cloud providers make it very easy to select as much storage as you need. Storage is logically attached to the server, not physically attached. The beauty of this method is if the server becomes unusable, you can reattach the disk to a new server. But because this storage is “out of sight out of mind,” it’s easy for the cloud to get cluttered, which in turn results in higher than necessary cloud costs.
AWS provides two types of storage services, Elastic Block Store (EBS) and Simple Storage Service (S3). Unused, overlooked and mismanaged EBS and S3 volumes contribute to unnecessary cloud costs. In this blog, we will review three easy ways to reduce your AWS cloud bill.
What is Elastic Block Store?
EBS provides block level storage volumes for use with EC2 instances. You can attach these EBS volumes as devices on your EC2 instances. EBS volumes that are attached to an instance are exposed as storage volumes. These EBS volumes persist independently from the life of the EC2 instance. You can use them in any way you would use a block device, such as a hard drive. You can dynamically change the configuration of a volume attached to an instance.
What is Simple Storage Service?
S3 is an object storage service that provides scalability, data availability, security and performance. S3 can be used for backing up your EBS data, data lakes, websites, mobile applications, enterprise applications, IoT devices and big data analytics. You can also take a copy (snapshot) of your EBS and place it on S3 storage.
S3 and EBS pricing
EBS and S3 pricing is structured differently. EBS pricing includes many variables that impact the actual cost per GB, but in general the cost is around 8 to 12 cents per GB.
S3 has a tiered pricing structure: the more you use, the cheaper per GB. The standard cost for a GB of S3 is 2.3 cents.
It’s common to create and use the EBS or S3, then forget to delete it when you don’t need it anymore. The costs for these wasted EBS and S3 resources will add up quickly and are month over month costs.
EBS cost savings tip 1: Delete orphaned volumes
Picture this: You deleted your server and get next month’s bill. While the server does not appear on the bill, your disk storage is still incurring charges. This type of charge is called an orphaned disk or volume and happens when a volume is attached to a server but is forgotten when you delete the server.
After 30 days, one volume of 200 GB of orphaned EBS storage will cost $16-$24. Not so much. But, if you have 100 orphaned EBS volumes, that adds up to around $2,000 a month. Suddenly, those cents add up to real dollars!
The solution is to delete the orphaned volume(s). To do so, go to the AWS Console and select Volumes. There you will see your EBS volumes. Select the volume and look under Volume State: if it shows “Available” then it is a candidate to delete and save money!
EBS cost savings 2: Rightsizing and terminating EBS
AWS offers various volume types for EBS, each with different performance characteristics and price points. Your volume choice correlates to the needs of your applications.
There are two types of AWS EBS volumes:
- SSD (solid state drive). SSD-backed volumes are optimized for transactional workloads, which consist of frequent read/write operations. Their usage is optimal for small sized I/O.
- HDD (hard disk drive). These volumes are optimized for large streaming workloads. Their usage is optimal for overall throughput.
SSD comes in two types of “general purpose” volumes, GP3 and GP2. The major difference between the two is the max throughput. GP3 is 1,000 MiB/s while GP2 is 250 MiB/s. The GP3 price is 8 cents per GB per month while the GP2 price is 10 cents per GB per month. In most cases selecting GP3 will give you better performance at a lower cost.
SSD also can be configured for “provisioned” volumes. io1, io2, io2 Blocked Express are the highest performance EBS volumes. They are designed for critical IOPS-intensive and throughput intensive workloads that require low latency. Choose this option if you need a very high number of IOPS for systems like OLTP databases or NoSQL system.
The AWS Compute Optimizer tool will analyze your EBS for under- and over-provisioning and will provide optimization recommendations. Rightsizing an over-provisioned resource will reduce your costs while moving an under-provisioned resource to an optimal size will result in better performance but might result in increased costs.
It is our experience that an IT developer selects the faster storage (io1 or io2) without regard to the cost. We have analyzed thousands of volumes and changed from io1 to GP3 without impacting performance and while also saving 10-20% of the cost of the storage.
The process for saving money is simple: Use the AWS console, select EC2 then Volume, make the changes as needed and attach the device. Before you know it, you will be saving money! If the AWS Compute Optimizer recommends terminating the volume (validate it is not needed first), then you can delete the resource and save even more money.
S3 cost savings tip: Avoid wasting S3 resources
S3 can be used for websites, snapshots, cloud-native applications, backups, archives and much more. S3 is rated at 99.999999999% durability (how safe data is from being lost). That means if you store 100 billion objects, at the most you would lose is 1 object.
There are many S3 storage types. These include:
- S3 Standard. Used for frequently accessed files. Storage is 99.99% availability. Cost is the highest of all the S3 types.
- S3 Standard-Infrequent Access (S3 Standard IA). Used for less frequently accessed data that still requires rapid access. Storage is 99.9% availability. Pricing is less than Standard S3.
- S3 One Zone IA. For non-critical data or data that can easily be recreated.
- Glacier Access. Glacier storage options are designed for long-term storage at a significantly discounted cost.
- S3 Intelligent Tiering. Automatically moves your S3 objects to the most cost-effective S3 storage type based on access patterns, without performance impact, retrieval fees or operational overhead. Note: There is a small monthly fee for this service and the service cannot move the data to Glacier.
- LifeCycle Management. A set of rules you define to move objects to the desired location according to a set timeframe. It is best to use AWS Pricing Calculator to understand the cost, as files of small size can incur a fee when moving to a different location.
While S3 Standard only costs 2.3 cents per GB, the cost can add up if you don’t stay on top of maintenance. Staying on top of – and removing clutter – will prevent you from paying for what you aren’t using.
One way to eliminate unnecessary accumulation is to select S3 from the AWS Console then review your buckets (folders). You will see a summary of total storage, number of objects, and average object size (use this for lifecycle management). Review files that are years old or extremely large. If not needed, delete them.
Another area where S3 files accumulate is snapshots. Snapshots are a great way to back up your EBS. Without proper cleanup, the snapshots can accumulate for years and end up costing hundreds to thousands of dollars. You can review snapshots on the Console under EC2, Snapshots. Sort them by age or size and delete S3 objects that are not needed.
Three ways to cut cloud storage costs in AWS
Like a garage that is filled with “stuff,” your cloud environment can get filled with clutter. This clutter results in paying for resources that are no longer needed or are not optimally configured.
By performing proper cloud maintenance, and taking corrective actions, you can bring harmony and efficiency to your cloud.
- Delete orphaned EBS volumes.
- Optimize EBS resources.
- Eliminate unused EBS volumes and unneeded snapshots
Taking these actions will result in an optimal cloud environment. Unfortunately, none of them will help you with your cluttered garage.
Putting together and executing cloud management strategies takes time and expertise. If you would like help getting insights into your cloud cost overages or need recommendations about how to optimize your cloud environment, please get in touch with us. We are happy to help.