If you’re operating in a Windows or Windows Server environment, and have critical data to protect, then Windows Storage Spaces can come in handy. Many data centers and server farms implement both HDDs and SSDs for storing important data. Unfortunately, 10% of hard drives fail past the three-year mark.
Organizations must recognize this threat — and the numerous other hardware, software and human snafus that may threaten data integrity. Redundancy is the lifeblood of data governance, which is where Storage Spaces’ RAID-like capabilities are beneficial. These appear as virtual drives in File Explorer.
Via software controls, you can use Storage Spaces to group three or more drives together within one unified storage pool. That shared capacity is used to make customized storage “cubbies.” Since this feature stores extra copies of your data, single drive failures are no longer crippling. Need more capacity? Introduce more drives into the storage pool; Storage Spaces are flexible.
Using Storage Spaces
According to Microsoft, there are four chief ways to use Storage Spaces, depending on one’s machine or use case:
Windows PCs
If you’re using Storage Spaces on a Windows 10 machine, you’re required to have three drives available before proceeding. While one of these is your boot drive (housing your Windows install), the remaining two can be internal, external or both. SSDs are also supported. Thankfully, you can also include a mix of SATA, USB, and SAS drives as required.
How do you create Storage Spaces in Windows 10?
- First, add or connect the chosen drives that you would like to group together.
- From the taskbar search box, type Storage Spaces and select the option from the returned results.
- Click the Create a new pool and storage space
- Choose your Storage Spaces’ intended drives, and then select Create new storage pool.
- Assign a name, letter and layout for your drive. Select a mirroring or parity option, as these retain data backups in the event of failures
- Set the Storage Spaces’ maximum storage size, and finally click Create storage space.
Be careful to avoid simple spaces. While these are performance friendly, they’re not protective in the case of drive failures. Furthermore, their ideal use case involves temporary data — plus scratch and object files. Simple, mirrored and parity are often called “resiliency types.”
Microsoft recommends that you upgrade your pools after updating to Windows 10. Additionally, you should strive to optimize your drive usage via smart allocation. Much of this is thankfully automated. However, you can opt to spread existing data across all drives by checking a box. When this isn’t possible (perhaps you cleared that box or added drives before upgrading), manual optimization is necessary.
Standalone servers with unified storage
When your storage is contained within a single, isolated server, the setup process is more involved. Storage Spaces is supported on Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, and Windows Server 2012.
Storage Spaces on standalone servers require one or more storage pools to exist prior to configuration. This collection of physical disks facilitates easier management and expansion should the need arise later on. Interestingly, you may also create multiple virtual disks from a storage pool. Windows recognizes these as traditional disks that can be formatted.
You can create this virtual disk via the File and Storage Services interface. Choose thin provisioning (for frugal yet scalable initial resource consumption) or fixed provisioning (for immediate allocation upon creation). Lastly, you’ll have to choose a size. PowerShell commands can unlock multiple, additional levels of customization not found within the GUI.
Numerous prerequisites exist in Storage Spaces. These cover bus types, disk configs, HBA considerations and JBOD enclosures. Consult Microsoft’s documentation closely to ensure you’re properly prepared.
Clustered servers using Storage Spaces Direct
When you use directly-attached storage at each cluster node, using Storage Spaces can be quite economical when compared to NAS and SAN arrays. Storage Spaces Direct is intended to be highly scalable and easily controllable through software. Storage Spaces technology works in concert with caching, storage tiering, erasure coding, and RDMA networking. Additionally, NVMe drives are supported while offering rapid performance over older technologies.
Windows Server 2019 Datacenter, 2016 Datacenter, and Insider Preview Builds include Storage Spaces Direct. You can choose to create a hyper-converged or converged space. It’s suggested that you familiarize yourself with important server names and domain names before getting started.
The cliff-notes process for deploying Storage Spaces Direct is as follows:
- Deploy Windows Server – Install and connect to the operating system, add required domain accounts, and install roles and any necessary features.
- Configure the network, unless you’re leveraging Storage Spaces Direct within virtual machines (VM), then you may skip this step.
- Configure Storage Spaces Direct – Clean your drives and partitions, validate and create clusters, configure a witness, enable Storage Spaces Direct, create required volumes, and finally deploy any VMs as necessary.
- Deploy scale-out file server for converged deployments – Define server roles, create file shares, and enable Kerberos constrained delegation.
Remember to test your solution with diverse workloads to simulate real-world scenarios. This is important before upping complexity later on.
Clustered servers with shared SAS enclosures
You might have a solution where all physical drives are contained within shared enclosures. Otherwise known as a just-a-bunch-of-disks (JBOD) enclosure, this setup must comply with Windows Certification requirements. It must also include identical SAS HBAs that are Storage Spaces certified. Those drives in the file server cluster cannot include built-in RAID functionality.
Storage Spaces vs. RAID
Windows Storage Spaces and RAID, while having some intrinsic overlap, do satisfy certain use cases more effectively than others. There are benefits and limitations to each technology.
First, RAID has two distinct flavors: software and hardware. Meanwhile, Windows Storage Spaces is a software-driven technology that favors provisioning via GUI or CLI. Neither software RAID nor Storage Spaces have socket limitations, though traditional RAID does.
The operating system also looks at RAID and Storage Spaces disks differently. RAID disks appear as a single unit — even though physical RAID disks might have varied capacities. This leads to space wasting. Such a problem isn’t prevalent with Storage Spaces since single drives are accessible.
Performance-wise, RAID 0 handily tops Storage Spaces’ simple mode by roughly 2x. However, 4K read-write speeds are comparable. RAID 1 sequentially reads a tad faster than its Windows counterpart, while Spaces doubles up RAID 1’s write speeds in two-way mirror mode. Hardware RAID still holds a massive advantage when measured against Spaces’ parity mode in reading and writing.
Finally, Storage Spaces can be much more wallet-friendly than RAID setups. There aren’t hefty hardware acquisition fees associated with setup.
Recovering deleted or lost files
Maybe you deleted or misplaced some crucial files within your Storage Spaces deployment. Thankfully, the recovery process is pretty straightforward using recovery software. A number of third-party companies maintain GUI-based tools for quickly scanning storage and assessing data integrity. This process usually includes locating a missing file or folder, and copying it to a safe storage location.