The term virtualization is used to describe our behavior of abstracting a set of techniques. For example, server virtualization is the abstraction of a server instance from the physical hardware on which it is running. Storage virtualization is the abstraction of a physical medium (a hard drive or solid-state drive) from a connected server. As with other forms of virtualization, this general definition varies based on vendor and usage.
Almost all storage systems provide some form of abstraction between users and physical devices. Even the logical Volume Manager provides some level of virtualization. However, most old storage systems require you to select a good drive and define how many drives will be associated with each group when creating a volume or RAID (redundant array of independent disks) group.
While there is a certain "virtual ingredient" in this process, your application now faces groups rather than individual drives, but that does not make storage easier to manage. One of the purposes of using storage virtualization is to make storage management processes-especially configuration processes-simpler and more efficient for storage.
For example, if you want to define a high-performance volume without virtualization, you must define which high-speed drives are merged into that volume. You will have to know where each drive in the system is and where the drives are in order to properly load balance and manage availability. In this way, you tend to buy a dedicated storage system and try to use the same type of drive.
Virtualized storage systems often help you do this by grouping drives by type or speed. When you decide to need a 200GB high performance volume, the system determines which drives should be used for this volume and how much should be used. In many cases, the system will improve performance with a portion of all the available drives in a given type. This makes the hybrid configuration of multiple drive types more feasible and more controllable because the system can determine where the data should be placed.
Many of these virtualization systems can also virtual allocate capacity on demand. This technology is what we call an automated streamlined configuration. As we discussed in our automated compact configuration white Paper, this technology allows you to configure an excess of existing storage, and in fact most applications do not use the maximum capacity limit physically.
Some storage virtualization solutions further increase the abstraction and abstraction of storage software from storage controllers. In this case, any storage server, or any array connected to these servers, is shown as a large storage system. This allows administrators to use the various storage connected to one or more server hierarchy systems to run the store as an application. In fact, there are several storage applications that can be run as virtual machines within a virtualized server environment.
Other systems take a more common turnkey approach, handing storage virtualization software and physical hardware to customers as a single bundle. In this way, in theory, vendors can provide better support and maintenance. In some cases, they tailor their hardware to support virtual storage software to provide better performance and scalability. In a way, we see vendors in the Virtual server arena that are starting to provide consolidated servers and network stacks in a similar way to support the turnkey type of virtual server experience.
As with server virtualization, storage virtualization is also evolving. We will see more evolution in the market. I believe that the two deployment styles-storage as applications, consolidated storage virtualization-will be successful. Despite the strong admiration of vendors, storage virtualization has its drawbacks, which we will discuss in future post.