VMware has released two technical whitepapers regarding storage I/O control.
Storage I/O Control Technical Overview and Considerations for Deployment
Storage I/O Control (SIOC) provides storage I/O performance isolation for virtual machines, thus enabling VMware® vSphere (“vSphere”) administrators to comfortably run important workloads in a highly consolidated virtualized storage environment. It protects all virtual machines from undue negative performance impact due to misbehaving I/O-heavy virtual machines, often known as the “noisy neighbour” problem. Furthermore, the service level of critical virtual machines can be protected by SIOC by giving them preferential I/O resource allocation during periods of congestion. SIOC achieves these benefits by extending the constructs of shares and limits, used extensively for CPU and memory, to manage the allocation of storage I/O resources. SIOC improves upon the previous host-level I/O scheduler by detecting and responding to congestion occurring at the array, and enforcing share-based allocation of I/O resources across all virtual machines and hosts accessing a datastore. With SIOC, vSphere administrators can mitigate the performance loss of critical workloads due to high congestion and storage latency during peak load periods. The use of SIOC will produce better and more predictable performance behavior for workloads during periods of congestion. Benefits of leveraging SIOC:
- Provides performance protection by enforcing proportional fairness of access to shared storage
- Detects and manages bottlenecks at the array
- Maximizes your storage investments by enabling higher levels of virtual-machine consolidation across your shared Datastores
The purpose of this paper is to explain the basic mechanics of how SIOC, a new feature in vSphere 4.1, works and to discuss considerations for deploying it in your VMware virtualized environments.
Managing Performance Variance of Applications Using Storage I/O Control
Application performance can be impacted when servers contend for I/O resources in a shared storage environment. There is a crucial need for isolating the performance of critical applications from other, less critical workloads by appropriately prioritizing access to shared I/O resources. Storage I/O Control (SIOC), a new feature offered in VMware vSphere 4.1, provides a dynamic control mechanism for managing I/O resources across VMs in a cluster. The experiments conducted in VMware performance labs show that:
- SIOC prioritizes VMs’ access to shared I/O resources based on disk shares assigned to them. During the periods of I/O congestion, VMs are allowed to use only a fraction of the shared I/O resources in proportion to their relative priority, which is determined by the disk shares.
- If the VMs do not fully utilize their portion of the allocated I/O resources on a shared datastore, SIOC redistributes the unutilized resources to those VMs that need them in proportion to VMs’ disk shares. This results in a fair allocation of storage resources without any loss in their utilization.
- SIOC minimizes the fluctuations in performance of a critical workload during periods of I/O congestion. For the test cases executed at VMware labs, limiting the fluctuations to a small range resulted in as much as a 26% performance benefit compared to that in an unmanaged scenario.