One of the major reasons organizations migrate to the AWS cloud is to gain the elasticity that can grow and shrink on demand, allowing them to pay only for the resources they use. But the freedom to provision on-demand resources can sometimes lead to very high costs if they aren’t carefully monitored. How can you optimize your AWS storage costs for services like AWS EBS?
In this article we will discuss the costs of AWS storage systems and show you how to monitor those costs and optimize them with the help of some useful tips and tools such as NetApp’s ONTAP Cloud and OnCommand Cloud Manager.
Amazon EBS Costs
Before we discuss Amazon EBS costs, let’s take a closer look at the service. Amazon EBS is a block storage service that offers a persistent way to store data on volumes. These volumes can be used to store primary data that requires frequent updates, such as OS, database application, web servers, etc. Amazon EBS and can be attached to Amazon EC2 instances.
There are four main types of Amazon EBS block storage volumes:
- General Purpose SSD (gp2)
- Provisioned IOPS SSD (io1)
- Throughput Optimized HDD (st1)
- Cold HDD (sc1)
There is a fifth type of volume, based on magnetic tape, which we’ll not discuss in this blog.
The Difference Between SSD and HDD
Let’s compare SSD and HDD disks. SSD volumes suit IOPS-intensive workloads, whereas HDD volumes are ideal for data- and transfer-size-intensive workloads. Usually, SSD-backed volumes are a good fit for use case requires low-latency and cost-efficient storage. HDD-backed volumes are also a low-cost storage option ideal for low-cost storage with a high throughput.
Each type of volume fits different use cases. As per AWS some of the use cases are as follows:
The cost of AWS storage depends on three main factors:
1. IOPS requests
2. Allocated storage space
Therefore, the pricing for each storage type differs from each other as mentioned below:
Additional standard Amazon EBS snapshot charges apply on each volume types which includes the data transfer cost plus the standard Amazon S3 storage costs. Each volume type has different pricing models which can be found on the Amazon EBS pricing page. You can find out more about managing AWS EBS here.
AWS Cost Monitoring, Storage Usage, and Related Costs
It is easy to keep track of AWS storage costs using a variety of native tools such as AWS Cost Explorer, AWS Trusted Advisor, and Amazon CloudWatch. You can also set up cost monitoring and tracking for Amazon EBS and Amazon S3 where you set an alarm which will alert you whenever your usage passes a certain cost threshold. Here are some ways to achieve this:
- Monitor storage using Amazon CloudWatch: With AWS CloudWatch, you can set up billing alarms which will notify you when you have exceeded a certain amount of storage or cost. Once the threshold is exceeded, AWS sends out an email or notification using Amazon Simple Notification Service (SNS).
- Monitor usage costs by reading dashboard graphs: It is a good practice to check your Billing and Cost Management console dashboard periodically. The dashboard gives various breakdowns which help understand your costs on a monthly spending basis.
- Analyze costs with Amazon Cost Explorer: You can use Amazon Cost Explorer to analyze your cost and spending patterns. With Cost Explorer, you can compare storage costs for the last 13 months with a variety of graphs and trends which can help analyze costs efficiently.
AWS Cost Optimization
It is very important to select right storage solution to optimize costs. Let’s look at an example of how costs can get out of control by using the wrong storage type: Company ABC choose to create 500GB IO1 volume with 1000 PIOPS for a requirement to host database on an Amazon EC2 instance. The decision to go for IO1 is correct in terms of performance, but in terms of costs Company ABC might be paying too much here. There is an opportunity where they could save approximately $90 on each such volumes just by choosing a 350 GB GP2 volume without compromising IO performance.
Below are some points an organization should check for optimizing storage costs.
OS Level Storage Optimization:
- Configure RAID 0 for higher IOPS. RAID configurations are software-level solutions which help get the maximum amount of IOPS from any number of Amazon EBS volumes combined together. This way you can avoid paying extra for provisioned IOPS by leveraging RAID configuration.
- Use the Linux Logical Volume Manager to add and remove volumes on the go so that you’ll be able to add and remove storage space dynamically.
- Auditing your storage files stored in Amazon EBS volumes, Amazon S3 buckets, and Amazon EFS will help keep an eye on how much storage is being utilized and help determine certain actions you can take to optimize, such as archiving or deletion.
- AWS best practices suggest storing static content on Amazon S3 because it is inexpensive and provides low-latency file transfers.
- Data which is infrequently accessed can be moved to Amazon Glacier, as this will significantly reduce storage costs.
- Keep an eye on volumes which are detached and are not utilized by any Amazon EC2 instances. Snapshot such volumes if the data on it needs to be preserved.
- Amazon S3 lifecycle policy helps automatically rotate files from Amazon S3 bucket which helps remove files such as logs, dump, etc. that will be not required after a certain period of time.
- Delete old Amazon EBS snapshots which will help reduce snapshot storage charges.
- Delete Amazon EBS volumes that are not in use as they keep incurring cost.
- For storage of non-critical data that is also reproducible. It is low on redundancy compared to Amazon S3 but provides 99.99% durability and is cheaper than Standard S3 storage.
- Proper sizing of Amazon EBS volumes should be done to avoid access costs. Also it is necessary to select the right Amazon EBS volume types because it has a greater impact on billing.
- Use AWS Trusted Advisor to constantly monitor storage. It also suggests ways to optimize costs in your AWS account (only available with developer support plan). Note that this is possible using the OnCommand Cloud Manager Storage Automation Report as well.
- AWS Cost Explorer will help get insights about the costs and service expenses.
- You can set specific tags for a specific set of resources which belong to organizational groups or cost centers. It will help keep track of costs and usage rates per group, which can then be further investigated and optimized.
- AWS Budgets help you set custom cost and budgets for resources, it alerts whenever thresholds are breached.
- Research how to cut down on transfer costs.
In addition to the points listed above, you can leverage NetApp’s ONTAP Cloud to help AWS cost optimization and reduce cloud storage costs dramatically. ONTAP Cloud, when used over Amazon EBS, uses storage efficiency features such as data compression, data deduplication, thin provisioning, and data tiering which when combined help reduce the overall space required to store data to a great degree. Data tiering is especially useful for optimizing costs, as it allows you to leverage Amazon S3 as a cool tier for infrequently-accessed data and bring it back up to Amazon EBS as needed. To see how ONTAP Cloud can start to save your AWS storage costs today try out our AWS calculator.
AWS users who are also using ONTAP Cloud can also leverage the OnCommand Cloud Manager to manage every aspect of hybrid and cloud deployment, analyze their storage usage across AWS, and show where monthly costs are adding up by using the Cloud Storage Automation Report to discover unused or underutilized volumes.
AWS cost optimization helps organizations meet demand and capacity while using the most economical options cloud providers have to offer. To optimize your storage costs on AWS, you should set up a strict billing hygiene where proper budgets, tagging, monitoring, and alerting are in place to minimize costs and get better ROIs. But to further reduce storage expenses, you can manage resources and store data more efficiently with the help of NetApp’s ONTAP Cloud and OnCommand Cloud Manager.
Continue reading about AWS EBS resources here and in these popular blogs on how to get better performance from your EBS volumes, how to optimize your AWS EBS volumes, automating Lambda functions to lower costs, how storage tiering lowers costs for cold data, including DR copies and EBS snapshots. If you’re working with ephemeral data, find out how AWS EBS can store non-persistent data and how to create instant clones of volumes in AWS EBS. Plus, see how the various cloud block storage volume sizes size up and the winner of the object storage vs. block storage challenge on AWS.
Want to get started? Try out Cloud Volumes ONTAP today with a 30-day free trial.