Table Of Contents
What Is AWS Sizing? (Right Sizing) Why Is Right Sizing Important? 11 Actionable AWS Right Sizing Tips

According to usage trends observed by Amazon, sizing is typically not a primary concern for many organizations when they move to the cloud. These companies migrate in order to prioritize speed and performance over the cost benefits of AWS sizing. 

It’s understandable, though, why sizing tends to be ignored. Amazon’s flexible pay-as-you-go pricing model makes the cost of its services seem easily manageable at first. 

But with time, as you grow and progressively migrate additional infrastructure to the cloud, it becomes apparent that Amazon’s billing is not that forgiving. Users who blindly chase speed and performance often find themselves with overprovisioned instances, which translates to wasted spend on unused cloud resources. 

This is exactly where AWS sizing can help. This guide will cover AWS sizing in detail, elaborating further on the benefits and importance of sizing, and tips and best practices to help you get the most out of your cost optimization efforts.

Table Of Contents

What Is AWS Sizing? (Right Sizing)

Also known as right sizing, AWS sizing is an effective procedure for controlling cloud costs. Right sizing manages to align the sizes and types of AWS instances to your specific workload capacity and performance requirements at the lowest possible cost. 

To reduce your cloud spend, AWS sizing assesses all your deployed instances and then proceeds to establish opportunities for downsizing or eliminating extra resources without harming your workload capacity and other critical requirements. 

The process itself is usually continuous, as AWS users’ resource needs are always shifting. Sizing keeps tabs on not only the performance of instances, but also your usage patterns and workload needs — upon which it goes on to kill inactive instances. 

This elimination of overprovisioned resources allows you to match costs to your actual service usage and needs. 

finops-automation-series-thumbnails

Why Is Right Sizing Important?

Right sizing became necessary because of one huge mistake that most organizations make as they migrate to the cloud. They tend to overprovision cloud resources under the wrong assumption that their on-premise infrastructure is rightly distributed. 

In other words, organizations manage to transfer their existing inefficiencies to the cloud by replicating their already wasteful unoptimized on-site infrastructure. As such, they end up raking in losses from the extra costs that pile up due to underutilized and unused cloud resources. 

TSO Logic, an APN and Migration Competency partner of AWS, studied this event through a statistical analysis that sampled nearly 105,000 operating system instances across North America. The report revealed that only 16% of the OS instances were appropriately provisioned for their workloads. The rest (84%) ran on larger-than-required footprints, which would translate into huge losses if the infrastructure was replicated directly to the cloud. 

The research then went ahead and analyzed the effect that right sizing would have had on the instances — based on real-world usage scenarios. 

As it turns out, organizations would have been able to reduce their AWS spend by 36% through optimally sized resources. This means that right sizing alone would have cumulatively saved them more than $55 million per year. 

That’s the power of AWS sizing. It can save your organization a lot in wasted cloud spend by optimizing and streamlining your instances to retain only the resources your workload requires. 

11 Actionable AWS Right Sizing Tips

Right sizing isn’t a basic plug-and-play procedure. You don’t just randomly hit a button on AWS and wait for the system to sort everything out. 

For the best possible results in resource optimization and cost control, you need to have the right data and approach right sizing strategically. Here are 10 tips and best practices that can help you rightsize your instances.

1. Use a cloud cost intelligence solution

CloudZero

Being able to make informed decisions around how to best rightsize your environment for increased savings and cost optimization, first starts with having complete cost visibility.

With a cloud cost intelligence platform, like CloudZero, engineering teams can gain visibility into their cloud spend — enabling them to see exactly what AWS services cost them the most and why — and even drill into cost data from a high-level down to the individual components that drive their spend. Engineers can see the impact of their work and how specific code changes affect their costs.

Additionally, having a team that can help you spot cost optimization opportunities, can help you feel assured that you’re on the right track. That’s why CloudZero’s Cost Intelligence Team is here to help you by watching your spend, coaching you on best practices, assessing your infrastructure, and making recommendations for increased cost savings.

If right sizing is a priority for your engineering team, make sure you have a cost intelligence platform that will allow you to make informed cost decisions.

2. Review your AWS performance data

AWS sizing is all about reprovisioning your cloud resources to match them with your actual workload requirements, without compromising performance. As such, it’s only right to start the optimization process with the one thing that lies at the center of it all — the performance of the cloud resources. 

If you’re planning to rightsize your cloud infrastructure, then you should assess and keep tabs on your cloud service utilization. This will give you insight into instance performance trends — from which youn can determine all the underutilized instances that you could do without.

That said, the approach here is straightforward. Monitor your cloud performance over a period of at least 14 days while, at the same time, keeping an eye on the corresponding workloads. 

