NEW Upcoming Enablement Session: Optimizing Auto Scaling Groups for ECS - Register Now

NEW Featured eBook: AWS Cloud Cost Allocation: The Complete Guide - Download Now

EC2 and RDS Are the Most Expensive AWS Services on Your Bill: Learn How to Rightsize Them Now

Amazon EC2 rightsizing and Amazon RDS rightsizing are some of the most critical AWS cost optimization strategies. Unfortunately, many organizations focus on provisioning the biggest EC2 or RDS instances to get services up and running quickly. These organizations also focus too much on performance at the expense of cost. They only start dealing with cost control as an afterthought. This might seem like the right thing to do when the pressure is on to get to the market. However, it often leads to costs spiraling out of control. If you’re like most organizations, EC2 and RDS are likely the most expensive items on your AWS bill. Rightsizing these resources goes a long way toward taming cloud costs.  To find out whether you have rightsized your EC2 and RDS, you can use Amazon CloudWatch. This tool gives you a snapshot of CPU utilization, disk I/O, and network throughput. With this information, you can match the observed peak metric to a new and cheaper instance type. To achieve AWS cost optimization, you must make rightsizing an ongoing process. Here are some handy tips for rightsizing RDS and EC2.

Tips for Rightsizing Amazon EC2

Organizations that have deployed AWS usually have several EC2 instances running in their deployment. Often, these organizations pay for these instances but don’t use them to their full capacity. Failing to consider EC2 rightsizing is one of the major causes of cloud waste. If you’re tired of spending money you don’t have to on your AWS bill, here’s an AWS EC2 rightsizing guide.

1. Leverage AWS Well-Architected

Use the AWS Well-Architected Framework as best-practices guidelines for assessing cost optimization. You’ll understand the implications and trade-offs of your current decisions and identify opportunities for improvement. 

2. Memory and CPU Usage

Pay particular attention to memory and CPU usage. Eliminate underutilized and idle EC2 instances. As a rule, rightsize instances with maximum CPU usage and less than 40 percent memory for more than a month.

3. Establish Usage Needs

As your organization monitors current performance, you also need to identify usage patterns to inform your rightsizing decisions.

4. Turn Off All Idle Instances

The easiest way to cut costs is to terminate all instances you no longer use. Generally, you should stop or terminate any EC2 instances that have been idle for more than two weeks.

5. Select the Right Instance Family

You can rightsize an EC2 instance by migrating it to a different model within the same instance family. Consider vCPU, network throughput, memory, and temporary storage while choosing the model. Alternatively, you can migrate it to another instance family.

Tips for Rightsizing Amazon RDS

Amazon RDS is powerful and extensively customizable. However, it comes with a complex pricing model that makes it hard to predict costs. As a result, your monthly AWS spend can grow quickly and unexpectedly. Here are some timely tips to help with RDS rightsizing.

1. Leverage AWS Well-Architected

The AWS Well-Architected Framework provides best practices guidelines that can help organizations to evaluate their deployments and implement designs that can scale over time. You can use Well-Architected to identify the pros and cons of your current rightsizing decisions.

2. Determine Instance Usage

Use tools, such as CloudWatch, to check database connections to your RDS instances. Downsize, stop, or snapshot and terminate instances with zero connections.

3. Evaluate Instance Performance

Downsize RDS instances that have less than 50 percent CPU utilization to lower instance classes.

4. Tune Instances to Reduce IO, Memory, and CPU Utilization

Make sure you properly tune DB queries. Optimize tables, create the right indexes, remove redundant indexes, rewrite queries to reduce the data set, and optimize joins. If the RDS load reduces, you can move it to a lower instance class to cut costs.

5. Disable Multi-AZ Deployments

RDS comes with high availability and excellent failover support for DB instances by employing Multi-AZ deployments. But Multi-AZ deployments cost twice as much as single AZ deployments. Disable Multi-AZ if you don’t need it.

6. Optimize Storage Cost

Pay attention to storage costs. Moving your instances to newly launched gp3 volumes will save you up to 20 percent in costs than using gp2 volumes. It also performs better than gp2. In some cases, gp3 volumes are better than io1 and io2.

7. Enable Data Caching

Implementing data caching leads to lesser load times in some RDS instances. As a result, it’s possible to downgrade instance types without drastically affecting performance.

8. Maximize Utilization of Reserved Instances (RI)

Ensure all RIs are in use. If there are unused instances, change the instance type of any RDS to ensure you’re using all RIs.

Conclusion

Rightsizing is an effective strategy for achieving considerable savings on Amazon EC2 or RDS instances. It’s all about making sure your infrastructure meets your organization’s capacity and performance requirements. Rightsizing is a continuous process that requires constant monitoring and analysis of your AWS environment. nOps allows you to track costs, performance, and utilization across AWS accounts, projects, regions, resources, employees, and costs.