Storage I/O Control on vSphere 4.1

Storage I/O Control (SIOC) extends the use of Shares and limits to Storage I/O Resources thus enabling prioritizing of Storage I/O in Clusters. Using Storage I/O Control , We will be able to guarantee the I/O allocation for Critical Virtual machines in a cluster . There are some important requirements and considerations that has to be considered when we work with Storage I/O .

Requirements for Storage I/O Control :

  • Datastores that are enabled for SIOC must be managed by a Single Virtual Center.
  • SIOC is currently supported in FC and iSCSI Storage only.
  • SIOC does not support datastores with multiple extents.
  • Datastores that are provisioned from Storage arrays with Automatic Storage tiering capabilities has to be certified by VMware . Ensure that the array is part of VMware Storage/SAN Compatibility guide.
  • Also , Please ensure that vSphere Enterprise License is applied for the Hosts in the Cluster .

Enabling Storage I/O :

Host :

  • Select the datastore for which SIOC need to be enabled using the datastore view in the vSphere Client Inventory and Click Configurations tab
  • Click Properties
  • Select Enabled under Storage I/O Control as shown below .

  • Once Enabled , we can set the Congestion threshold by selecting Advanced as shown below .

Virtual Machine :

  • Select a VM and click Edit Settings
  • Select DISK from the Resource tab
  • Select a Virtual Disk from the list and click SHARES and allocate shares to the Virtual machine ( High / Normal / Low ) or allocate custom share.
  • Now select the LIMIT-IOPs and enter the upper limit of storage resources that can be allocated to the VM

When does Storage I/O Kick in ?

When we enable SIOC , ESX / ESXi monitors datastore latency and when the latency exceeds the threshold , the I/O to the Virtual Machines are adjusted according to the shares and limits set for the Virtual machine. This means VMs with higher shares will have greater access to Storage Array .

Important Considerations :

  • When we allocate Storage I/O resources , we can limit the IOPS allowed for the VM.
  • We MUST set limit on all disks in a Virtual Machines with more than one virtual disk else the limits will not be enforced.
  • We must ensure that all ESX / ESXi hosts that are connected to the datastore support SIOC
  • All datastores that share the same spindle on the array must have the same congestion threshold
About Sudharsanhttp://vpando.comThis blog is to share my PERSONAL thoughts on Virtualization and Storage . My name is Sudharsan and I am a VMware Certified Professional and Microsoft Certified Technology Specialist on Hyper-V based out of India . Disclaimer : The views expressed anywhere on this blog is strictly mine .

7 thoughts on “Storage I/O Control on vSphere 4.1

  1. •All datastores that share the same spindle on the array must have the same congestion threshold

    Regarding this last part, does VMW recommend not to set different congestion threshold for different datastores? In many case, most people only have 1 array box, then the above suggestion is kind of a bit harsh.

    Any idea?

  2. HI Jack – For Example , If there are two data stores created from a Single Raid Group of 5 Disks both these data stores need to have same Congestion threshold. If they come from Different Raid Groups , they can very well have different Congestion thresholds.

  3. So what this mean is say if I have an array box contains 14 x 600GB 15K disks and forming one big Raid5, then I created two VMFS datastore on this Raid5 (ie, same 14 spindles), then I cannot have different Congestion thresholds on these two datastore?

    If the answer is yes, then it’s not very user friendly, as many SAN vendor can have multiple array boxes to form a big Raid group, say for example Equallogic can have up to 16 boxes to form a big Raid, then this limitation is saying I cannot have different Congestion thresholds on different datastores simply because all datastores are sharing the same spindles (ie, 16 boxes x 14 disks = 224 disks)

Leave a comment