Why you don’t need a SAN any more
With software-defined storage in Windows Server, you can get SAN features without paying SAN prices — and the next release will challenge more high-end storage features.
Since Windows Server 2012 introduced Storage Spaces, software-defined storage (SDS) has been moving up the stack: it’s gone from an acceptable alternative to the kind of RAID systems you find in NAS boxes to competing with full-featured SANs using the Scale-Out File Server (SoFS) role on commodity servers and storage. The StorSimple appliances andAzure Storage services bridge the gap to iSCSI. And in Windows Server vNext you get more SAN features like storage quality-of-service and storage replication. At this point, you need a good reason to be picking a proprietary SAN, even for high-end storage.
POOLING YOUR DISKS: STORAGE SPACES AND TIERS
The heart of Windows Server’s storage tools is Storage Spaces, its built-in storage virtualisation tools. Storage virtualisation has long been the province of high-end storage arrays, like those from HP and EMC, but Windows Server brings its key features to the average departmental server, not just to the data centre.
It doesn’t matter whether you’re using directly attached or network storage; as long as you’re using a block-level protocol and have direct access to your disks, you can quickly build pools of storage that can be used to build virtualised storage — either a fixed size or a thin-provisioned pool. You can create clustered pools, with failover, as well as standalone pools. Clustered pools are limited to 80 physical disks, as they need to handle failover between nodes, while you can have up to 240 disks in a standard pool, in four 60-disk JBODs.
Once pools are in place they can be configured as Storage Spaces. A high-level storage virtualisation service, Storage Spaces can configure sections of disk pools as either simple spaces, mirror spaces or parity spaces. Simple spaces are much like traditional disks, with no resilience, and are best used for temporary data — think of them as scratch working storage. Mirror and parity spaces add resilience (especially when used with Microsoft’s new ReFS file system). Mirrors are a powerful tool, and there’s support for up to three-way mirroring, using enclosure awareness to associate data copies with specific JBODs. With three-way mirroring, and three or four JBODs you can lose an entire enclosure and still keep running.
Storage Spaces can also improve performance, by using striping to store data across multiple disks. If you’re mirroring data, this can improve performance considerably, allowing data not only to be retrieved from multiple disks in parallel, but also from multiple JBODs. To keep your system easy to maintain, you should standardise on one type of disk in a JBOD (and ideally one specific firmware release).
Microsoft uses Storage Spaces for one of its most demanding storage scenarios: the Windows release server, where it was able to significantly increase capacity and storage throughput at less than half the cost of the SAN it used to use.