Virtualization is a concept that applies to many
areas of the information technology industry.
For data storage, virtualization includes the creation of a pool
of storage that contains several disk systems. These systems can be
supplied from various vendors. The pool can be split into virtual
disks (VDisks) that are visible to the host systems that use them.
Therefore, VDisks can use mixed back-end storage and provide a common
way to manage a storage area network (SAN).
Historically, the term
virtual storage has described the
virtual memory techniques that have been used in operating systems.
The term
storage virtualization, however, describes the shift
from managing physical volumes of data to logical volumes of data.
This shift can be made on several levels of the components of storage
networks. Virtualization separates the representation of storage between
the operating system and its users from the actual physical storage
components. This technique has been used in mainframe computers for
many years through methods such as system-managed storage and products
like the IBM® Data Facility Storage
Management Subsystem (DFSMS). Virtualization can be applied at the
following four main levels:
- At the server level
- Manages volumes on the operating systems servers. An increase
in the amount of logical storage over physical storage is suitable
for environments that do not have storage networks.
- At the storage device level
- Uses striping, mirroring and RAIDs to create disk systems. This
type of virtualization can range from simple RAID controllers to advanced
volume management such as that provided by the IBM TotalStorage® Enterprise Storage Server® (ESS) or by Log Structured Arrays (LSA). The Virtual Tape
Server (VTS) is another example of virtualization at the device level.
- At the fabric level
- Enables storage pools to be independent of the servers and the
physical components that make up the storage pools. One management
interface can be used to manage different storage systems without
affecting the servers. The SAN Volume Controller performs
virtualization at the fabric level.
- At the file system level
- Provides the highest benefit because data is shared, allocated,
and protected at the data level rather than the volume level.
Virtualization is a radical departure from traditional storage
management. In traditional storage management, storage is attached
directly to a host system, which controls storage management. SANs
introduced the principle of networks of storage, but storage is still
primarily created and maintained at the RAID system level. Multiple
RAID controllers of different types require knowledge of, and software
that is specific to, the given hardware. Virtualization provides a
central point of control for disk creation and maintenance.
One problem area that virtualization addresses is unused capacity.
Before virtualization, individual host systems each had their own
storage, which wasted unused storage capacity. Using virtualization,
storage is pooled so that jobs from any attached system that need
large amounts of storage capacity can use it as needed. Virtualization
makes it easier to regulate the amount of available storage without
having to use host system resources or to turn storage devices off
and on to add or remove capacity. Virtualization also provides the
capability to move storage between storage systems transparently to
host systems.
Types of virtualization
Virtualization can
be performed either asymmetrically or symmetrically.
Figure 1 provides
a diagram of the levels of virtualization.
- Asymmetric
- A virtualization engine is outside the data path and performs
a metadata style service.
- Symmetric
- A virtualization engine sits in the data path and presents disks
to the hosts, but hides the physical storage from the hosts. Advanced
functions, such as cache and Copy Services, can therefore be implemented
in the engine itself.
Virtualization at any level provides benefits.
When several levels are combined, the benefits of those levels can
also be combined. For example, you can combine benefits by attaching
a RAID controller to a virtualization engine that provides virtual
volumes for a virtual file system.
Note: The SAN Volume Controller implements
fabric-level virtualization. Within the context of the SAN Volume Controller and
throughout this document, virtualization refers to symmetric
fabric-level virtualization.
Figure 1. Levels of virtualization