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
Related videos on Youtube
Ruchit Rami
Updated on September 18, 2022Comments
-
Ruchit Rami over 1 year
I am relatively new to AWS and disk performance. I am trying to figure out how much provisioned IOPS does my application need to perform well.
Currently My PHP and MySQL application is hosted on EC2 instances with simple EBS volumes attached. The monitoring of EBS volumes provides Read throughput and write throughput with some other matrices. How can I find IOPS of my current EBS volume from Read throughput(~ 400 Ops/s) and write throughput(~ 4000 Ops/s) data?
If I go with the unit of operations/second, IOPS reaches about 4.5K, which I think is not a correct one as simple EBS volume is meant to work alright only on 100 IOPS and occationaly few hundred.
-
ewwhite over 11 yearsHow are you measuring?
-
Ruchit Rami over 11 yearsFrom the monitoring data provided by AWS.
-