Q: I want to test Windows Server 2012 R2 Storage Space tiering within a virtual machine--is this possible?
A: Windows Server 2012 R2 introduces the ability to tier Storage Spaces with a mix of hard disk drives (HDDs) and solid state disks (SSDs) in a Storage Space. This allows the Storage Space to then move file blocks between tiers to optimize performance--for example, moving the most-used blocks from the HDD tier to the SSD tier.
Storage Spaces isn't supported in virtual machines (VMs). If for demonstration purposes you wanted to show tiering in a VM, the virtual disks exposed in the VM have a media type of "unknown," which stops the use of tiering.
As a workaround, the media type for the VMs can be set to enable use with tiering.
Let's look at the example below. As you can see, I have four VHDX files on different physical disks. Two are on traditional spindle drives that are 500GB each, and two are on SSD drives that are 80GB each. This can be seen when I enter the command below:
PS C:\Users\Administrator> Get-PhysicalDisk | ft FriendlyName,CanPool,Size,MediaType
FriendlyName CanPool Size MediaType ------------ ------- ---- --------- PhysicalDisk3 True 85899345920 Unknown PhysicalDisk4 True 85899345920 Unknown PhysicalDisk2 True 536870912000 Unknown PhysicalDisk0 False 136365211648 Unknown PhysicalDisk1 True 536870912000 Unknown
To solve this, the media type can be forced by using the Set-PhysicalDisk cmdlet. To set all drives of a certain size to a type, see the example below:
Get-PhysicalDisk | Where Size -EQ 85899345920 | Set-PhysicalDisk -MediaType SSD Get-PhysicalDisk | Where Size -EQ 536870912000 | Set-PhysicalDisk -MediaType HDD