This post will cover VCP6-DCV Objective 3.5 – Setup and Configure Storage I/O Control. Storage I/O is one of the features that are overlooked. But Storage I/O can “heal” part of your storage performance problems by setting a priority at the VM level (VMDK). You know the “noisy neighbor story”….
When you enable Storage I/O Control on a datastore, ESXi host starts to monitor the device latency that hosts observe when communicating with that datastore. When device latency exceeds a threshold, the datastore is considered to be congested and each VM that accesses that datastore is allocated I/O resources in proportion to their shares. (by default all VMs are set to Normal (1000) You set shares per VMDK. You can adjust the number for each based on need. Default is 1000.
I started to cover this VCP6-DCV exam blueprint since few weeks and It seems that for VCP6 there is more material to study and more topics to master than for previous version of VCP as the technology has evolving with each release of vSphere. But this never mind, we like technology, we like virtualization and we like VMware. Let's kick some tires.. -:) For whole exam coverage I created a dedicated VCP6-DCV page.
VMware vSphere Knowledge
- Enable/Disable Storage I/O Control
- Configure/Manage Storage I/O Control
- Monitor Storage I/O Control
Thanks to Simplivity you can download this VCP6-DCV Study Guide as a Free PDF !!
Enable/Disable Storage I/O Control
Before we jump in I'd like to explain how storage I/O control helps to prioritize certain VMs over the others. I think it's best to check out this image from VMware which shows basically that after activating the SIOC on shared datastore and setting up the shares (at the VMDK level) on the VMs properties, the SIOC is able to prioritize those VMs over the others….
Quote from VMware:
Storage I/O Control operates as a “datastore-wide disk scheduler.” Once Storage I/O Control has been enabled for a specific datastore, it will monitor that datastore, summing up the disk shares for each of the VMDK files on it. Storage I/O Control will then calculate the I/O slot entitlement per ESXi host based on the percentage of shares virtual machines running on that host have relative to the total shares for all hosts accessing that datastore.
Few limitations and requirements:
- NFS v4.1 isn't supported (it is for NFS v3).
- Storage I/O Control does not support datastores with multiple extents.
- SAN with auto-tiering has to be certified for SIOC.
- Datastores that are Storage I/O Control-enabled must be managed by a single vCenter Server system.
- Must be disabled before removing a datastore.
- Raw Device Mapping (RDM) is not supported. (it is on iSCSI NFS and FC).
Storage I/O Requirements at the Online vSphere 6 documentation center. (here)
Activate at the datastore level via vSphere client or vSphere Web client.
Configure/Manage Storage I/O Control
Configuring Storage I/O Control is a two-step process
1. Enable Storage I/O Control for the datastore
In the vSphere Client > select a datastore > Configuration tab > Properties > Storage I/O Control, select the Enabled check box.
The advanced settings – Threshold – default value there. Check if the value is 30ms.
2. Set the number of storage I/O shares and upper limit of I/O operations per second (IOPS) allowed for each virtual machine. Those settings at the VMDK level so you could possibly prioritize disk where you important production DB sits!
Set the threshold. More the VM is important, greater the number…… You can use the drop down or the custom and enter your value…
In case you're getting error on activating SIOC this can be due 2 reasons:
- Not having proper licensing – Enterprise Plus is required. Storage I/O Control (SIOC) requires Enterprise Plus licensing. Without this license, the option to enable SIOC is grayed out
- Check that the host is installed with ESXi 4.1 or higher.
Monitor Storage I/O Control
There is a Performance TAB to monitor Storage I/O. How Storage I/O Control handles the I/O workloads of the virtual machines accessing a datastore based on their shares.
Datastore performance charts allow monitoring:
- Average latency and aggregated IOPS on the datastore.
- Latency among hosts n Queue depth among hosts.
- Read/write IOPS among hosts.
- Read/write latency among virtual machine disks n Read/write IOPS among virtual machine disks.
vSphere Web client > Datastore > Monitor tab > Performance tab > View drop-down menu > select Performance.
- Administering VMware Virtual SAN
- vSphere Storage Guide
- vSphere Resource Management Guide
- vSphere Client / vSphere Web Client
Links: VCP6-DCV page.