There is a way to detect the (real) max IOPS on cloud volumes properly?


Greetings from Brazil.

I am tuning a cloud server hosted at Hetzner, and looking at this article: Give Love to Your SSDs – Reduce innodb_io_capacity_max at Percona to help me to adjust the IO capacity.

After talk to Hetzner support, they told me hat the volume that is provided with the cloud server can reach 10K IOPs, but it can vary a lot, so, i cannot rely on this 10K info. And the SSD volumes bought separately to increase disk space can reach only 3.5K IOPs MAX… tooo slow! :-(((

And not in Hetzner. All “cloud providers” like Digital Ocean, Linode, AWS EC2, etc… all of these “cloud server storage volumes” are not a physical disk!

So, there is a way to get the real MAX write IOPS these kind of cloud disk volumes can provide to tune innodb_io_capacity and innodb_io_capacity_max properly?

Most cloud providers, AWS for example, offer provisioned IOPS which means you are guaranteed to get the amount of IOPs you specify. The “standard tier” of attached storage usually has no guarantee. Your best option is to use sysbench and run some basic IO tests over long periods (24-48hrs) and take the average as “max IOPs”.


Hello, thanks for you answer.

Try to follow the link below, from Percona blog, but i cannot understand the result as it does not show the IOPs and as the article is from 2008; some sysbench arguments are deprecated and i cannot get an accurate result:

Can you help me find the right arguments to put on this sysbench call?

1 Like

if your goal is simply tune innodb_io_capacity (and max) then I suggest you start with the default values. I’ve only seen a need to change these on very specific situations. Most of the time the defaults work just fine.


Yes, thats the main goal and the server is working smoothly. But I want to dig deeper to study purposes (and of course, be ready if i need to tune it).

An example, a write IOPS at 3500 (datacenter told me, but i need to check it for myself). But the innodb_io_capacity default is 200 and max is 2000. Should i increase the max to this 3500 or should i make my own performance checks first ?

1 Like