Software-Defined approaches have been embraced widely over the recent years. These models provides increased flexibility, simplification, consolidation and scalability over traditional approaches. Instead of deploying specialized hardware devices (e.g. appliances), Software-Defined models enable the management of network, storage and compute in a software-oriented manner.
Software-Defined Compute (SDC) provides hardware virtualization to run many isolated operating system (VMs) on a single host. VMware vSphere and Microsoft Hyper-V are the leader in this market segment.
Software-Defined Networking (SDN) concerns all network aspects such as switches, firewall, gateway, load-balancer and so on. Solutions as VMware NSX, Microsoft Network Controller or Cisco VXLAN enables to virtualize these network components.
Software-Defined Storage (SDS) provides a storage solution based on software without using features as hardware RAID devices, SAN or NAS. Several vendors have been successfully providing solutions in this space e.g. Nutanix, VMware and Simplivity – just have a look at our SDS & HCI comparison to see the evolution of the leading vendors in this space.
With the release of Windows Server 2016, Microsoft has introduced its own SDS approach with “Storage Spaces Direct” (often referred to as “S2D”). Today we are glad to announce the addition of Microsoft Storage Spaces Direct to this comparison! You can compare it now HERE:
With S2D, each node is a storage controller and utilizes direct attached storage in the form of HDD, SSD or NVMe. The solution supports configurations scaling from two nodes to sixteen nodes.
So where does S2D “fit-in”, what use cases is it targeting?
From the score you might deduct that it is not necessarily trying to compete with the “best of breed” solutions and “high-end” use cases, however it has some interesting advantages.
The license is very cost-effective compared to other solutions. With a Windows Server 2016 Datacenter license you can run unlimited Hyper-V VMs in conjunction with Storage Spaces Direct and the SDN layer. All Software-Defined components are nicely integrated in to the Windows Server OS.
The second advantage is the flexibility to build the solution. If you need a cost-effective solution, you can implement it with just a few SSDs and HDDs, 10Gb/s Ethernet and e.g. just 128GB of RAM. If you have lots of money to spend, you can implement a solution with only NVMe, lots of memory and 100Gb/s Ethernet. Other SDS solutions enforce the utilized hardware with a (often restrictive) hardware catalog, which is not the case with Microsoft S2D that can take advantage of the full range of supported Windows hardware (Windows Server Catalogue).
The third advantage I see is the possibility to deploy S2D in a hyper-converged -or- disaggregated model. In a hyper-converged model, Hyper-V and storage controllers are located on the same node. In the disaggregated model the storage nodes are separated from the compute nodes. S2D leaves you the choice to deploy the solution in the model that is most appropriate for you.
However, not all is perfect for S2D. First there is no deduplication on ReFS file systems – which is the recommended file system for S2D. Secondly, the GUI is not very user-friendly. In a perfect world, I would like to see a web-based interface to manage the solution (firmware upgrade, S2D management and so on) without having to buy the future Azure Stack.
As part of my job, I have deployed three S2D clusters (between two and four nodes). All customers have been happy with this solution because they have deployed efficient and flexible solutions at a reasonable price.
I hope this has helped to understand the capabilities and positioning of S2D, please don’t discount it as an “inferior” solution but instead match it against your requirements and use it where appropriate!
S2D can be a very effective solution when deployed in the appropriate scenario!
Our expanded SDS & HCI comparison should help you evaluate and pick the appropriate SDS & HCI solution – also look out for our upcoming “use-case” function that will allow you to prioritize features according to your requirements.
Feel free to ping me if you need any additional information 😉
Romain Serre – WhatMatrix Product Consultant (Microsoft Technologies)