Hands-On: Working with Storage Spaces in Windows 8

Storage Spaces is an exciting new storage virtualization technology that is new for Windows 8. For background, you can read my prior post on Windows 8 storage solutions. In this post I’ll build on this topic and give you a walk-though demo of how to create and configure Storage Spaces and also include information on advanced tools for Storage Spaces management.

Background

Storage Spaces are built on storage hardware virtualization called Storage Pools. Storage Pools are collections of physical drives and are used by Storage Spaces for storage. A Storage Space is a logical drive object that uses virtualized storage from a Storage Pool.

Storage Spaces Demo

Creating a Storage Space is essentially a two-step process:

  1. Creation of a Storage Pool. You select which available drives on your system will be used to create a virtualized pool of disk storage for use with Storage Spaces.
  2. Creation of one or more Storage Spaces. Creating a Storage Space involves choosing a name, drive letter, resiliency options, and capacity. You can create multiple Storage Spaces in a single Storage Pool.

Here’s a video that will give you a walk-trough of the following:

  1. Launching the “Storage Spaces” control panel
  2. Creating a Storage Pool
  3. Creating two Storage Spaces in the Storage Pool
  4. Deleting Storage Spaces and the Storage Pool to reclaim the physical drives

As you can see, Windows 8 provides an easy experience for the creation and management of Storage Spaces. But what if you are more of the command-line kind of person?

PowerShell Management for Storage Spaces

If you need to automate the creation and management of storage spaces, there’s full support in WMI (Windows Management and Instrumentation) for the management of Storage Spaces. There are also several PowerShell cmdlets for Storage Spaces, so that you can manage Storage Spaces from PowerShell. This PowerShell integration provides a convenient way to either use the command line or scripts to configure Storage Pools and Storage Spaces. While a deep dive into PowerShell and WMI for Storage Spaces is beyond the scope of this blog post, you can get lots of detail HERE and HERE.

In order to give you an idea of how PowerShell can be used to manage Storage Spaces, I’ve outlined a simplified PowerShell command sequence below. The following commands would be used to perform the tasks that I showed in the video above: (partition management steps removed for clarity)

# Before this, identify physical disks to use, remove existing partitions

# Get disks that have been prepared for inclusion in Storage Pool
$pd = Get-PhysicalDisk –CanPool $True

# Create the storage pool
New-StoragePool -PhysicalDisks $pd –StorageSubSystemFriendlyName *Spaces* -FriendlyName “Buffalo 3T USB 3.0 Drives”

# Create Storage Space 1 using newly created storage pool
New-VirtualDisk -FriendlyName “Storage Space 1” -StoragePoolFriendlyName “Buffalo 3T USB 3.0 Drives” -ResiliencySettingName Mirror -ProvisioningType Thin –Size 2.72TB

# Create Storage Space 2 using newly created storage pool
New-VirtualDisk -FriendlyName “Storage Space 2” -StoragePoolFriendlyName “Buffalo 3T USB 3.0 Drives” -ResiliencySettingName Mirror -ProvisioningType Thin –Size 2.72TB

# Now create and format partitions on Storage Space logical drives

Have tips and tricks or experiences to share with Storage Spaces management? Please leave a comment!

Find me on twitter! @GavinGear