What you will learn: Server-attached storage is primarily software that runs on commodity server hardware, either within the hypervisor or as a virtual machine controlled by the hypervisor -- and it's becoming increasingly popular from a vendor perspective. This tip discusses the pros and cons of server-attached storage services so you can determine if they make sense for your environment or if you should stick with traditional shared...
Traditional shared storage has three basic parts: physical hardware in the form of drives, drive shelves and storage controllers; network connectivity and the management of that connectivity that allows the storage to be shared; and software that provides basic features such as RAID and volume management, and advanced features such as snapshots, clones and replication. When server and desktop virtualization first started to take hold in data centers, shared storage was required to enable features like virtual machine (VM) migration and storage migration.
Server-attached storage abstracts these basic components of shared storage and moves them to the same server running the hypervisor and VMs. The physical hardware is now physical storage in the host server. The networking is provided in the form of networking cards in the physical server, and the storage software exists as a VM on the host or runs at the kernel level of the hypervisor itself. The software then aggregates the physical storage across the host to make a shared pool of storage that is accessed by the VMs. This aggregation allows services like VM migration to continue to function.
Server SANs greatly reduce the cost of providing shared storage because there's no need for dedicated storage controllers. The physical storage media can be server-class storage instead of enterprise-class storage, and the network interconnects can be off-the-shelf 10 Gb Ethernet instead of custom-designed host bus adapters.
Server-attached storage is also valuable because it's relatively easy to use and implement. In theory, there's no need for special storage networking expertise and no special skill set for setting up the shared storage device. The storage software installs automatically as part of the hypervisor or as easily as any other VM.
Five shortcomings of server-attached storage
Advocates for server-attached storage are quite loud within the industry and are backed by some big names, many of them hypervisor vendors. As a result, the conversation is often one-sided in that only the positive aspects are discussed. But there are some negatives to server-attached storage that IT professionals need to be cognizant of when they evaluate offerings.
1. Server-attached storage software is relatively new. In software, especially storage software, having a little maturity is generally a good thing. That means enough time and implementations have taken place to root out any bugs that may have been present in the software. Server-attached storage hasn't reached that level of maturity at this point.
2. The selection of physical hardware becomes more complex in a server-attached storage implementation. The physical host will now support a portion of the storage services that used to run on dedicated and/or custom storage processors. As a result, extra overhead in the form of CPU and RAM needs to be accounted for. Additionally, the predictability of both storage performance and VM performance can become an issue.
When using server-attached storage, selecting the physical storage media also becomes the responsibility of the IT professional instead of being bundled with the storage system. While in theory you may be able to install any storage media in the servers, care should be given to select high-quality hardware that has similar performance characteristics to the other drives installed on the other servers. Many data centers have learned the hard way that while one can mix and match hard drives of any capacity and speed on paper, reality dictates the drives be the exact same type.
3. The selection of the network becomes important, especially at scale. Many server-attached products claim there's "no networking" or "no SAN." The reality is that there's a much higher dependence on networking because storage is now aggregated into a shared pool. That means storage I/O is spread across multiple servers via their interconnecting network. That network should be of good quality and tuned for this type of traffic. A dedicated, cut-through network should be a required starting point for almost any server-attached storage product.
4. Server-attached storage becomes more complex as it scales. Scaling is a key challenge for all types of storage systems. Server-side products handle scaling well initially because as additional server hosts are added to the environment, they're loaded with the storage software and additional capacity. They then automatically join the above-mentioned aggregate.
The problem is that most hypervisor environments have a limit as to how many server hosts they can have per cluster. As a result, scalability is limited, and performance and capacity typically have to be added at the same pace. If there's a performance problem, additional hosts may need to be added even though there's no need to support additional VMs. Finally, managing a storage cluster and its associated inter-networking at the scale of dozens of nodes in the cluster can make what was once easy, very complex.
5. Price is still a limitation. While the cost of the individual storage media is greatly reduced, and the cost of the controller is eliminated with server-attached storage, the cost associated with buying more powerful hosts -- filled with more RAM and extra networking -- needs to be accounted for. There's also the cost of the actual server-attached storage software, which is typically priced per server host.
Making the purchase decision
Determining which of these products makes sense is largely dependent on your data center. Server-side products, assuming the pricing works out, are very appealing in small and medium-sized virtual server clusters. But as the environment scales from a midsize installation to a large one, the cost and complexity of server-side storage may not make sense. The key for the IT professional is to add up all the costs associated with server-attached storage, factor in the potential risks described above and compare it to more traditional shared storage options.