AWS Elastic Volumes and FittedCloud EBS Optimizer

AWS released a new Amazon EBS feature called Elastic Volumes last year. This new feature supports the following capabilities.

  • Dynamic capacity increase
  • Dynamic IOPS changes (increase or decrease)
  • Change volume types (for e.g. gp2 to st1 or sc1)

All of these changes can be done without application downtime or performance impact, an aspect FittedCloud has touted for a long time. Changes can be done from AWS console, using CLI or APIs.

FittedCloud had seen this need and had addressed the dynamic needs of customers through the introduction last year of the FittedCloud EBS Optimization solution that offers all of these capabilities (and more).

Our customers have asked how this capability impacts FittedCloud’s EBS Optimization solution and we wanted to explain how FittedCloud solution offers great value on top of Elastic volumes.

First, we are excited about the Elastic Volume feature as it offers mechanisms built into AWS infrastructure to change capacity and performance provisioning. Without Elastic volumes, FittedCloud was left to implement such capabilities at the instance level. Technically in some cases it allows us to simplify our software implementation. For example, currently when we expand a FittedCloud managed volume, new volumes are allocated and added to the pool. This requires FittedCloud to manage multiple volume pools. With the new AWS Elastic Volume feature, we can now simply expand an existing volume. It also allows us to support certain features in an operating system independent manner, since provisioning changes can be done externally.

Let’s talk now about how FittedCloud offers more value to customers by building on top of Elastic volumes.

No capacity decrease

You will notice that AWS Elastic Volumes do not support decreasing storage capacity.  You can only increase capacity!  Obviously this doesn’t work for existing environments that are already over-provisioned (for the very reason that capacity cannot be dynamically expanded) or where the capacity reduction happens often. FittedCloud EBS Optimizer supports capacity reduction in a transparent manner without user action or application downtime.

Burden of analysis and decision making is still on customers

With AWS Elastic Volumes, the burden of analyzing utilization patterns, making appropriate decisions and making necessary changes are all on the customers. AWS only provides the mechanisms (GUI, CLI, APIs) that can make the changes. FittedCloud EBS Optimizer relieves customers of this burden.

No Automation

As mentioned AWS only provides mechanisms to make capacity/performance changes. Customers will have to determine ways to identify and implement such changes. This can be a major challenge in large environments. For example in order to increase capacity, customers would have to keep an eye on capacity utilization, and trigger changes when the utilization reaches a certain threshold at an individual volume, instance level.  Scripts/Lambda functions will have to be written and maintained to ensure they operate as expected in ever changing environments. While possible, such methods will be tedious, error prone and will not scale easily.

FittedCloud EBS solution centralizes and automates the management of entire customer environments, by constantly monitoring and making necessary provisioning changes as needed.

Machine Learning

Based on our experience, it is very clear that the combination of machine learning and elastic resource provisioning is the future. No one will be able to manually monitor resource provisioning and come up with optimum allocation schemes easily that can adopt to ever changing work loads. Machine learning algorithms can be used to identify utilization patterns and provision capacity such that provisioning matches application needs in a most accurate and optimum manner.  Also, most importantly, machine learning algorithms constantly learn and adapt to changes in usage patterns offering a completely lights out solution.

The following table summarizes the differences:

Elastic Volumes vs FittedCloud EBS optimizer

While it is early for us to know exact details of how the new feature works, we have done some performance benchmarks to determine how migration operations compare (It does seem that AWS is moving data from one location to another even when performance changes are made) and we have found that FittedCloud migration performs significantly better than Elastic Volumes. This test was run on a c4.4xlarge instance.

Elastic Volume Performance Comparison

 

Other EBS related Blogs

How to reduce the size of EBS Windows boot volume in AWS?

How to shrink EBS root volumes in AWS – with just one click

How to reduce AWS costs using machine learning driven EBS IOPS provisioning

AWS Elastic Volumes and FittedCloud EBS Optimizer

FittedCloud AWS EBS Optimizer for Docker Containers

An Open Source AWS EBS Cost Analyzer

Is it possible to use EBS gp2 instead of io1, achieve same performance and save 50%?

How to optimize AWS EBS using LVM and reduce cost

How to create thin provisioned AWS EBS volumes and save a ton!

AWS EBS Performance – Confused?

FittedCloud Cloud Cost Optimization Solutions
FittedCloud offers machine learning based cloud cost optimization solutions that help customers reduce AWS spend significantly. Our current solution includes machine learning driven actionable advisories with click through actions for EC2, EBS, RDS, DynamoDB, ElastiCache, ElasticSearch, AutoScale, Lambda, etc. and full/lights out automation for EC2, EBS, DynamoDB and RDS. Our solution typically can save customers up to 50% of their cost on AWS. For more details, please visit https://www.fittedcloud.com/.