The subject of optimizing instance sizes is one that most prudent AWS users often think about. However, they often do not possess the means nor the knowledge to carry out this task effectively. The truth is that there’s a certain degree of complexity that needs to be taken into consideration, the challenge that most users face when it comes to optimizing instance sizes to usage is that they don’t know where to look. But once you figure this part out, things start to appear quite manageable.

Knowing Where To Look

When you jump onto the ‘Services’ section on one of your AWS accounts, you’ll notice that the data related to usage is not directly available. The basic essence of what you get from this data is whether your instances are running or not – not the ideal to look if you’re looking to optimize your instances.

So what’s the next step to take? Where do you get the data related to usage? The answer is simple. Amazon comes directly equipped with a monitoring and management service that allows you to monitor their resources efficaciously. CloudWatch provides AWS users with various metrics, amongst which ‘CPU Utilization’ serves as the easiest and most effective metric to effectively evaluate their usage. The following are a couple of examples that best illustrate the utility of CloudWatch and how it helps users identify whether their instances are undersized (or oversized).

Graph 1 – Identifying when the instance is undersized

NSXFl5vjdpoWsunx3YQZzF9iEFghL8TohkJEABiBPa5ZtSZcIPMUASJp5NifaKFVk4C5V00ilnEzA tvZ Bh4sg K3N9UWBETMk55hzDEyJZauUNbpByAfUVzj2PmOQZhM4t6EjQ
  • The graph above shows the CPU Utilization for an EC2 instance. We notice a near 100% usage for reasonably long periods of time during this one week period.
  • After analysis: This instance can be maintained as it is if the needs are still the same. But it should, however, be upgraded if there is a need for more.  

Graph 2 – Identifying when the instance is oversized i.e. not being used to its fullest potential

uxDHZjr1KSEr4Ga7h6ZprlDiQCeRQqn d9
  • The graph above shows the CPU Utilization for an EC2 instance. We notice that the instance is barely used – the usage is limited to tiny spikes of that attain a value of 1.6% at the most.
  • After analysis: This instance can be maintained as it is if it has no significant impact on the amount of money being spent. But it should, however, be downsized if a cheaper and equally effective alternative is available.

The data on CPU Utilization is the most effective and readily available through AWS. However, there are other metrics that a user might want to consider paying attention to, such as memory usage (more complicated since you need to have a monitoring system in place that allows you to collect and analyze data. You need to have an agent to dive deeper into this), IOPs, & Network (Paying attention to EBS volumes and to making sure that the SSD drive you choose is not a performance bottleneck).

TrackIt – All the data you need, at your fingertips

optimizing instance sizes to usage - image 1

Despite CloudWatch’s usefulness in helping users monitor their usage, it can still be quite an exhausting process, especially for AWS users who have multiple instances running on multiple accounts – to optimize one’s resources by relying solely on CloudWatch. And that’s where TrackIt’s cost and resource optimization AI comes in handy.  

TrackIt provides users with all the relevant data – CPU Utilization (Average Usage, Peak Usage), I/O (Read and Write), Network data (In & Out) & billing data (Amount of $ being spent) – gathered from multiple accounts. This allows them to carry out the task of optimizing instances sizes in tandem with optimizing their overall expenditure on AWS.

Here’s why this is extremely useful: All the data a user needs is presented in a SINGLE dashboard. There’s zero confusion. No need to go searching for additional info. It’s all here. All the information is right at the user’s fingertips. Not only will users be able to rightsize their resources, but they’ll also be able to assess the cost differences that come into play. Hence contributing to a seamless optimization experience.

About TrackIt

TrackIt, an Amazon Web Services Advanced Consulting Partner based in Marina del Rey, CA, offers a range of cloud management, consulting, and software development solutions. Their expertise includes Modern Software Development, DevOps, Infrastructure-As-Code, Serverless, CI/CD, and Containerization, with a focus on Media & Entertainment workflows, High-Performance Computing environments, and data storage.

TrackIt excels in cutting-edge software design, particularly in the areas of containerization, serverless architectures, and pipeline development. The company’s team of experts can help you design and deploy a custom solution tailored to your specific needs.

In addition to cloud management and modern software development services, TrackIt also provides an open-source AWS cost management tool to help users optimize their costs and resources on the platform. With its innovative approach and expertise, TrackIt is the ideal partner for organizations seeking to maximize the potential of their cloud infrastructure.

optimizing instance to usage article - logo trackit