Shared storage
To provide high availability for virtual machines, shared storage is absolutely essential. Shared storage can be directly attached to your Hyper-V Server hosts or can communicate with them over a TCP/IP network, Fibre Channel (FC) interconnects, or other networks. You may utilize dedicated devices or general purpose servers to fulfill this requirement.
Storage area network devices
Storage area network (SAN) devices are considered mid-end to high-end storage components. While the term has broad and sometimes inconsistent applications in the realm of interconnected shared storage devices, it is most commonly used to refer to a singular self-contained unit. A SAN contains a bank of hard drives that can be accessed by multiple hosts. What defines a unit as a SAN is that it presents its storage at the block level, just the way that internal storage would. SAN storage devices have sophisticated capabilities beyond simply providing disk storage and I/O. Exact features will vary among vendors and models. Some features that are of interest in a Hyper-V Server deployment are given as follows:
- Offloaded data transfer (ODX)
In a traditional file copy, the operating system reads in all data and copies it back to the disk. Hyper-V Server and Windows Server can instruct SANs that support ODX to perform these transfers without needing to send anything through the operating system.
- Internal redundancy
In addition to the redundancy afforded by particular configurations of the internal hard drives, SANs typically also provide other redundancies such as multiple power supplies, multiple network attachments, and hard drive controllers. It is possible to have a SAN that has no single point of failure except the device itself.
- Hardware-assisted VSS snapshots
Your virtual machines will be created on NTFS volumes that live on the SAN. Backing up those virtual machines will cause a VSS snapshot to be taken by the management operating system. If your SAN supports it and provides a device-specific module (DSM), the operating can instruct it to handle the snapshot process.
- Device snapshots, cloning, and so on
SANs usually have a number of ways to manipulate and protect data that don't involve any operating system input. Many grant you the ability to perform tasks such as creating snapshots and clones of SAN volumes.
- Data deduplication
Some SANs have the ability to ensure they store only one copy of a unique block of data. For instance, the files that make up a Windows Server 2012 installation are identical across different virtual machines. A system with active deduplication stores only one copy of the individual blocks that make up these files. Be advised that the trade-off for the reclaimed storage space is a higher drain on computing and memory usage in the SAN. For some systems, this may have a noticeable impact on the way that virtual machines perform. Use deduplication with caution.
- Drive type and size mixing
Some SANs will mix solid-state drives with spinning disks. This allows you to have the combined benefits of the speed of solid-state with the high capacity of spinning drives. Also, some SANs allow you to create different RAID volumes within the same system.
- Intelligent data placement
Some SANs have the ability to track data usage and then automatically move frequently accessed data to faster drives while moving untouched data to slower drives.
- Device grouping
A distinguishing characteristic of SANs is that they have some methodology to facilitate storage expansion. Some allow you to add drives to an existing device. Some grow by attaching more drive storage bays to an existing base unit. Some are self-contained, but can network with other SANs of the same or a similar model to provide a larger unified logical space.
- Replication
Many SAN devices have built-in capability to replicate to other SAN devices. High-end units can even do this in real-time and thereby provide redundancy across SAN devices. Such technology is a requirement for multi-site clusters in which virtual machines are expected to continue operating even if a site is lost.
- Thin-provisioning
Thin-provisioning is a common term in virtualization that refers to the ability to request a certain amount of a resource but only receive it on an as-needed basis. In the case of drive space on a SAN, you can thin-provision 100 GB of space and the SAN will only provide you with a few megabytes to start off with. As the system attempts to place more data within this thin-provisioned space, the SAN automatically grows the allocated storage up to the 100 GB maximum.
When considering SAN devices, ensure that the vendor has rated it to work in a multi-host Hyper-V environment. If the vendor does not specifically mention Hyper-V Server, check that the device supports SCSI-3 Persistent Reservations. In Hyper-V Server and Windows Server, each node will require the ability to register a persistent reservation or you will be unable to use Cluster Shared Volumes on the device. It is possible to use Hyper-V virtual machines without CSVs, but you will not be able to create more than one highly available virtual machine on any given logical unit number (LUN)—the term for logical drives created on a SAN.
Network-attached storage devices
Network-attached storage (NAS) devices are less expensive alternatives to SAN devices. The lower price is usually attended by a smaller feature set. The primary difference between these and SAN systems is that NAS devices typically do not provide block-level access. Instead, they provide network access to a formatted volume for the purpose of sharing files. Some NAS devices emulate block access, but this is commonly accomplished by abstracting space that is actually stored inside a file on the NAS device. Another notable difference is that NAS devices do not typically have the grouping capability of SANs, so their expandability is limited to the empty drive bays of a single chassis. Of course you can employ more NAS devices, so this may not be a meaningful limitation.
If you choose a NAS, it must be able to emulate block access (usually by acting as an iSCSI target) or expose SMB Version 3.0 shares, and it must support simultaneous connections from multiple hosts. If it emulates block access as an iSCSI target, it must support SCSI-3 persistent reservations.
General purpose computers
With special software, you can convert any general purpose computer into a SAN. Microsoft began providing iSCSI Target Software natively with Windows Server 2012. As an added bonus, Windows Server 2012 introduced the capability to cluster this resource so that two Windows Server systems can expose redundant iSCSI connections to the same storage. A number of third parties also provide iSCSI target software. Some Linux distributions can provide this capability natively or through third-party packages. With any of these, you can set aside hard drive space on the system and make it available to your Hyper-V Servers.
Another option is a Virtual SAN Appliance. This is a self-contained software application that runs as a virtual machine and exposes a section of the host's drive space as SAN storage. The benefit of VSAs is that most of them can be used on multiple physical computers to create a redundant storage cluster. Most freely-available iSCSI software targets do not have this capability.
With Windows Server 2012, you also have the option to create SMB 3.0 shares to host virtual machines. Also new in Server 2012 is the ability to cluster the file server role so that you can make the data on these SMB 3.0 shares continuously available in much the same way you are using clustering to make virtual machines highly available. With this capability, you can convert a computer into a NAS device capable of running virtual machines and you can even cluster it to provide redundant NAS services.
Shared storage performance characteristics
Based on the performance metrics you pulled from the existing systems and information provided by software vendors on new workloads, you hopefully have a general idea of what sort of performance your shared storage will need to provide. SAN manufacturers will be happy to share the capabilities of their equipment with you. If you are employing lower-end NAS devices or general purpose computer systems, you may need to calculate these on your own. Chapter 4, Storage Design, contains a deep dive into disk performance. You may want to familiarize yourself with its contents prior to deciding on a storage solution.
Designing shared storage
As a general rule, SANs provide the fastest and most reliable storage, then NAS devices, and finally general purpose computers. Cost is usually an accurate indicator of any given solution's capabilities and reliability. The art and science of maximizing the potential of your shared storage is covered in much more detail in Chapter 4, Storage Design.
However, you should be able to make an acquisition decision with only a general overview of what capabilities a device provides compared to your organization's needs and expectations.
Besides consulting with vendors and checking official lists of supported devices, consider investigating Internet forums and user groups. Sometimes, a device is certified for Hyper-V Server clusters but users have not been impressed with their capabilities.