US2007106798A1PendingUtilityA1

Method for provisioning resources

48
Assignee: MASUMITSU KENPriority: Nov 10, 2005Filed: Nov 8, 2006Published: May 10, 2007
Est. expiryNov 10, 2025(expired)· nominal 20-yr term from priority
G06F 9/5044G06F 9/5027G06Q 10/06315G06Q 10/06375G06F 9/505G06F 2209/5019G06Q 10/06316
48
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A present IT environment, in particular, a place such as a data center in which resources are concentrated at one place, requires a mechanism (provisioning) for allocating an excess resource (a server, a network apparatus, a storage, or the like) to the service in response to a load fluctuation of a service. In some cases, setting operations occurring in the process of the provisioning are time-demanding. In those cases, it is impossible to respond to abrupt load fluctuations. [Solving means] Procedures starting from an initial state of the resource and ending in a state where each of resources is deployed for each service are identified, and the procedures are expressed as a directed graph having a state of the resource in each phase as a node (stage), and having a setting operation as an edge. There are some cases, however, where even for deployments intended for different services, an initial state and some of intermediate states are common. In those cases, those common intermediate states are expressed as a single node. When resources are allocated to nodes near to a state where a service is developed, it is made possible to reduce a time required for provisioning to the service.

Claims

exact text as granted — not AI-modified
1 . A provisioning method for allocating resources required by a plurality of services, comprising the steps of: 
 staging so as to provide at least one stage, as an intermediate state, in the process of provisioning, in a resource pool shared by the plurality of services;    allocating a state of at least one of the resources to at least one of the stages as an initial state provided in advance; and    calculating a predetermined cost by using a predetermined algorithm based on a setting operation time required for causing a state of each of the allocated resource to transition to another stage, and optimally allocating all the resources to the respective stages in order to minimize the predetermined cost.    
     
     
         2 . The method for provisioning according to the  claim 1 , wherein, in the staging step, a directed graph is generated which has each of the stages as a node, and each of the setting operation times as a weight of the edge.  
     
     
         3 . The method for provisioning according to the  claim 2 , wherein the predetermined cost is determined by a product of a time required for completing deployment of resources for a certain service, and a penalty for a delay of the deployment for the service, the resource deployment caused by resource request generation from the service.  
     
     
         4 . The method for provisioning according to the  claim 3 , wherein the predetermined algorithm finds a pattern of allocating all the resources to stages by simulation based on a resource request generation distribution of each of the services, the allocation pattern minimizing a predetermined cost and being a pattern any one of one and two moves ahead of a current allocation pattern of all the resources.  
     
     
         5 . The method for provisioning according to the  claim 3 , wherein: 
 the predetermined algorithm calculates an expected value E(S) of each pattern of allocating all the resources to stages by using                E   ⁡     (   S   )       =       ∑   x     ⁢       p   ⁡     (   X   )       ×     c   ⁡     (     S   ,   X     )             ,     
     ⁢         where   ⁢           ⁢     c   ⁡     (     S   ,   X     )         =       ∑     i   ,   j       ⁢       ω   x     ×     d   ⁡     (     i   ,   j     )             ;             P(X) denotes a generation probability of a request X; ω x  denotes a penalty for a delay in deployment for a request X; and d(i, j) denotes a time required for a transition from node i, where a resource is currently located, to node j corresponding to the request X;    the algorithm finds a pattern of allocating all the resources to stages, the allocation pattern minimizing the expected value E(S); and    the algorithm determines a transition from a current resource allocation to the resource allocation of the allocation pattern by using a graph-matching problem.    
     
     
         6 . The method for provisioning according to the  claim 3 , wherein: 
 the predetermined algorithm calculates E(S, X) found by the following equation for each pattern of allocating all the resources to stages and for each of all the services:              E   ⁡     (     S   ,   X     )       =       ω   X     ×       ∑     i   =   1     N     ⁢       c   i   *     ⁢             P   X       ⁡     (   i   )                               where   ⁢           ⁢   if   ⁢           ⁢       ∑     j   =   1       k   -   1       ⁢     n   j         +   1     ≤   i   ≤       ∑     j   =   1     k     ⁢     n   j         ,         then   ⁢           ⁢     c   i   *       =     c   k       ;             ω x  denotes a penalty for a delay in deployment for a service X; P x   (i)  denotes a generation probability of a request for i resources to the service X; n j  denotes the number of resources allocated to the j-th nearest node from the service X; and c k  denotes a weight of a transition to the service X from the k-th nearest node to the service X;    the algorithm further calculates an expected value E(S) which is a sum total of the E(S, X) for all the services X, and finds a pattern of allocating all the resources to stages, the allocation pattern minimizing an E(S); and    the algorithm determines a transition from a current resource allocation to a resource allocation of the allocation pattern by using a graph-matching problem.    
     
     
         7 . The method for provisioning according to  claim 4 , wherein the simulation causes a resource request based on a particular probability distribution.  
     
     
         8 . A staging engine for provisioning resources required by a plurality of services, the stage engine comprising: 
 a graphing unit for providing at least one stage, as an intermediate state, in the process of provisioning, in a resource pool shared by the services, and for generating a graph having each of the stages as a node, and having a transition between the nodes as an edge;    a transition planning unit for finding an optimum allocation of states of all the resources in the resource pool in order to minimize a predetermined cost found by using a predetermined algorithm;    a transition request issuing unit for issuing a resource transition process request based on a transition plan issued by the transition planning unit;    an event processor for waiting for an event from an outside; and    a deployment unit for finding a node nearest to the service in which the request is generated, in a case where the event is a service request.    
     
     
         9 . The staging engine according to  claim 8 , wherein the transition planning unit further comprises the functions of: 
 receiving an input of a setting operation time required for a transition of a state of each of the allocated resources to another of the nodes; and    calculating a predetermined cost by using a predetermined algorithm based on the setting operation times.    
     
     
         10 . The staging engine according to  claim 8 , wherein the event is any one of a resource request, transition process completion, addition of a resource to the resource pool, and deletion of a resource from the resource pool.  
     
     
         11 . A provisioning system including the staging engine according to  claim 8 , the provisioning system further comprising a provisioning manager for executing setting operations of the resources in response to the resource transition process request from the staging engine.  
     
     
         12 . A computer program for causing a computer to execute provisioning for allocating resources required by a plurality of services, the computer program for causing the computer to execute the functions of: 
 staging so as to provide at least one stage, as an intermediate state, in the process of provisioning, in a resource pool shared by the services;    allocating a state of at least one of the resources to at least one of the stages as an initial state provided in advance; and    calculating a predetermined cost by using a predetermined algorithm based on a setting operation time required for causing a state of each of the allocated resources to transition to another of the stages, and optimally allocating all the resources to the respective stages in order to minimize the predetermined cost.    
     
     
         13 . A storage medium for storing the computer program according to  claim 12.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.