Today’s guest post is from Graeme Elliott, a Sydney-based Storage Architect for a large financial firm and leader of the Sydney Tivoli Storage Users Group. Elliott will be starting his own blog on IT Knowledge Exchange shortly, to be titled The Art of Storage.
Virtual Storage is the “art” of moving the “smarts” (Mirroring, Snapshots, Replication etc.) from a standard storage array’s controller and placing them into an appliance. This appliance is placed in the data path between the Host and the Storage Array. Even though these virtual appliances are in path there is generally only a minimal performance hit and in some cases, a performance boost due to the appliance’s caching algorithms.
The storage from the backend storage array is now presented to the virtual appliance just like any other host. The virtual appliance can further carve up or merge this storage as desired into “virtual disks” that can be allocated to your hosts. From the Hosts’ perspective, these virtual disks are just like any other disk.
The advantages of doing this are tremendous.
- All that you need to worry about when acquiring storage arrays is storage and performance (no smarts required)
- Span “virtual disks” across multiple arrays or Raid Groups
- Only need to the use the host drivers for the Virtual Appliance, not for the specific storage array vendor
- Storage from arrays can be placed in pools on the Virtual Appliance allowing for a tiered approach to allocations
Another major benefit of these “virtual appliances” -and one that in my experience usually drives the initial purchase-is the data migration features offered. Being able to migrate data between storage arrays while the host is online is highly beneficial in most organizations when it comes time to lifecycle a storage array.
In my “ideal” storage environment, I would have a virtual storage appliance between all hosts and their storage. This provides a consistent and fast method for storage administrators to provision storage while also providing a consistent presentation of this storage to the hosts no matter what backend storage vendor or storage array model is used.
There are always downsides for technologies like this and virtual storage is no different. Troubleshooting performance is more complex as host data can now reside across multiple backend storage array Raid Groups and LUNs, spread across multiple storage arrays or be shared with other hosts on a backend LUN.