Search This Blog

Tuesday, July 9, 2013

Storage Quality of Service (QOS)–Windows Server 2012 R2

 

In today article, we are going to look into another features of Windows Server 2012 R2 (Preview Edition) for Hyper-V. With Windows Server 2012 R2, we now has the option to configure Storage QoS. Storage QoS provides the ability to specify a maximum input/output operations per second (IOPS) value for your virtual hard disk.

What is IOPS?

IOPS — Input/Output Operations Per Second — measure computer storage in terms of the number of read and write operations it can perform in a second.

The four primary factors impact IOPS:

  • Multidisk Arrays – More disks in the array mean greater IOPS. If one disk can perform 150 IOPS, two disks can perform 300 IOPS.
  • Average IOPS per-drive – The greater the number of IOPS each drive can handle, the greater the the total IOPS capacity. This is largely determined by the rotational speed of the drive.
  • RAID Factor – Your application is likely using a RAID configuration for storage, which means you’re using multiple disks for reliability and redundancy. Some RAID configurations have a significant penalty for write operations. ForRAID 6, every write request requires 6 disk operations. For RAID 1 and RAID 10, a write request requires only 2 disk operations. The lower the number of disk operations, the higher the IOPS capacity.
  • Read and Write Workload – If you have a high percentage of write operations and a RAID setup that performs many operations for each write request (like RAID 5 or RAID 6), your IOPS will be significantly lower.

Requirement of configure Storage QoS?

  • Windows Server 2012 R2 with Hyper-V roles installed

An administrator can throttle the minimum and maximum IOPS value. IOPS are measured in 8KB increments. To configure,

a) Open Hyper-V Manager snap-in

b) Right click VM | Settings

c) Expand your virtual disk (IDE/SCSI) controller and select Advanced Features

d) Tick Enable Quality of Service Management.

e) Set minimum and maximum IOPS.

ConfigureStorageIO

Here is my test result on one of my test VM by using Iometer tool.

Before

DontSetIO

Example:- 700+ IOPS

After configure Storage Qos: Maximum 100 IOPS

AfterSet

Note:-

  • Do be careful when configure IOPS as it will impact the application performance especially high extensive application such as SQL database, Exchange, etc 
  • Understand your application requirement on IOPS
  • Storage QOS not supported on shared virtual hard disk