Cloud computing allow us to pay only for what we consume,
the question now for us is, how much do we need, we will discussing this in the context of IOPS for EBS in this article.
Whenever we create a new EC2 instance, we will need to specify the size of our root EBS,
default to 8GB, which comes with 100IOPS (for gp2 EBS, the more space you allocate, the more IOPS you will have)
So when do we know the EBS IOPS is insufficient and need an ugprade?
The metrics to take a look here is:
1. Sum of Read and Write Ops per seconds, take note that the data point in the diagram could be 5 minutes / 1 minute, we need to divide it to per second unit in order to compare it to the IOPS we have.
For example graph showing 80 reads and 500 writes, graph is in 5 minutes interval
IOPS consumed = 80 + 500 / 600 = 0.97 IOPS
0.97 is far below 100 IOPS, hence no upgrade is needed.
But since we are averaging the readings, we might miss out the signal if its close to our limit.
2. Hence we need to cross reference with Queue Length, it simply means how many operation was put on queue as there isn’t enough IO to handle it at that moment, it should always be 0 or close to 0, if you are getting values like 10++, just upgrade the IOPS, topping up another 20 IOPS to it.
3. But we should also take a look at Burst Balance, is that the consumed IOPS just a short burst and able to be covered with the 3000 burst IOPS, if the balance is dropping or it is already at 0, then a huge upgrade will be needed.
Monitoring IOPS is easy, how about upgrading it? How do I get more IOPS?
It depends on your EBS storage type
gp2 – just increase the storage size, the more space you have, the more IOPS you get, how much to upgrade can refer to this table:
Online Upgrading is now supported by AWS, you don’t even have to shutdown for disk upgrading (you do not need to if you want to make use of the extra spaces)
provisioned – its unlikely to use provisioned IOPS when we kick starting our project, unless the project has bunch of budgets and concern more on performance rather than costing :). To upgrade IOPS, just increase the value will do, AWS will increase the bill as well, the maximum value is 50 x [your EBS storage size in GB]
Unfortunately for HDD type storage, there isn’t any options to upgrade IOPS.