Windows Storage Spaces pool is a data structure that groups disks into a pool. Virtual Disks are carved out of disks within a pool. Disk failures are also repaired within a storage pool.
This procedure applies to Windows Server 2012 R2. For the following example, we will not include all the disks available. Disks can easily be added to a pool but are very difficult to later remove.
Look for Available Disks to Pool
List the disks on the system. Open a PowerShell window and run the command Get-PhysicalDisk

Clearing a Disk
If there are disks that have previous data or partitions, these will show as “False” in the CanPool column. This can also cause unhealthy Storage Pools and Virtual Disks to be reported.

Erase these disks with PowerShell.
The commands to clear a disk are:
Get-PhysicalDisk -FriendlyName PhysicalDisk1 | get-Disk | Set-Disk -isReadOnly $false
Get-PhysicalDisk -FriendlyName PhysicalDisk1 | get-Disk | Set-Disk -isOffline $false
Get-PhysicalDisk -FriendlyName PhysicalDisk1 | get-Disk | Clear-Disk –RemoveData
Where PhysicalDisk1 in this case is the target disk to clear off.

Reference the Argon System’s article for removing legacy data and pools entitled Clearing Disks on Microsoft Storage Spaces Direct
Create the Pool
First, display the available disks listed in the order that they are arranged in the hardware by disk slot.

When we create the pool, we will only select a portion of the disk drives initially. We will reserve at least one hard drive as a quorum disk. This can be reclaimed later and then added to the pool.
In the operations below, we create a Storage Spaces Pool with a single disk, then add more disks individually to the pool. This procedure can be used to later expand or add disks to the pool.
Start by creating the pool by adding one disk to the pool.
$s=Get-StorageSubSystem
$disk=Get-PhysicalDisk -FriendlyName PhysicalDisk16
New-StoragePool -FriendlyName Pool1 -StorageSubSystemUniqueId $s.UniqueId -PhysicalDisks $disk
Add then add additional disks to the pool
$disk=Get-PhysicalDisk -FriendlyName PhysicalDisk15,PhysicalDisk14,PhysicalDisk13,PhysicalDisk12,PhysicalDisk11 Add-PhysicalDisk -StoragePoolFriendlyName Pool1 -PhysicalDisks $disk
$disk=Get-PhysicalDisk -FriendlyName PhysicalDisk10,PhysicalDisk9,PhysicalDisk8,PhysicalDisk7,PhysicalDisk6 Add-PhysicalDisk -StoragePoolFriendlyName Pool1 -PhysicalDisks $disk

Display the New Pool
Now you can display the new Storage Pool and the disks currently in the pool
Get-StoragePool -FriendlyName Pool1
Get-StoragePool -FriendlyName Pool1 | Get-PhysicalDisk
Get-StoragePool -FriendlyName Pool1 | Get-PhysicalDisk | ft FriendlyName, SlotNumber, MediaType
Server Manager
The storage pool and disks can be seen from Server Manager under File and Storage Services à Storage Pools. The disks associated with the Storage Pool “Pool1” are listed on the bottom right.

Disks can be added from this GUI as well by right-clicking on the “Pool1” storage pool and selecting “Add Physical Disk”. Managing Pools and Virtual Disks is simpler from the GUI if scripting is not required.
Additional References
Microsoft’s Storage Spaces Overview provides an introduction to the software-defined storage solution for Windows Server 2016.
