Storage virtualization is emerging as a practical solution to many storage problems, primarily wasted storage and disk management.
The biggest problem with disk proliferation is waste. Because storage platforms usually run at less than 60% utilization, expensive disk capacity is unused, and more storage capacity is often purchased without optimizing the existing space.
Disk management is another problem. Administrators must allocate and track the physical space used by particular applications or users, so any changes to that physical space can adversely impact the application and the enterprise.
The basics of storage virtualization
Storage virtualization creates a layer of abstraction that insulates an application from the storage hardware layer. Storage virtualization is a compelling technology because applications no longer need an awareness of particular disk volumes, arrays, NAS appliances, or other storage locations in the data center or network. Storage virtualization allows administrators to gather, organize, allocate and manage storage hardware without regard for the applications or servers that use it.
When properly implemented, storage virtualization eliminates forgotten or partially-used disks, maximizing storage utilization to 80% or higher. This demands fewer drives, which translates into cost savings. Storage administrators an easily transfer and migrate data between storage resources without worrying about specific disk locations. Storage virtualization also permits storage resources to be altered and updated on the fly without disrupting application performance, generally reducing downtime.
While the benefits of storage virtualization are compelling, there are downsides. Storage virtualization adds another layer of complexity to the storage environment to be managed, so it's easy to get bogged down with patching and updating myriad storage virtualization servers. In addition, no storage administrator can implement storage virtualization without considering interoperability and compatibility with existing storage devices. Once storage virtualization is implemented, it can be difficult to remove, and could even interfere with the special features of some storage arrays such as remote replication. These two issues are often overlooked until deployment.
Types of storage virtualization
Hardware implementations of storage virtualization can vary dramatically. The simplest deployment is server-based (also called host-based) where storage virtualization software is installed on an ordinary server. This is easy to deploy, but does not scale well, and a proliferation of servers can be difficult to maintain. Storage virtualization can also be implemented by the storage array vendor in the array itself. This can be convenient, but is generally not heterogeneous.
Storage virtualization is increasingly being deployed in the network fabric. One approach is to connect dedicated appliances to the network. Appliances are able to detect available storage, but can be complicated to set up and manage. Storage virtualization can also be accomplished at the network switch level -- usually an intelligent switch running storage virtualization software. Switch-based storage virtualization promises superior interoperability and heterogeneity, but can have an impact on performance.
Storage virtualization can be in-band or out-of-band. In-band storage virtualization involves a device that sits in the data path and performs storage virtualization tasks on live data on the fly. For example, switch-based storage virtualization is in-band because all data flows through the switch.
Though relatively straighforward, in-band storage virtualization usually incurs a performance penalty since the virtualization process introduces a bit of latency. Out-of-band storage virtualization is often associated with server-based and appliance-based approaches where the device is not directly in the data path. Instead, agent software on each virtualized storage device shares data with the virtualization engine through the network.
Storage virtualization practices
Storage virtualization isn't just about improving storage utilization or easing management. The technology can have a positive impact on most critical storage tasks in the enterprise. Storage virtualization can aid disaster recovery (DR) planning. Traditionally data had to be replicated between identical hardware, but storage virtualization eases that requirement, allowing data to reside on a wide range of disks or systems at a DR site. Storage virtualization can speed up backups through the use of snapshots, which basically eliminates the backup window. Data migration can also be handled through storage virtualization rather than vendor-specific tools, supporting greater heterogeneity in the data center.
But storage virtualization has other uses, including automatic capacity expansion. Most organizations must handle storage allocation and provisioning manually, but storag e virtualization supports the use of policies that can assign additional capacity to applications as needed. Storage virtualization can easily replicate data sets to serve in lab environments, allowing applications and new hardware to be tested without jeopardizing real production data.
Storage virtualization supports initiatives such as high availability and resource sharing. For example, if an application is intimately tied to storage, any disruption to the application server may impact the corresponding storage. By adding a virtualization layer, the storage is protected from any failure at the application server. Storage virtualization can ease the co-existence of SAN servers with different operating systems (such as Windows and Unix), allowing pooling and sharing of storage between heterogeneous servers.
Purchasing storage virtualization technology
Storage virtualization costs are difficult to quantify. Any product has a basic price tag. Simpler approaches such as host-based virtualization usually cost less than more exotic products such as virtualization appliances. But any evaluation should involve the total cost of ownership of acquisition, deployment, maintenance for product updates and patches, management time/labor and the cost of any impact on the rest of your storage infrastructure. For example, the cost of a storage virtualization product may be mitigated if the product is used to speed backups or ease DR equipment needs at a remote site. Just remember: Cost involves more than the purchase price.
Purchasing decisions are often influenced by existing vendor relationships, but the implications of performance and interoperability demand a thorough consideration of any product prior to deployment. Prospective storage virtualization products should be demonstrated and benchmarked in an actual working environment, then tested rigorously in your own lab. This ensures that the product will operate as intended with your current storage platforms. When considering a storage virtualization product, examine the vendor's product roadmap.
Finally, storage virtualization can be difficult to remove once it has been implemented, so product considerations should involve a detailed evaluation of backout (decommissioning) options. This will help avoid the prospect of vendor lock-in, and allow an enterprise to adopt alternative storage virtualization products if the need arises. ***