DEV Community

Cover image for Start with the quick wins - Optimizing AWS EBS volumes for cost savings !!
VijayaNirmalaGopal
VijayaNirmalaGopal

Posted on

Start with the quick wins - Optimizing AWS EBS volumes for cost savings !!

Welcome to another blog on cost optimizing in AWS

There is always a starting trouble. Post the decision on cost optimization, my next stop was to "Google" on best practices for AWS accounts, cost savings, Cost explorer reports, budgets, services to be started & stopped, right sizing, purchase plans, savings plan and yeah, before all that, go ahead and reserve the instances first. Phew !!!

With so much in the bucket list, it is challenging to convince teams/organizations to start with 'Where & What'. While we were in middle of many tasks like AWS Organizations setup, Revising IAM Policies, Grouping Users, Setting up Lifecycle Rules, Drafting & Automating Best Practices, SCPs, Talking to teams, Setting up cost categories, Tagging resources, eliminating idle resources... But by half the way, I found that starting with EBS volumes is the right choice :-)

AWS simply puts as "The low hanging fruit" and Yes it is. AWS EBS Volumes can be migrated with no down time, just go ahead with gp3 for all gp2 volumes, irrespective of other theories. Why ? Well, it saves you 20% cost on volumes of gp2 to gp3.

So there are ways to see what we can improve in 'AWS EBS Volumes'. They are,

1) Stay up to date with EBS announcements w.r.t pricing & performance and assess what is best for the project/organization
2) Enable AWS Cloudwatch metrics for AWS EBS Volumes and look into the metrics to derive what's best and how the volumes could be improved for storage size, throughput, iops or so
3) Use AWS Compute Optimizer to assess & recommend the best for the volume migrations based on the statistics & history of usage and performance

When to use What
1) Migrate gp2 to gp3: For my assessment & personal use, I had quite some volumes in my account and I just went ahead & migrated those to gp3. This type will suit you if you have consensus in your team/groups to migrate just for cost. But go for the next one, if you need to put more of thought process into it

2) Use AWS CW Metrics: If the workloads has been running for quite some time, and your migration needs revised settings in terms of storage size, iops, throughput, then CW Metrics has to be read, assessed and adjust your parameters during the EBS migrations

3) Use AWS Compute Optimizer: Enable the AWS Compute optimizer, and click on "EBS Volumes" to get assessed. Compute Optimizer, lists all volumes as "Not Optimized" for those which needs migrations along with the recommended options for the same. Take in the suggestions and apply the same. This is the most reliable one though !!

Action

Let us migrate gp2 to gp3 volume(s) . This is from the AWS Management Console, and yes, the same can be done using AWS CLI, SDK, as Code as well

Step1_
1) Existing volumes of gp2; as I said, no optimizer used here

Image description

** Step2**_
1) From Volumes console view, click on "Actions->Modify Volume" option to work on changes to the volume
2) Any preferred EBS volume type can be selected here, along with size, iops, throughput

Image description

i) There is warning on billing to start immediately post the migration & "Ok" state of volumes. Just go ahead 'Modify'
Image description

Step3_
1) this is the migrated new EBS volume to gp3 in "Ok" state

Image description

Voila, my EBS Volumes are now gp3 and costs me 20% less of cost, from what it costed earlier.

Bills cannot be reflected immediately but we know from pricing pages and can't wait to gain on other categories.

Assessing EBS Volume Migration from AWS Pricing Calculator

i) How it looks on using few hundreds of gp2 volumes

Image description

ii) Pricing for gp3 with the same no. of volumes & storage

Image description

Isn't this interesting to assess and see before hand, just nor how much we can save, but how much can we improve & scale.

Glad to be here on sharing with fellow community builders !!

Top comments (0)