Why you need auto-provisioning

The goal is to decrease the manual, repetitive, error-prone steps that are typically required to provision storage.

By V.S. Joshi

Storage administrators are overwhelmed by the number of manual tasks they must perform repeatedly. Provisioning is one such task. The manual and complex nature of provisioning makes it susceptible to errors, resulting in delays, "application starvation," and, ironically, underutilization of storage assets. The manual nature of provisioning also affects availability of the storage infrastructure, thus directly affecting availability of applications. The manual tasks get more complicated in a heterogeneous environment where every component has a different user interface and a different process of provisioning storage to applications.

This article focuses on the challenges faced by storage administrators with regard to provisioning storage. It also discusses the promise of storage provisioning software, what it is capable of doing today, the direction it is headed, and the road map to the grand promise of auto-provisioning storage.

Current storage management problems

At some companies, storage capacity doubles every six months. Demand for more capacity means the existing storage infrastructure has to be constantly augmented to accommodate that growth. This could involve adding more capacity to existing devices or provisioning new storage devices, adding more switch ports, provisioning new servers, or increasing tape backup capacity.

From an IT management perspective, this translates into an ever-increasing demand on storage provisioning and management. However, tight IT budgets, hiring freezes, and workforce reductions put a strain on the storage administrators who have to handle this workload.

The number of tasks they have to routinely perform to ensure that the storage infrastructure functions properly often overwhelm storage administrators. Typical events that administrators must address on a regular basis are component failures, capacity and performance management, troubleshooting, and provisioning. What makes their task even more daunting is that in most environments storage administrators do not have any insight into, or controls over, servers that are connected into the managed storage "clouds" or applications that use the storage infrastructure. Provisioning and troubleshooting often involve cooperation between various groups that manage discrete components of the entire application environment, leaving storage administrators on the wrong end of many finger-pointing battles.

Click here to enlarge image

Since storage is a business-critical entity, IT management must supply storage administrators with the tools and solutions needed to increase their productivity and efficiency.

Today, beyond the automated discovery of storage network devices to create a topology view, much of storage provisioning is a manual process. A typical workflow to get new storage provisioned involves keeping track of WWN data (Excel spreadsheets are still commonly used!), accessing command-line interfaces, performing repetitive logins to individual switches, making storage visible to servers, and eventually making it accessible to applications. This is worsened by the fact that despite all the policies and governance standards in place, many IT departments have to deal with heterogeneous, multi-vendor storage infrastructures. Of course, this comes at a price since every vendor has its own proprietary management/user interface. This results in a laborious and complex web of tasks for provisioning storage. The tasks not only have to be performed manually, but they also are error-prone and time-consuming. And those tasks have to be repeated each time a change is made to the storage infrastructure.

Today, there are essentially two ways that storage can be provisioned for an application or server: reactive and proactive. Currently, the reactive way is most prevalent. In this method, the application administrator makes a request to the storage administrator for more storage, and the storage administrator reacts by jumping through multiple hoops to fulfill the request. The tasks that the storage administrator undertakes to provision storage are usually done manually. Many vendors are trying to provide provisioning tools that make the process less cumbersome, less manual, and less error-prone.

The proactive approach to provisioning is one of the components of the grand vision of storage management—the storage utility model—and is what defines application-centric auto-provisioning. In this provisioning method, the application administrator refers to a menu (similar to the one in the figure) provided by the storage administrator.

The application administrator or DBA checks off requirements on a menu based upon different criteria such as performance, availability, recoverability, scalability, etc. Typically, a gold, silver, or bronze level of service is determined for every attribute. Once attribute selections are completed, the provisioning software determines the cost associated with fulfilling that request. If the application administrator/financial approver of the user department agrees to pay the calculated charge, the administrator can order storage of a certain quality by clicking on a "Get Storage" button. The provisioning software then executes the order automatically.