More specifically, you might want to review instance performance metrics such as ephemeral disk use, network utilization, memory utilization, and vCPU utilization. Try paying close attention to any instances with maximum memory usage and CPU usage of less than 40% or so. Those are the ones that you can start eliminating to reduce costs. 

3. Take note of your usage needs

Closely tied to instance performance is usage needs. So, while you track the performance of your cloud resources, you might also want to keep tabs on the corresponding utilization patterns and needs. This will ultimately help you establish the ideal AWS sizing options for each use case. 

This is particularly important for users who have difficulties picking the ideal mix of instance types and features. 

Case in point, Amazon EC2, which tends to be the costliest cloud solution for typical AWS users, offers a wide range of resource options. You’ll find a host of memory, network I/O, and CPU options — which, combined, might understandably feel overwhelming. 

To avoid shooting in the dark, you should have a good understanding of your usage needs. This is what will ultimately define the best type of instances for your cloud infrastructure. 

For example, if your cloud operations require an enhanced network throughput, you could go for Network Optimized Instances. Memory-intensive workloads, on the other hand, would be much better off with Memory Optimized Instances, while CPU-intensive operations call for Compute Optimized Instances. 

Otherwise, if you’re dealing with a consistent workload level that can be accurately predicted, you could potentially have huge cloud savings with Reserved Instances. Then variable workloads with predictable changing patterns, on the flip side, would benefit from AWS Auto Scaling. 

4. Identify and do away with idle resources

AWS sizing is not complete until you entirely eliminate idle resources from your cloud infrastructure and usage bill. As such, you should always be on the lookout for any extras in your cloud environment that you might have purchased and deployed but then ended up remaining unutilized. 

For instance, one particular scenario that might leave you with idle resources is the On-Demand deployment of instances for non-production operations like testing, staging, development, and quality assurance. Such instances are often used for a limited period of time, after which they’re abandoned to lie idle as costs accumulate. 

These are the types of resources you should promptly identify and remove from your cloud environment. 

Make no mistake about it, though. Simply stopping an Amazon EC2 instance doesn’t count, since it would leave all attached Elastic Block Store (EBS) volumes running. That means that while you’d retain the privilege to restore the instance in the future, Amazon would continue charging you for the EBS volumes over the long haul. 

The best way to avoid that is to fully terminate the instance, which would automatically delete everything — including the attached EBS. 

5. Maintain continuous AWS sizing

Right sizing, as it turns out, is not a one-time engagement. Cloud workloads tend to run continuously under variable parameters and needs. 

So, even when you manage to successfully eliminate all your underutilized resources, you should expect the status quo to change over time, in response to your dynamic service demands and utilization patterns. 

With that in mind, you should schedule your AWS sizing to run as frequently as possible. Once you rightsize the resources accordingly during migration, you should then proceed to track all the relevant usage, performance, and cost parameters. This allows you to respond to changing workload demands with appropriate AWS sizing.  

6. Take advantage of AWS Auto Scaling

One Amazon feature that you might find particularly helpful when it comes to right sizing is AWS Auto Scaling. 

Built for cloud application scaling, the feature consistently keeps tabs on your application’s capacity demands, and then proceeds to adjust cloud resources accordingly. 

That’s not all. With one easy step, you can set AWS Auto Scaling to quickly perform multiple resource scaling across different applications and services. This entire procedure takes only a couple of minutes, within which you also get to optimize the performance and costs of your cloud services. 

Now, to be specific, AWS Auto Scaling is mostly ideal for those applications that are characterized by steady utilization patterns, along with occasional variations on an hourly, daily, or weekly basis. You can count on it to expand and scale down your Amazon EC2 instance capacity in response to traffic fluctuations. 

So, instead of acquiring on-demand instances that would be potentially underutilized, you get to rely on the power of AWS Auto Scaling. Users just need to run it on Reserved Instances — which, according to Amazon, are up to 72% cheaper than On-Demand Instances. 

7. Migrate between instance families

AWS sizing isn’t always about terminating instances. While that’s the standard approach, it turns out an Amazon instance can still be right sized by moving to a different model within the same instance family. 

And it doesn’t stop there — you could, alternatively, choose to transfer to another instance family. These are all acceptable AWS sizing strategies. It’s worth noting, though, that working within the same instance family is much simpler than shifting between different families. 

For instance, if you go for the former option, you need to take into account basic Amazon EC2 instance parameters such as ephemeral storage, network throughput, memory, and vCPU. 

Case in point, a user whose maximum memory and CPU usage fail to exceed 40% over a four-week period can go ahead and seamlessly split the EC2 instance in half. That would mean migrating from, say, a c4.8xlarge EC2 to a c4.4xlarge EC2  — which would translate to savings of $190 for every 10 days. 

As for migrations involving different instance families, you should ensure that the previously held instance and the new one are compatible in terms of platform, network, and virtualization type. 

8. Consider reserved instances and savings plans

