Storage Spaces Direct detect and change Resiliency Mode

storage-spaceswindows-server-2016

I've 2 node cluster where I enabled S2D. Later I added the 3rd node. Now I would like to check if resiliency mode changed to three-way mirror automatically. If not, I would like to change it manually.

The only script known to me doesn't tell me anything. Running Get-ResiliencySetting without any parameter doesn't show 3-way mirror option at all.

Get-StoragePool -FriendlyName S2* | Get-ResiliencySetting

Name   NumberOfDataCopies PhysicalDiskRedundancy NumberOfColumns Interleave NumberOfGroups
----   ------------------ ---------------------- --------------- ---------- --------------
Simple 1                  0                      Auto            262144     1
Mirror 2                  1                      Auto            262144     1
Parity 1                  1                      Auto            262144     Auto

Do I have to recreate the cluster to enable it?

Best Answer

In order to change the resiliency settings of your existing volumes you have to recreate the volumes/pools with new resiliency setting and migrate the data. S2D only re-balances the data between newly added hosts keeping the resiliency setting intact.

S2D does not have LRC within physical hosts which means you are basically running on top of some kind of RAID0 in each host. That is applicable to both 2-node and 3-node S2D clusters.

For smaller deployments (especially 2-node clusters) I would recommend using alternative solutions like HPE StorVirtual https://h20392.www2.hpe.com/portal/swdepot/displayProductInfo.do?productNumber=VSA1TB-S or StarWind VSAN https://www.starwindsoftware.com/starwind-virtual-san-free which do exactly the same what S2D does but are capable of working on top of internal hardware RAID array keeping data locality and consistency within each host. This approach is called Grid Architecture https://www.starwindsoftware.com/grid-architecture-page and is way more beneficial for small-sized clusters.