Getting your storage infrastructure to a stage where auto-provisioning is possible is a challenging task, and many software vendors are trying to provide tools to accomplish this. These software tools will enable storage administrators to set rules and policies that will enable applications to obtain the quality and quantity of storage they require. Based on these pre-determined criteria, the storage administrator will then be able to eliminate most manual, repetitive, and error-prone tasks while concentrating on more value-added ones.

Thus, for any application that needs to use the underlying storage infrastructure, the IT storage group should be in a position to give application administrators a menu of available services and make the underlying storage infrastructure "provisionable." For example, a mission-critical application should receive storage at a gold level for most attributes (i.e., storage that is highly available with remote mirroring and multiple paths between applications and storage). The provisioning tool should be able to carve a volume of this quality of service (QoS) from the existing storage pool, assign LUNs, perform LUN masking, create a zone and zone set, activate that zone, map the host bus adapter (HBA) LUNs to the operating system, make the volume manager aware of the newly created LUN and expand an existing file system or create a new file system, and also provision for the secondary storage (e.g., business continuity volumes) and backup automatically.

This kind of automated provisioning also gets us closer to the storage utility model. Although the benefits of the storage utility model are well-understood, very few enterprises are ready to adopt this model at this time. In most cases these organizations are not structured or organized to leverage the storage utility model to its maximum potential. Their entire infrastructure appears like a black hole. It is this set of customers that could benefit from software that helps them understand their current storage environment, manage it, and automate it. These organizations realize that introducing complete automation without finishing the earlier steps is a sure recipe for disaster, as they continually face structural challenges and issues. As a result, while moving toward the goal of a storage utility they need tools and solutions that will solve their current problems, yet have an architecture that is flexible and reliable.

Storage software vendors are trying to build the intelligence by which the correlation between the different levels (gold, silver, and bronze) and the underlying storage infrastructure can happen in various combinations. For example, gold for one attribute, silver for another, and bronze for a third will be intelligently deciphered by the software and with the integration of workflow engines, ticketing requests, and policies, the application will get the storage it requires.

However, for all this to happen automatically, storage vendors will have to gain credibility from IT departments. The confidence of IT departments will increase only when they see that the software vendors are delivering on the promises of a storage utility.

Road map to the grand vision

Discovery and topology view—Before the provisioning component of the software comes into the picture, the software should first discover individual elements in the storage network and then provide a topology view from the application down to the spindle level (application-host-switch-storage layers). It should understand storage relationships and display dependencies between the components in the network.

Heterogeneity and a single interface—Provisioning software should provide a single GUI for the management of multi-vendor storage devices. It should preferably be single paned to avoid making storage administrators use multiple software tools from different vendors. One interface also reduces the possibilities of error.

Integrated approach—Provisioning software should be part of a comprehensive storage area management (SAM) solution that seamlessly integrates SAN management, SRM, provisioning, chargeback, and application management. Storage provisioning requires SAN management and SRM to monitor the storage environment so that capacity planning and trend analysis can be done and implemented for provisioning.

Architecture—Proprietary architectures limit the software's future capabilities and reduce the breadth of support. The architecture should be based on industry standards.

A provisioning software tool can deliver meaningful benefits derived from auto-provisioning if it incorporates these fundamental building blocks.

Due to the organizational constraints of many IT departments, storage administrators are not allowed to have any access to the host and application side. As such, the farthest the software can provide help is up to provisioning LUNs to the host. Thereafter, it is up to the system administrator and application/database administrator to get that LUN associated with the host operating system, file system, and application or database. However, as IT organizations evolve, some vendors will provide end-to-end provisioning.

The intelligence to decipher the various service levels of different attributes (performance, availability, and recoverability, etc.) in various combinations should take the auto-provisioning of storage very close to the nirvana of a storage utility model.

Click here to enlarge image

V.S. Joshi is an independent storage consultant in Massachusetts. He can be contacted at vsjoshi@rcn.com.

This article was originally published on July 01, 2004