- Connect to Exchange Online with PowerShell - Wed, Jun 7 2023
- SCP from remote to local - Wed, May 31 2023
- Understanding Kubernetes Persistent Volumes - Mon, May 29 2023
Storage Spaces also makes scaling easier than traditional technologies. For example, if more capacity is needed, additional hard disks can be added to the storage pool.
Storage Spaces requirements
The requirements for Storage Spaces are relatively basic.
- First, you must ensure that your hardware, including hard disks, is certified for Windows Server, which covers most hard disks on the market
- For clustered Storage Spaces, you need a minimum of 2 servers, with a maximum of 16 servers
- Microsoft recommends 4 GB of memory per 1 TB of data
You can find the requirements for deploying Storage Spaces on a standalone Windows Server here.
Setting up resilient storage with Storage Spaces
First, let's ensure we have File and Storage Services installed in Windows Server. Note that you will not see a distinct entry under File and Storage Services for Storage Spaces. It is part of the primary File and Storage Services role capabilities. Below, I have pulled up Server Manager in Windows Server 2022. File and Storage Services are installed.
Now you can begin creating Storage Spaces. An overview of the process includes the following steps:
- Create a Storage Spaces storage pool
- Create a virtual disk
- Create a volume
Create a storage pool
Launch Server Manager and navigate to the File and Storage Services dashboard.
Click the Storage Pools menu. I have added three additional hard disks to the Windows Server 2022 server. Select the physical disks you want to add to the storage pool. From the Tasks dropdown list, select New Storage Pool.
The New Storage Pool Wizard launches. Assign a storage pool name. Next, select the physical disks you want to add to the storage pool.
By default, the Allocation is configured to Automatic. However, you can click the dropdown list for each disk and set the allocation for each physical disk. Hot spares can be used to replace failed disks automatically in a storage pool.
On the confirmation screen, confirm the settings, and click Create.
The results page will progress through the tasks and create the new storage pool. You can select the Create a virtual disk when this wizard closes option to launch the virtual disk creation wizard automatically after creating the storage pool.
Create a virtual disk
The New Virtual Disk Wizard launches. Configure a virtual disk name. If you want to configure storage tiers, you can also do that with Storage Spaces. This feature allows automatic movement of frequently accessed files to faster storage.
Storage Spaces supports an interesting feature that enables awareness of storage enclosures. So, if you want to ensure that additional copies of data are spread across different physical storage enclosures, Storage Spaces has that capability.
On the Storage Layout screen, the Simple option offers no protection. Mirror protects against a failure of one or more disks and has the most impact on capacity but better performance. Parity has less impact on capacity, but a bit more performance impact.
The Provisioning screen allows you to select whether you want to provision the storage as thick or thin provisioning, i.e., if the space should be allocated immediately or on demand.
As you can see below, the mirror option drastically impacts capacity, as we only have roughly half of the raw storage capacity available.
On the Confirmation screen below, you see the settings for mirroring. Start the creation of the virtual disk.
On the View results screen, we can select the Create a volume when this wizard closes option. This will launch the New Volume Wizard automatically after the New Virtual Disk wizard completes.
Create a volume
The final part of the process is to create usable storage with a new volume. On the New Volume Wizard screen, select the Server and Disk listed. Now we see the new virtual disk created in the preceding steps. You don't see the underlying three physical disks that back the storage.
The size of the virtual disk is displayed on the Size screen.
We assign a drive letter to the new storage volume on the following screen. It will allow the volume to be presented in Windows Explorer as a regular storage location.
On the Select file system settings screen, add a volume label to the new storage volume.
On the Completion screen, review the configuration, and click Create. The Results screen displays the results of the task operations.
Reviewing the new Storage Spaces configuration
After going through the creation process of the storage pool, virtual disk, and new storage volume, you will see the new virtual disk listed on the File and Storage Services page.
Also, you will see the new Storage Spaces volume listed in Windows Explorer.
Testing your resilient storage
Below, I have removed the virtual hard drive from the virtual machine running the Windows Server 2022 server with Storage Spaces. As you can see below, Windows has lost communication with one of the backing hard drives.
However, we still have access to the files located on the Storage Spaces volume.
Subscribe to 4sysops newsletter!
Wrapping up
Storage Spaces is a great way to build resilient storage for critical data without using traditional RAID technologies. Instead, it can be configured and managed directly from Windows Server using the built-in File and Storage Services role. It is easily configured, and in just a few minutes, you can have a storage location for critical data able to withstand the failure of physical hard disks.
You don’t discuss performance, which is rumored to be terrible.
Write performance is terrible with parity layout as per my experience. People looking for a higher write performance can choose mirror layout.