I'd like to make sure that I'm measuring IOPS correctly across Windows and Linux servers. We're busy trying to figure out which SAN would best suit our environment and measuring IOPS across our servers is the kind of thing I just can't get wrong. Little bit of procurement paranoia kicking in.
On the Windows servers I'm using the \PhysicalDisk(_Total)\Disk Reads/sec and \PhysicalDisk(_Total)\Disk Writes/sec performance counters. On the Linux servers I run vmstat and am looking at the bi (read) and bo (write) counters. I'm pretty sure that I've got this right and that both sets of counters equate to IOPS.
If these counters are correct then I have a problem. The SAN we're going for can handle about 1600 IOPS. Our two mail filter servers, which run MailScanner, MailWatch and Sophos, are hitting around 1500 IOPS collectively. Our two MySQL server run at about 1600 IOPS collectively. We're way over the 1600 IOPS theoretical limit.
Hence the question, am I measuring correctly?
Ossan
Following on from the comment thread above,
iostat -dxk 1
will give you r/s and w/s (read and write requests/sec) as well as kbytes read and written.Possibly. Raid 5 is slow for updates. I never have seen Raid 5 used in high perofrmance setups, unless you count Raid 0s over multipel raid 5's as such (Raid 50, 60). On top, seriously - a 5 disc raid 5 is not a "SAN" as "able to handle 100.000thousands of IOPS". It is an end user thingy.
Note the difference: Backup ismost likely not writing out randomly and / or read operrations on a Raid are faster than write.
Two important points here:
be careful using your existing numbers -- depending on the workload, your current usage may reflect what the underlying storage is capable of. For example, you may see mysql using 1600 iops now because that's what those disks can do. If you put it on a SAN that can do 3000 iops, say, then mysql might start doing 3000 iops, and your queries would return faster. Talk with your vendor to properly size based on your workload.
It's important to consider both iops and throughput (MBps), since they are not necessarily proportional and either can be a bottleneck at various points in the SAN -- disk, controller, hba, network, etc. Which of these will apply to you depends on how sequential or random your workload and the i/o size. Again, talk with your vendor to properly size based on your needs.