Blog

AWS Cost Optimization: Concepts, Tools and Best Practices

Amazon Web Services provides a huge variety of services. Predicting and managing costs for large deployments can sometimes be overwhelming. Get a grip on AWS costs with our quick primer to AWS pricing concepts, free Amazon tools that can help you manage costs, and best practices you can implement today to reduce your cloud services bill.

In this post, we’ll review Amazon cost optimization strategies, and show how NetApp Cloud Volumes ONTAP can help you substantially reduce Amazon storage costs.

In this article, you will learn:

An AWS Pricing Primer

Before you start optimizing costs on Amazon, it’s important to understand the AWS pricing philosophy, and the tools Amazon gives you to optimize and save costs.

Amazon’s pricing model is based on three pillars. In the table below we briefly explain each of these principles, and what you should watch out for.

Amazon Pricing Pillar

How it Works

What You Should Watch Out For

Pay as You Go

AWS turns capital expenses in operating expenses by leasing computing resources, letting you pay for them by the hour.

Amazon’s on-demand pricing is quite expensive even for small workloads. Leverage “pay as you go” only for workloads that really have unexpected peaks or special scalability needs.

Pay Less by Using More

AWS gives you volume discounts for higher utilization of specific service features, and also when you spend more than $500,000 in upfront costs.

By increasing usage of AWS services, you also increase your lock-in to the Amazon ecosystem. Balance the desire for discounts with the need to maintain a healthy, multi-cloud strategy.

Save When You Reserve

Amazon EC2, which is the basis for most Amazon services, provides discounts of between 30-50% if you reserve instances 1-3 years in advance.

If you purchase reserved instances for a year or more at a time, seriously consider running the same workload on-premises. This will almost always be cheaper, unless there is a special need for the flexibility provided by the cloud.

AWS Cost Management Tools

Amazon provides a broad set of free tools for cost management and optimization. Familiarize yourself with these tools, and use them to gain data, make decisions, and create rules and automated actions that will help you save money on AWS.

Billing and Cost Management Console
The billing section of the Amazon Console lets you see what services you are consuming on AWS, and optimize their structure. Use tagging to organize services by project or department, and consolidate AWS accounts to create one billing entity for each project that has a separate budget within your organization. Read the official documentation on how to consolidate AWS billing accounts.

AWS Cost Explorer
The Cost Explorer interface lets you view usage, costs, and return on investment for Amazon services. It shows data for the past 13 months and helps you forecast future spend. Create customized views that can help you analyze your costs and identify areas for improvement. Cost Explorer also provides an API that lets you access the data via your analytics tools.

Historical SageMaker Costs by Usage TypeSource: Amazon Web 

AWS Budgets
AWS Budgets lets you set and enforce budgets for specific Amazon services, and receive emails or messages from the Simple Notification Service (SNS) when budgets are reached or exceeded. You can specify an overall cost budget or connect the budget to specific data points, such as number of instances or data usage. The Budgets dashboard provides similar views to those of Cost Explorer, showing how services are being used compared to their budgets.

AWS Trusted Advisor
AWS Trusted Advisor is an automatic tool that provides guidance on best practices for your Amazon services. One of the five areas checked by Trusted Advisor is cost optimization. It provides automated optimization recommendations related to:

  • EC2 reserved instance optimization and lease expiration
  • Low utilization of EC2 instances
  • Idle load balancers
  • Underutilized EBS volumes
  • Unassociated elastic IP addresses
  • Idle DB instances on Amazon RDS
  • Redundant Route 53 latency resource record sets
  • Underutilized Amazon Redshift clusters

Amazon CloudWatch
Amazon CloudWatch lets you set alarms based on a large variety of metrics captured from your Amazon services. CloudWatch is commonly used for cost optimization. For example, you can set up an alarm and notification when an EC2 instance’s utilization goes below 30%, investigate why the instance is underused, and take action to right-size the instance or combine workloads.

Five Best Practices for Reducing Your Amazon Bill

