Find current IOPS usage of EBS volume from my application on AWS EC2
Solution 1:
From within your application/instance, I'd attempt to trace the output of iostat
during controlled application runs. Perhaps iostat -x 1
in a terminal window.
I also like the collectl utility for watching this output. nmon is a good tool for this as well.
Also read through this article... Even Stranger than Expected: a Systematic Look at EC2 I/O.
Solution 2:
You can check this in cloudwatch
Check for EBS Metrics and choose VolumeWriteOps (Metric Name)
take any sample from the graph
for e.g.
Data-point : 152398 at 2011-02-10T07:54+0000 (Any highest count from the graph)
so it means 152398 IOPS for 10 mins intervel
calculate this for 1 min
152398 IOPS / 10 minutes = 15239.8 IOPS/minute
then calculate this for 60 seconds
15239.8 IOPS / 60 seconds = 253.996666667 IOPS/second
so 253
is your average IOPS / seconds
for the volume