Although Reserved Instances and Savings Plans compel buyers to commit one or three years in advance, the fact of the matter is, they are much cheaper than On-Demand Instances. Amazon states the discount here can be as much as 72%, which makes Reserved Instances a worthwhile right sizing consideration. 

Once you get a good idea of your current workload capacity and utilization patterns, you’ll be able to accurately forecast your future usage levels, as well as the scale of cloud resources that you might need. 

With these insights, you should then have an easy time working out the appropriate volume of Reserved Instances to purchase, plus the prospects of the Amazon Savings Plans. 

All these are thoughtful ways of right sizing your cloud resources to minimize the costs. 

9. Try out spot instances

Another favorably-priced instance type that you might want to capitalize on as part of your AWS sizing is Spot Instance. 

The cost benefits here are potentially immense, as Spot Instances happen to even be cheaper than Reserved Instances. According to Amazon, you could purchase them for up to 90% less than their On-Demand counterparts. 

If you choose to proceed, you’ll notice that Spot Instances come as unused EC2 instances. The only problem is, in the event such an instance is required at an on-demand rate, you’ll only get a two minutes notice to migrate your workloads. 

On a brighter note, however, while this whole arrangement disqualifies Spot Instances for mission-critical workloads, at least you can use them for machine learning, continuous integration and continuous delivery, big data analytics, testing, and many other operations. 

10. Leverage AWS sizing tools

Don’t go at it alone. Although it’s possible to perform AWS sizing manually, the best service optimization results come from combining best practices with advanced right sizing tools. 

These are software solutions that have been developed to not only optimize your cloud resource usage, but also help you minimize the corresponding service costs. 

The good thing is, you don’t even have to search far and wide. Amazon itself offers, among other features, these three solid tools that you’ll find to be very helpful in your AWS sizing: 

  • Trusted Advisor: This is a dedicated Amazon right sizing tool that helps you dig deep into your AWS environment to pick out all the underutilized resources that you could do without. Other than that, Trusted Advisor generates real-time insights into your service usage, plus manages to offer cloud resource recommendations across five essential categories — service limits, fault tolerance, security, performance, and cost optimization. 
  • AWS Cost Explorer: The AWS Cost Explorer tries to keep you informed of your Amazon Cloud service costs, usage patterns, plus potential anomalies that could be compromising your cloud costs. You can use it to monitor usage trends in real-time, analyze the variables accordingly, as well as provide detailed reports on the cost drivers, usage of EC2 instances, Savings Plans, etc. 
  • Amazon CloudWatch: Amazon CloudWatch is an application and infrastructure monitoring tool that grants you a 360-degree overview of your cloud performance, resource usage, and application health. Some of the metrics users track here pertain to network throughput, CPU utilization, and traffic. Plus, you can view in-depth usage reports on your Amazon EC2 instances, which are great for monitoring performance, and resource utilization. 

You don’t have to restrict yourself to Amazon’s native tools, though. Thanks to its API integrations, AWS now supports a range of similar third-party solutions. They specialize in not only usage tracking, but also cost management, resource monitoring, and infrastructure optimization. 

11. Maintain the analytics framework after AWS sizing

The analytics framework that you managed to put up doesn’t become useless after AWS sizing. If your first few right sizing attempts turned out to be successful, that’s great — but, don’t get carried away by the temporary victory. There’s still so much more to come, and you’ll need all the AWS intelligence you can find. 

By now, your company has probably had a good taste of the sheer power of AWS, and the performance benefits that come with it. So, chances are, you’re in this for the long haul. Your organization will probably keep expanding its AWS footprint for the foreseeable future. 

As such, you can bet that AWS sizing will always be an integral part of your cloud services. That alone should be reason enough to keep your AWS analytics framework running at all times.

Please note, however, that the process of right sizing doesn’t get easier. The larger your infrastructure grows, the harder you’ll find it to keep tabs on your resources, usage patterns, performance metrics, and service costs. 

That’s how companies ultimately find themselves drowning in huge AWS losses — usually in the form of extra costs and wasted spend. Especially, if companies don’t have a solution that gives them complete visibility into their cloud costs.

With CloudZero, your engineering teams can see the cost impact of their work, discover what AWS services cost them the most and why, and drill down to see the individual components that drive their spend.

Additionally, CloudZero’s Cost Intelligence Team is here to provide you with custom cost saving recommendations and coach you on cost optimization best practices. The hardest part of any initiative can be figuring out where to start. But CloudZero is here to remove any uncertainty you may have while helping you get started fast.

To see how CloudZero can help you gain the cloud cost visibility you need to make informed right sizing decisions that will help you reduce your spend and optimize costs, .

The Modern Guide To Managing Cloud Costs

Traditional cost management is broken. Here's how to fix it.

Modern Cost Management Guide