Now that you better understand Amazon’s pricing philosophy and the tools at your disposal for monitoring and optimizing costs, here are a few quick best practices that can help you substantially reduce your AWS bill.

  1. Rightsize instances—identify EC2 instances that are underutilized, and downgrade the instance size or move to a different instance family to save costs. For example, if you initially selected a Memory Optimized Instance, but you see your application is not as memory-intensive as expected, switch to a General Purpose instance.
  2. Delete zombie resources—one of the biggest drains on your AWS bill is continuing to run unused resources that are billed continuously, not per usage. A few examples are EBS volumes, obsolete snapshots, and unused Elastic IP addresses. Use AWS Trusted Advisor to get a list of most of these zombie resources and quickly knock them out.
  3. Instance scheduling—ideally, instances should only be started when actually used, but this may not be practical for many purposes. A common example is EC2 instances used for ongoing development and testing. These cannot be spawned on demand, but they should only be operational within the working hours of the relevant development team, and shut down when not actually used.
  4. Reserved instances and spot instances—the two major avenues for discounts on AWS are committing in advance to a reserved instance for 1-3 years, or using spot instances that may shut down unexpectedly, but shave up to 60% off costs. The trick is to carefully select workloads for which Reserved or Spot instances actually make sense, and avoiding using these options when they are not economical or practical.
  5. Move cold data to cheaper storage tiers—Amazon S3 offers several tiers for infrequently-accessed data—S3 Infrequent Access, S3 Glacier and S3 Deep Archive Glacier. Put automation in place to identify data when it is no longer needed for active production use, and move it to the cheapest cold storage tier. Cold storage can reduce storage costs per GB from $0.023 to as low as $0.00099.

AWS Cost Optimization with Cloud Volumes ONTAP

NetApp Cloud Volumes ONTAP, the leading enterprise-grade storage management solution, delivers secure, proven storage management services on AWS, Azure and Google Cloud. Cloud Volumes ONTAP supports up to a capacity of 368TB, and supports various use cases such as file services, databases, DevOps or any other enterprise workload, with a strong set of features including high availability, data protection, cloud automation, Kubernetes integration, and more.

In particular, Cloud Volumes ONTAP provides storage efficiencies, including thin provisioning, data compression, and deduplication, reducing the storage footprint and AWS storage costs by up to 70%.

Cloud Volumes ONTAP provides data tiering, automatically and seamlessly moving infrequently-used data from block storage to object storage and back, saving more costs.

NetApp Cloud Assessment is a free tool that will run a quick assessment of your cloud storage, measuring both storage efficiency and data protection levels, looking for unused resources and analyzing snapshot practices. Try NetApp Cloud Assessment Free Tool.

Read More About AWS Cost Optimization

AWS cost optimization is a broad topic. Different Amazon services have different pricing models and cost optimization techniques. Read the articles below to gain a deeper understanding of Amazon cost management strategies, with a special focus on storage services and opportunities for optimizing storage costs.

Cloud Snapshot Costs
Cloud storage snapshots are point-in-time backups of storage volumes. Both AWS and Azure offer snapshot mechanisms, and while snapshots are very convenient, they can also become a large drain on your cloud bill. Each snapshot continues to live in cloud storage until you delete it, and costs can quickly add up.

Learn how snapshots work in AWS and Azure, understand snapshot costs on each platform, and manage your snapshots to ensure you are only paying for snapshots you actually need.

Read more: Cloud Snapshot Costs: Cloud Volumes ONTAP, Azure, and AWS EBS Snapshot Pricing

Controlling EBS Costs
Amazon EBS provides persistent storage for Amazon EC2 instances. However, when you shut down an EC2 instances, the EBS storage volume may be not automatically deleted. This can lead to major cost overages, for example in case you deploy auto scaling and automatically create largen numbers of EC2 instances, but forget to erase their attached EBS volumes when they are no longer needed.

Learn how to find unused EBS volumes and automatically delete them using an AWS Lambda function, to control EBS costs and avoid waste.

Read more: Control EBS Costs: How to Find and Delete Unused AWS EBS Volumes Using a Lambda Function

AWS Cost Saving Guidebook
Learn how to save EBS costs with Cloud Volumes ONTAP, using advanced storage features like deduplication, compression, compaction, thin provisioning, automatic data tiering, NetApp Snapshot™ Copies technology, and smart data clones.

Learn how storage efficiencies can generate major cost savings, and download our complete guidebook to learn how to save more on Amazon EBS.

Read more: AWS Costs Calculator: How to Optimize Your AWS Costs with Cloud Volumes ONTAP

Optimize Storage Costs for AWS EBS
Learn about the main types of Amazon EBS block storage volumes, the difference between SSD and HDD volumes, and how to start monitor your storage uses and ongoing costs on EBS.

Discover practical recommendations for:

  • Optimizing EBS storage at an operating system level - by improving RAID configuration and the Linux Logical Volume Manager.
  • Optimizing EBS storage at the application level - by leveraging S3 storage tiers, watching and removing unutilized volumes, and removing unused snapshots.

Read more: Find and Optimize Your AWS Storage Costs for AWS EBS and More

Want to get started? Try out Cloud Volumes ONTAP today with a 30-day free trial.

-