Is AWS i3.2xlarge limited to 10K IOPS

amazon-instance-storeamazon-web-servicesiops

I'm using an AWS i3.2xlarge EC2 instance and facing a limit of 10K IOPS. I wonder why that is?

I only write on the NVMe instance storage. No matter what I do I can't pass that limit. I thought that I3 class instance could go way above that?

Is there something that I am missing? Do I need a larger instance to reach higher IOPS? Before I try going higher i would like to understand if it is the typical limit for those instance or it is something in my set up?

Was anyone able to achieve higher throughput with that type of instance? Why is the limit 10K IOPS? What's the reason for it? And how to go above it?

Note: I'm running a database application, and making many update request on it.

Best Answer

Are you 100% sure you're writing to the local SSD storage?

It sounds like you may be accidentally using the EBS volume instead, the 10K IOPS limit would suggest that...

How to check: In Amazon Linux 2 on i3.2xlarge the NVMe instance storage is /dev/nvme0n1 while EBS volumes are /dev/xvd*. Check what device is mounted at the directory you're using / benchmarking:

[root@ip-172-31-41-210 ~]# mount
/dev/xvda1 on / type xfs (rw,noatime,attr2,inode64,noquota)
/dev/xvdba1 on /ebs-storage type ext4 (rw,relatime,data=ordered)
/dev/nvme0n1 on /local-storage type ext4 (rw,relatime,data=ordered)

Here I've got a second EBS volume mounted as /ebs-storage and the NVMe instance storage as /local-storage.

Note that the NVMe disk must be explicitly formatted (mkfs) and mounted before it can be used! By default the instance starts with just an EBS-backed root disk and the fast NVMe disk is not used!

Hope that helps :)

Related Topic