Storage I/O Control (SIOC) is one of those features that tend to get forgotten about. I’ve talked to many customers both while I was in the field doing architectures and deployments and still today and many either don’t know about the feature or never looked into it.
SIOC is extremely powerful, it can increase your consolidation ratios on the storage side, allowing more VM’s per datastore. Which leads to lower storage costs and less administrative overhead.
So how does it work? At a basic level SIOC is monitoring the end to end latency of a datastore. When there is congestion (the latency is higher then the configured value) SIOC reduces the latency by throttling back VM’s who are using excessive I/O. Now you might say, I need that VM to have all of those I/O’s, which in many cases is true, you simply need to give the VMDK(s) of that VM a higher share value. SIOC will use the share values assigned to the VM’s VMDK’s to prioritize access to the datastore.
Just simply turning SIOC on will guarantee each VMDK has equal access to the datastore, shares fine tune that giving you the ability to give VMDK’s more or less priority during times of contention.
Here’s a video that demonstrates how you can enable SIOC, set share values, and also monitor SIOC working.
The click through version is available here.