Managing business data is a critical element of maintaining and improving business operations. At first glance, one would think that the increasing capacity of storage devices combined with decreasing costs should be a boon to storage efficiency; however, there is more to the story than cost per gigabyte. Deploying storage devices within a business' infrastructure introduces constraints and dependencies that can drive up costs and limit configuration options. Fortunately, storage virtualization can provide a logical abstraction layer in storage management that effectively eliminates significant constraints found in non-virtualized environments. This article examines:
Business run a wide variety of applications, manage with a diverse range of policies, and adapt to constantly changing business environments, but they often share common challenges with regard to storage management:
These are not management problems that can be overcome with a change in strategy or policy; they are fundamentally tied to the implementation constraints in non-virtualized IT infrastructures.
In an ideal world, every device in a network would interoperate at every level imaginable. Most IT infrastructures are far from this ideal. A business may have storage arrays from IBM, Hitachi, HP, Sun, or a number of other vendors. Although it might be trivial to copy files from one storage platform to another, combining resources from multiple disk arrays to use for application storage is much more difficult. High-level services provided by operating systems (OSs), such as FTP file transfers, work seamlessly across platforms, but the same cannot be said for lowerlevel protocols.
Vendors have implemented proprietary protocols and low-level storage services, making it difficult to interoperate with other vendors' devices. (This may even be a problem with devices from the same vendor that use different versions of protocols or services). The storage industry has attempted to overcome this problem with efforts such as the Storage Networking Industry Association's (SNIA) Storage Management Initiative Specification (SMI-S). Progress has been made, but vendors may still implement incompatible services, such as replication and snapshot creation. This lack of interoperability leads to inefficiencies in how storage resources are allocated and utilized.
Consider a simple scenario. A business has two storage arrays, one from Vendor A and another from Vendor B. Vendor A's storage array is used to support an Enterprise Resource Planning (ERP) system and is near capacity. The CFO has indicated the need to implement additional modules in the ERP, requiring an increase of 20 to 25 percent in storage. The storage array from Vendor B was purchased to support a data warehouse that is still under development and will not be at capacity for at least 2 years. There is more than enough storage on that array to accommodate the ERP's requirements. Unfortunately, the two storage arrays are not compatible, so the ERP is limited to storage available on Vendor A's storage array.
These storage silos impose additional costs on businesses because available storage cannot always be allocated where it is needed. This is the storage management version of the unwelcome "water, water everywhere and not a drop to drink" situation.
Figure 1: Silos of storage can lead to inefficiencies; some applications and servers may not be able to use storage available elsewhere on the network.
Another common challenge when managing storage arrays is the time required to provision storage. A storage manager may configure a logical unit of storage for a server (known as a Logical Unit Number—LUN). This has been a manual process that begins service desk tickets to request additional storage and does not end until the storage manager has time to address the ticket, allocate the storage, test it, and release it for production use. Once the LUN is configured, if users discover they need more or less storage, the process must be repeated to adjust allocations. The combination of limitations imposed by heterogeneous environments, inefficient allocation of storage resources, and long provisioning processes can have a direct impact on IT operations.
The impact of storage management challenges affects IT operations in two ways. First, the time and staff requirements to provision storage limits how fast and how often storage resources are re-allocated. There may be recognized inefficiencies in the allocation of resources, but they persist because higher-priority tasks and operations leave insufficient staff time to address storage management optimization.
Second, IT staff has fewer options to optimize storage-based operations, such as backup and recovery. For example, one disk array might have ample storage to provide disk backup to an application but because of incompatibilities between the storage arrays, the free disk space cannot be used. In another case, an application might need replication to meet availability and recovery requirements but there is not enough space on a single storage array to provide this. IT is left with the choice of purchasing additional storage space or not meeting a customer requirement. Advances in storage management have introduced solutions to these challenges that allow IT managers and storage administrators to more effectively manage storage resources.
Managing heterogeneous resources is a common and long-standing requirement in IT. Consider the case of printers. There is a wide array of printers from multiple vendors with many different features, yet most of them work seamlessly with common OSs. The key is that OS vendors have provided a level of abstraction between applications that use printers and the printers themselves. Applications do not need to know specific implementation details of each printer that might be used with the application, and printer vendors are free to implement features as they choose. Providing a similar layer of abstraction can address similar problems in storage management.
When using storage virtualization, the physical location of data is unknown to applications that make use of storage. Instead, applications reference a logical location that is mapped to a physical location by the storage virtualization system (see Figure 2). Storage devices are connected to the storage virtualization manager. When file systems or raw storage are required by a server, the storage manager allocates storage for that server. The server, however, does not communicate directly with a storage device; instead, it makes I/O requests for logical addresses.
Figure 2: Storage virtualization provides a layer of abstraction between storage devices and servers that use them.
Mapping from logical addresses to physical addresses is known as I/O redirection. This mapping allows the storage virtualization manager to allocate storage from any available device without the server having to be configured to support a particular storage array or use a proprietary device protocol. This also introduces flexibility with regard to improving reliability. For example, if a storage device fails, an application can continue to function using a replicated copy of data by updating the I/O redirection information in the storage virtualization manager.
Another characteristic of storage virtualization is the ability to pool resources. In Figures 1 and 2, three storage arrays have little or no free space (drums shown in red) and one array has ample free space (drum shown in green). The silo of storage configuration in Figure 1 does not allow other servers to make use of available space unless they are attached to that server. With storage virtualization, each server attached to the storage virtualization manager has access to all storage devices in the pool.
These characteristics of storage virtualization provide the means to implement strategies and services that would be difficult or impractical in a non-virtualized environment:
Storage virtualization solves technical challenges and in the process enables more efficient business operations.
Many businesses face common storage management challenges, such as heterogeneous environments, inefficient storage allocation, and long provisioning times. Virtual storage management systems address these problems by creating pools of managed storage that can be allocated where and when they are needed, improving the ability to implement policy-based management strategies, and more efficiently report back to business customers on their storage utilization and costs.