Today we'll cover another chapter from the upcoming VCP6.5-DCV Study guide. There is no particular order when those chapters are published, but each chapter is a single blog post. Whether it is enough to cover everything or not, this is the way we proceed.
As you know, the latest vSphere 6.5 has now its certification exam. (since April). Not many guides are online so far, so we thought that it might be (finally) perhaps, a good idea to get things up.
I think the majority of new VCP candidates right now will go for the VCP6.5-DCV even if the VCP6-DCV seems less demanding. There are fewer topics to know.
Exam Price: $250 USD, there are 70 Questions (single and multiple answers), passing score 300, and you have 105 min to complete the test.
Tip: Check our How-to, tutorials, videos on a dedicated vSphere 6.5 Page. (work in progress).
Check our VCP6.5-DCV Study Guide Page.
You can download your free copy via this link – Download Free VCP6.5-DCV Study Guide at Nakivo.
VCP6.5-DCV Objective 3.5 – Set up and Configure Storage I/O Control (SIOC)
- Describe the benefits of SIOC
- Enable and configure SIOC
- Configure/Manage SIOC
- Monitor SIOC
- Differentiate between SIOC and Dynamic Queue Depth Throttling features
- Determine a proper use case for SIOC
- Compare and contrast the effects of I/O contention in environments with and without SIOC
- Understand SIOC metrics for Datastore Clusters and Storage DRS
Describe the benefits of SIOC
Storage IO Control (SIOC) only kicks in when there is a contention. SIOC makes sure that every VM gets its fair share of storage resources. Storage I/O control 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 , ll VMs are set to Normal (1000). You set shares per VMDK. You can adjust the number for each based on need. The default is 1000.
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).
Activate at the datastore level via vSphere Client or vSphere Web client.
Enable and configure SIOC
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 an upper limit of I/O operations per second (IOPS) allowed for each virtual machine. Those settings are per-VMDK so you could possibly prioritize (or limit) the virtual 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…
- Shares – select relative amount of shares (low, normal, high or custom)
- Limits – enter the upper limit of storage resources to allocate to your VM (to your VMDK).
IOPS are the number of I/O operations per second. By default, IOPS are unlimited. You select Low (500), Normal (1000), or High (2000), or you can select Custom to enter a user-defined number of shares.
In case you're getting an error on activating SIOC this can be due to 2 reasons:
- Not having proper licensing – VMware vSphere Enterprise Plus is required. Yes, 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.
TIP: What's the difference between vSphere Standard and Enterprise Plus.
If you select a storage policy, do not manually configure Shares and Limit – IOPS.
Configure/Manage SIOC
Covered above.
VCP6.5-DCV Objective 3.5: Monitor SIOC
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.
Where?
vSphere Web client > Datastore > Monitor tab > Performance tab > View drop-down menu > select Performance.
The datastore Performance tab is used to monitor 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 you to monitor:
- Average latency and aggregated IOPS on the datastore
- Latency among hosts
- Queue depth among hosts
- Read/write IOPS among hosts
- Read/write latency among virtual machine disks
- Read/write IOPS among virtual machine disks
Differentiate between SIOC and Dynamic Queue Depth Throttling features
Dynamic Queue depth throttling aka “Adaptive Queue Depth”, is able to adjust the LUN queue depth. The algorithm which is used kicks in when storage I/O congestion returns QUEUE FULL or BUSY status codes. When these codes are received, the queue depth is cut in half.
Storage I/O Control uses proportional shares when there is congestion to allow for a proportional amount of I/Os. Much in the same way share values can be assigned to CPU or RAM within DRS resource groups.
Determine a proper use case for SIOC
First, as I already invoked, make sure that you have Enterprise Plus license. The SIOC can be configured making sure that all VMs get a correct allocation of storage resources. With SIOC enabled on a datastore, you prevent the other VMs from “noisy neighbor” situation where a single VM takes all the resources.
The device's latency is monitored. If latency is higher than configured values, SIOC kicks in and reduces the latency by throttling back VMs that are exceeding their consumption of IOPS.
VCP6.5-DCV Objective 3.5: Compare and contrast the effects of I/O contention in environments with and without SIOC
SIOC enabled, no VM can take over the datastore's resources by exhausting them. With SIOC, reservations, shares and limits, you can control the storage IO on the datastore. Without SIOC you can use shares, limits, but you can't control the over-all datastore performance because you don't have a hand on the threshold value (30ms by default).
Understand SIOC metrics for Datastore Clusters and Storage DRS
There are few metrics which are important and are available on the datastore performance tab;
- Average latency and aggregated IOPS on the datastore
- Latency among hosts
- Queue depth among hosts
- RW (Read/write) IOPS among hosts
- RW (Read/write) latency among virtual machine disks
- RW (Read/write) IOPS among virtual machine disks
Well, this is it for SIOC today. I think a very useful chapter. Important to know as well, that SIOC isn't available for VMware vSAN datastores (as of vSAN 6.6.1). This is an important fact as the only way to limit the VM's consumption on vSAN datastore is through VM storage policy. (there is an option to enter IOPS limit per object).
VM storage policy within vSAN cluster is able to define IOPS limit for a disk. IOPS is calculated as the number of IOs using weighted size. By default, the system is using a base size of 32KB, then a 64KB IO will represent 2IO.
More from ESX Virtualization:
- How-to check Queue Depth Of Storage Adapter or Storage Device
- What is VMware vMotion?
- What is VMware Cluster?
- What is VMware Storage DRS (SDRS)?
- Ditch Your HDDs For ACloudA Gateway
Stay tuned through RSS, and social media channels (Twitter, FB, YouTube)
sena says
I have DRS enabled in my vsphere 6.5, Can I use SIOC? any limitation or conflict inbetween?
also how “SAN with auto-tiering has to be certified for SIOC”, I need a reference or KB please. thanks