Identify the failed physical disk

Below is a picture of a degraded drive in your VMStorage. The following will show you how to change that failed Hard Drive without interrupting your Storage Jobs or destroying any data. 

Step 1: Identify the Failed Disk

To Identify the failed disk, Open Powershell and type the Cmdlet below. 

Get-StoragePool *S2D* | Get-PhysicalDisk

You will see that one of your drives is in an Unhealthy status with Transient Errors or IO Errors.

Once you have the failing disk, you can single it out with the Powershell Cmdlet below. 

$Disk Get-PhysicalDisk |? OperationalStatus -Notlike ok

Retire and Physically Identify Storage Device

Next step is to set the usage of this disk to "Retired" to stop writing on this disk and avoid loss of data. To do so use the Cmdlet below. 

Set-PhysicalDisk -InputObject $Disk -Usage Retired

You can open Server Manager now to make sure the failed disk is now in the "Retired" state. 


Next, you may remove it from the storage pool using the Cmdlet below. 

Get-StoragePool *S2D* | Remove-PhysicalDisk -PhysicalDisks $Disk

Run the following Cmdlet to turn on the storage device LED to physically identify it in the DataCenter (Server).

Get-PhysicalDisk |? OperationalStatus -notlike OK | Enable-PhysicalDiskIdentification

Next, move to the server and you will see which drive is defecting by the Warning Indicator light. You may now change that disk out. 

Once the disk is replaced, you can turn off the LED using: 

Get-PhysicalDisk |? OperationalStatus -like OK | Disable-PhysicalDiskIdentification

Add Physical Disk to the Storage Pool

Before a reboot of the server, the physical disk can't identify its enclosure name. The Disk automatically joined the Storage Pool but 

without enclosure information. So, you have to reboot the server to get the right information. Storage Spaces Direct Spread automatically the data across the new disk. This process takes almost 30 minutes. 

Sometimes the physical disk doesn't join automatically to the Storage Pool. So, you can run the following Cmdlet to add the new Physical Disk into the Storage Pool. 


To see the new drive you physically added into the server and the CanPool of this Drive read "True", use:

To add the new Disk into the Storage Pool, use: 

$Disk = Get-PhysicalDisk |? CanPool -like True


Get-StoragePool *S2D* | Add-PhysicalDisk -PhysicalDisk $Disk

Click Here for more Information.