Virtual Hosting Concepts – Shared Storage
Shared storage is a term readily thrown around, but just what is it and why do we use it? Who shares it? Do I need to worry about it?
What is shared storage?
This is storage that usually resides in a specialised device or set of devices that form a SAN (Storage Area Network) or sometimes a NAS (Network Accessible Storage). Is there a difference or are we just playing with words to form fancy acronyms? To see the difference, we must know where these devices came from.
A NAS was traditionally a single device, usually built on embedded hardware with no screen or keyboard. A normal server could also be built as a NAS. The NAS usually provided network storage that could be accessed by many users via protocols like NFS or CIFS/SMB.
A NAS used to be limited to the amount of storage you could put in this single device.
A SAN was often made up of multiple devices linked over a very fast “backplane” such as fibre-channel. SAN‘s usually also ran very expensive SCSI or Fibre-Channel hard drives that cost up to 10 times as much as conventional drives.
They always ran some form of RAID (Redundant Array of Independent Disks) with a high-end RAID controller. SAN‘s where extremely expensive per Terabyte of storage.
A SAN usually used the iSCSI protocol to communicate.
The other main difference was that a NAS was a FILE storage device while a SAN was a BLOCK storage device. This meant that a SAN drive (or LUN) was mounted and behaved exactly the same as a local drive.
It was also important to connect to your SAN with the fastest tech you could afford to reduce any latency between your server and the SAN. The most important part about both storage technologies is that multiple servers could access the same data over a network.
Who shares it?
The “shared” part of shared storage does not refer to the users, but rather the servers using the storage. Each server running virtual machines (VM’s) is referred to as a Hypervisor or a Host. If each host can access all of the storage, this opens up the possibility of easily migrating VM’s from one host to another.
This also allows us various scenarios such as fail-over and high-availability. Fail-over is where the VM’s get auto-migrated to a working host if one of the hosts fail or are taken down for maintenance. Fail-over may or may not be immediate. High-availability, on the other hand, must be quick.
Do I need to worry about it?
The short answer is no – unless you plan on building your own infrastructure with virtualization, it is not something which the end user is even aware of. Shared storage is also constantly evolving, but that is a topic for another blog.