In cloud computing, cloud providers can offer cloud consumers two provisioning plans for computing resources, namely reservation and on‐demand plans. In general, cost of utilizing computing resources provisioned by reservation plan is cheaper than that provisioned by on‐demand plan, since cloud consumer has to pay to provider in advance. With the reservation plan, the consumer can reduce the total resource provisioning cost. However, the best advance reservation of resources is difficult to be achieved due to uncertainty of consumer's future demand and providers' resource prices. To address this problem, an optimal cloud resource provisioning (OCRP) algorithm is proposed by formulating a stochastic programming model. The OCRP algorithm can provision computing resources for being used in multiple provisioning stages as well as a long‐term plan, e.g., four stages in a quarter plan and twelve stages in a yearly plan. The demand and price uncertainty is considered in OCRP. In this paper, different approaches to obtain the solution of the OCRP algorithm are considered including deterministic equivalent formulation, sample‐average approximation, and Benders decomposition. Numerical studies are extensively performed in which the results clearly show that with the OCRP algorithm, cloud consumer can successfully minimize total cost of resource provisioning in cloud computing environments.
2. Contents
•
•
•
•
•
•
•
•
•
•
•
Overview of Cloud Computing
Challenge of Resource Provision in the Cloud
Optimal Cloud Resource Provisioning
OCRP Model
Provisioning Phases
Provisioning Stages
Reservation Contracts
Uncertainty
Benders Decomposition
Sample-Average Approximation
Numerical Results: Provisioning Cost
3. Overview of Cloud Computing
•
•
•
•
•
•
•
•
•
Large distributed system
Large pool of resources
Multiple provider
Multiple data-centers
Virtualization
Internet access
Pay-per-use basis
Provisioning options/plans
•
•
On-demand
Reservation
Example: Amazon
4. Overview of Cloud Computing:
Provisioning Plans
• Reservation can reduce the total provisioning cost
•
•
On-demand (Small Instance): 0.085 x 365 x 24 = $744.60 for 1yr
contract
Reservation: 227.50+(0.03x365x24) = $490.30 for 1yr contract or
34% cheaper but 49% cheaper for 3yr contract
Source: http://aws.amazon.com/ec2
5. Challenge of Resource Provision in
the Cloud
•
•
•
Resource provision = activity to provide / supply resource (to
accommodate users/systems)
Goal: How many VMs (i.e., how much resource) do we need to
provision in advance (i.e., provision with reservation plan) ?
Challenge
•
•
•
•
Multiple cloud providers and Quality of Service(QoS) & Service Level
Agreement(SLA)
Multivariate uncertainty e.g., demand, price, availability
Optimal solution under uncertainty
Computational complexity
VM = Virtual Machine
6. Challenge of Resource Provision in
the Cloud: Uncertainty
•
Uncertainty of price
•
•
On-demand price might be fluctuated
Uncertainty of availability
•
•
Free / cheap resources offered by a cloud provider might be
provided based on weak SLAs
Internet bandwidth is not reliable until cloud resources might
not be accessible
8. Optimal Cloud Resource
Provisioning
•
OCRP algorithm is proposed
•
•
•
•
•
To minimize the expected resource provisioning cost in multiple
provisioning stages e.g., 4 stages in quarter plan, 12 stages in 1-Y
plan, 36 stages in 3-Y plan, etc.
To consider multivariate uncertainty
Optimal solution is obtained by formulating and solving
stochastic integer programming with multi-stage recourse
Techniques to solve OCRP: deterministic equivalence, benders
decomposition, sample-average approximation
Several experiments show that OCRP can minimize the cost
under uncertainty
10. Provisioning Phases
• Provisioning phase: time interval when resources need to
be provisioned or utilized
1.
2.
3.
Reservation phase: reserve resources
Expending phase: utilized the reserved resources
On-demand phase: provision more resources on-demand
11. Provisioning Stages
• Provisioning stage: time epoch when cloud broker makes
a decision
• Examples
•
•
Two stages: current and future (e.g., now and next month)
Twelve stages: Yearly plan = January to December
12. Reservation Contracts
• Reservation contract: signed contract stating the time
duration of availability of reserved resource
• During the contract period, price is discounted
• Examples: 3-month (K1) and 6-month (K2) contracts
13. Uncertainty
• Stochastic programming requires uncertainty
parameters, namely scenarios given by set Ω
• Scenarios can be described by a probability distribution
• Set Ω has finite support with probabilities p(ω) Є [0,1]
where ω=(ω1,…, ω|T|) Є Ω
Ω = ∏ Ωt = Ω1 x Ω2 x…x Ω|T|
tЄT
14. Benders Decomposition
• Benders decomposition breaks
down an optimization problem
into smaller problems which
can be solved independently
(parallel)
• Given the results obtained
•
from master & subproblems, the lower & upper
bounds of solution can be
calculated
Convergence bounds checked by zv(ub) - zv(lb) < Є where
zv(ub) - zv*(e) and zv(ub) = zv*(e) – αv + zv*(r) + Σ zv*(o) (ω)
15. Sample-Average Approximation
• If the number of scenarios (Ω) is numerous, it may not be
efficient to obtain the solution of OCRP
• SAA addresses the problem by sampling N scenarios,
then SAA-based OCRP formulation is solved given the N
samples
• We modelled OCRP based on SAA approach to choose N
that yields the acceptable approximated solution
• SAA can be parallelized as well
17. Conclusion
• Resource provisioning algorithms based on stochastic
programming and robust optimization have been
proposed
• The algorithms can be applied in real world to minimize
provisioning costs
• Resource management framework for cloud computing
will be composed
18. Reference
• Paper on “Optimization of Resource Provisioning Cost in
Cloud Computing” presented by Sivadon Chaisiri in PDCC
Seminar, Parallel & Distributed Computing Centre, Friday
21st, 2011
• Paper on “Cloud Computing for on-Demand Resource
Provisioning” presented by Ignacio M Llorente in 7th
NRENs and Grids Workshop at Trinity
College, Dublin, September 2, 2008
Good afternoon everyone. Myself Aswin. I’m here to present you the topic optimization of resource provisioning cost in cloud computing. I’m guided by Sunil Kumar P V.
First let us move through the contents of my topic. Here we’re going to deal with the topics…
So, what is cloud computing? The concept of cloud computing is entirely different from that of a server based hosting. Cloud is a large distributed system with a large pool of resources. There are multiple providers in cloud with multiple data-centers. The concept of cloud is based on virtualization. It provides internet access. The biggest advantage of cloud computing is the way you pay for it. You only pay for what you use. Now, going into the provisioning plans, we have two planes – on-demand & reservation. An example of cloud is Google’s Appengine.
As I said before, we have two provisioning plans. The slide shown represents the cost of the two plans in amazon.com. /*Explain*/ From this it is clear that we have a lower cost for reservation plans.
Moving on to the challenge of resource provision in cloud. Resource provision is the ratio between activity to provide and the supply resource i.e, the activity to provide to accommodate users/system. So the goal of resource provisioning is to find how many resources or virtual machines we need to provision in advance with reservation plan. The challenges of resource provisioning are:Multiple cloud providers & QoS & SLAMultivariate uncertainty like demand, price, availabilityOptimal solution under uncertainty; andComputational complexity