This is a two part series. To read the second post, click here.
A couple years ago Microsoft released a new feature in Windows Server called Storage Spaces. From the customers that I work with, the feature has not been widely adopted, but has attracted much interest from Microsoft shops, particularly those looking to leverage for Hyper-V SMB storage or for scale-out private clouds. I suspect this is mostly due to one of the original limitations of Storage Spaces, requiring all hosts in the cluster to see the local storage, either directly or through JBOD SAS expanders, which are not common in the enterprise space. With the upcoming release of Windows Server 2016, a new enhancement to Storage Spaces is being introduced, called Storage Spaces Direct.
To draw a correlation, this is very similar to other scale-out storage solutions such as VMware Virtual SAN (VSAN) and other Hyper-Converged Infrastructure (HCI) offerings on the market. However, unlike HCI, Storage Spaces Direct doesn’t necessarily need to be used in conjunction with Hyper-V, although it’s a very logical fit. For Microsoft shops, however, this feature is enticing as it shows promise of the absolutely lowest cost simple building block for scale-out storage architectures as the Windows Server licenses are typically assumed. Additionally, in a future blog post, I’ll show you how you can leverage Microsoft’s free hypervisor, Hyper-V Server 2016 to deploy Failover Clustering and Storage Spaces Direct without any Windows licensing requirements! Everyone likes free, right?
Initially, I would anticipate Storage Spaces Direct will be leveraged for Small-Medium Businesses (SMB) or larger Enterprises with Remote Office, Branch Office (ROBO) distributed architectures where some degree of shared storage is desired in remote locations. I could also see Storage Spaces Direct being used in application architectures that are highly distributed where reliability of single points of failure are addressed at a higher level in the application stack, such as Microsoft Azure and Hyper-V Private Clouds, IIS Web Farms, Virtual Desktop Infrastructure, Remote Desktop Services, etc. In this blog post I’m going to show you how to setup a lab environment for running three Windows Server 2016 TP4 virtual nodes with Storage Spaces Direct, specifically for Hyper-V workloads, all nested on a single VMware vSphere 6.0 host. Then, I’ll show you how to expand compute and storage to a fourth node, a common use case or scenario when evaluating Hyper-Converged Infrastructure.
I frequently prefer to do lab builds nested inside VMware vSphere as it requires less coordination than shuffling multiple pieces of hardware around. Especially for this type of lab exercise where a minimum of three physical server nodes with Windows Server 2016 TP4 would be required. Much easier to do in a virtualized lab. The type of setup I’m going to demonstrate in this blog post makes a lot of sense to deploy using a 2U 4-Node configuration, although you could easily do with rack-based pizza box servers. Here’s a visual of what the physically equivalent setup would look like using either HP Apollo 2000 or SuperMicro TwinPro hardware:
Doing some quick ballpark pricing, I am confident a three-node setup with spinning or flash local storage, Windows Server licensing and Storage Spaces Direct can start as low as $15,000-$30,000 or $5,000-$10,000 per server node. Hopefully you can quickly see how compelling and attractive this can be as most competitive solutions start around $20,000-$30,000 per server node (when including some type of shared or HCI storage). Don’t take my word for it, go ahead and price out a four node SuperMicro TwinPro kit for yourself, using this public configuration website: http://www.thinkmate.com/system/superserver-2028tp-hc1r/117613. Unfortunately this reseller/distributor is fairly limited in their configurations, so you may need a custom configuration for three nodes or single processor systems. For ROBO, I would probably start with the following physical server configuration per node: 1x2680v3 Processor, 64GB RAM, Dual 10GbE, MicroSD, 1×800 (or 960GB) SSD and Windows Server OEM license. Don’t forget to add at least one 10 Gigabit switch for storage replication and VM traffic.
To learn more about Storage Spaces Direct, see Microsoft’s site: https://technet.microsoft.com/en-us/library/mt126109.aspx and blog: http://blogs.technet.com/b/clausjor/archive/2015/05/14/storage-spaces-direct.aspx. Let’s get started!
Hi!
Nice work! Clear and easy to follow guideline for anyone who want to evaluate the S2D! But one question: SO you managed to configure a S2D clustered storage with only 3 nodes? This is contradicting the official hardware requirement as posted by Microsoft https://technet.microsoft.com/en-sg/library/mt126109.aspx?f=255&MSPPError=-2147217396
It says: Storage hardware: The storage system consisting of a minimum of four storage nodes with local storage. Each storage node can have internal disks, or disks in an external SAS connected JBOD enclosure. The disk devices can be SATA disks, NVMe disks or SAS disks.
This is an interesting find, because some folks out there are using the 4 nodes requirement as a minus point to compare with products like EMC ScaleIO.
Hi David,
Yes, that’s correct. Microsoft’s documentation clearly states four node minimum, but I demonstrated there’s only a three node minimum to establish quorum (node majority) for Storage Spaces Direct. Failing a node does not impact the cluster, even when going from three to two. Not sure why Microsoft’s documentation states four node minimum, but it doesn’t seem to be a hard limitation.
Hope you enjoyed the blog post and series.
Thanks!
Dane
Hi Dane,
Whate a great and elaborate post. Walks you through the whole thing and gives you a real understanding how it works. I really appreciate the PowerShell commands, GUI is nice for one time but PowerShell is better.
I also wanted you to know that the link at the end refering to part 2 is not working, it’s a redirect to wp-admin. Should be http://blog.itvce.com/2015/12/03/free-mdt-tools-and-powershell-scripts-to-fully-automate-the-deployment-and-configuration-of-hyper-v-server-2016-failover-clustering-and-storage-spaces-direct-for-hyper-converged-infrastructure/
Regards, Ruud
Excellent, thanks for the feedback. I’ve fixed the broken link at the bottom.
Hopefully this blog post was useful to you!
–@youngtech
Pretty stoked about this 2016 feature and I just followed your guide – worked a treat.
Also, Thanks!
Very very nice post!! great job and usefull!