Day 4 Cloud Resource Provisioning Plans Agenda for Today Cloud - - PowerPoint PPT Presentation
Day 4 Cloud Resource Provisioning Plans Agenda for Today Cloud - - PowerPoint PPT Presentation
Day 4 Cloud Resource Provisioning Plans Agenda for Today Cloud service providers offer cloud consumers a variety of service provisioning plans for computing resources. Today, we will look at these service provisioning plans that include
Agenda for Today
- Cloud service providers offer cloud consumers a
variety of service provisioning plans for computing resources.
- Today, we will look at these service provisioning
plans that include
– Short term planning (on-demand plan) – Advance Reservation planning – Opportunistic planning
- Formulate simple problem statement and discuss
the opportunities and the challenges they bring
- List many open research problems
Introduction
- A resource provisioning mechanism is used in cloud
computing to enable cloud consumers to rent a set
- f resources on a short term or a long term bases
- Cloud service providers such as Amazon EC2,
generally offer pricing schemes in the form of
– On-Demand, – Reserved, and – Spot instances (Preemptible VMs in Google)
- We will focus on the Amazon pricing plan here.
Cloud Data Center Model
- The Cloud resource provisioning enables virtualized
resources to be allocated to Cloud consumers based
- n three provisioning plans.
J1 J1 Jn
Cloud consumer Virtualized Resources
request Result
Service Provisioning On-demand Advance Reservation Spot Instances On-Demand Instances – it is an intermediate-term plan that allows customers to pay hourly for resource usage on pay-as-you- go bases. Advanced Reservation – it is a long- term plan that allows customers to pre-reserve resources. Spot Instances - it is a short-term plan that allows customers to bid
- n unused resources.
Advanced Reservation
- Some applications such as interactive
multimedia require end-to-end reservation for resources.
- Advance reservation techniques are very
useful in federated cloud as well, particularly for the co-allocation of various resources.
Advanced Reservation
- All major Cloud service providers offer advanced
reservation of cloud datacenter resources
– Advanced Reservation enables Cloud customers to reserve resources in advance for a specific duration. – Reservation is accepted for a fixed contract duration (e.g. for a 1 year contract or for a 3 year contract) with a one- time upfront payment for the duration of the contract
- Reservation is significantly cheaper than the on-
demand fee structure.
- In Amazon EC2, reserved instances are available in
light, medium, and heavy utilization types.
Advanced Reservation Challenges
- Advanced reservation plan is good for Cloud users as
it can substantially reduce the total resource provisioning cost.
- The major challenges include
– Uncertainty of consumer's future demand and providers' resource prices. – Under-provisioning and overprovisioning problems
- How to solve the above challenges have been an
active research area.
- Specifically, how can we develop such advanced
reservation algorithms to enhance user experiences?
Reservation cost
- We need to determine the cost of the reservation for
provisioning the resource type requested by the user.
- Let ℛ denote the set of resources provided to the
user by the Cloud provider. The cost is expressed as follows: 𝑑𝑠𝑓𝑡 = 𝓈𝑗𝑠 ∙ 𝑑𝑠
𝑠∈𝑆
- Where
– 𝓈𝑗𝑠 is the amount of resource of type r from class i used by the Cloud user. – 𝑑𝑠 is the cost of resource of type r
Reservation cost
- For example, an end user reserves the following VMs
– ℛ ={medium and extra large}. – 𝓈𝑗𝑠 = {three medium and two extra large}. – 𝑑𝑠 ={$132, $552}
- The cost is follows:
𝑑𝑠𝑓𝑡 = 𝓈𝑗𝑠 ∙ 𝑑𝑠 = 3 ∗ 132 + (2 ∗ 552)
𝑠∈𝑆
Extra Reservation Cost
- We need to take into account the case where under
reservation can occur. In this case, a short time provision is requested at a higher cost.
- The extra cost is expressed as follows:
𝑑𝑓𝑦𝑢𝑠 = 𝓈𝑗𝑠 ∙ 𝑑𝑠 ∙ 𝑢𝑠
𝑠∈𝑆
- Where
– ℛ denote the set of resource types which can be provided by the cloud provider.
– 𝓈𝑗𝑠 is the amount of resource of type r required by the VM in
class i. – 𝑑𝑠 is the cost of resource of type r – 𝑢𝑠 is the cost of resource of type r per hour
Problem Formulation
- The Cloud provider offers K = 𝑙1, 𝑙2, ⋯ , 𝑙|𝐿|
different types of reservation contracts.
- Let us determine the possible cost that a user with
advanced reservation can incur
- Let the cost due to over-reservation be 𝒟𝑝𝑤𝑓𝑠
- Let the cost for under-reservation be 𝒟𝑣𝑜𝑒𝑓𝑠
- The total cost to the user for using cloud resources
will be
𝒟𝑢𝑝𝑢𝑏𝑚 = 𝒟𝑝𝑤𝑓𝑠 + 𝒟𝑣𝑜𝑒𝑓𝑠
Problem Formulation
- The aim of the resource provisioning algorithm is
expressed as follows: 𝑛𝑗𝑜𝑗𝑛𝑗𝑨𝑓 𝒟𝑢𝑝𝑢𝑏𝑚
- Under the following conditions
– the consumer’s demand for reserved resources must be met. – maintain that the amount of extra resources utilized to be less than or equal to the number of reserved resources, and – the allocation of resources must be less than the maximum resource capacity offered by a Cloud provider.
Problem Formulation
- It is important that the resource provisioning
algorithm should be designed to minimize the total cost of resource provisioning to end users
– by reducing the on-demand cost – By reducing oversubscribed cost of both under- provisioning and over-provisioning.
- The algorithm should also consider both
– the demand uncertainty from cloud consumer side, and – price uncertainty from cloud providers
- We look at the optimization strategy discussed in [3]
to minimize the overall resource usage costs to the user.
Reservation Contract Types
- The Cloud service provider offers 𝐿 = 𝑙1, 𝑙2, ⋯ , 𝑙|𝐿|
different types of reservation contracts for a fixed period (1 year or 3 years) with a fixed price.
- Cloud users can contract with the service provider based
- n one or more of 𝐿 contracts.
- Each type of contract 𝑙𝑗 ∈ 𝐿 is defined by the following
tuple
𝑙𝑗 = 𝑆𝑙, 𝑠
𝑙, 𝑢𝑙
- Where
– 𝑆𝑙 is a one time reservation cost – 𝑠
𝑙is the usage cost per hour
– 𝑢𝑙 is the duration of the contract
Simplifying Assumptions
- ‘h’ indicates the size of a specific stage. The size is
determined by the number of hours per stage.
- As an example, an application can have the following
sequences
– Read a file over the network – Process the data – Write the results to a remote disk.
- It is assumed that an application is run through
different stages (t) as shown below
Stages t4 t3 t1 T t2
h
Applications resource demand
- Reading the file requires access to network and
memory resources
- Processing the data requires CPU, temporary storage
and memory resources
- Writing a result requires network resources and
storage resources.
- The future value of the application demand for
resources is assumed to be known in advance.
Simplifying Assumptions
- For each activity above, the application can use the
reserved resources based on the contract
– If the demand for resources at a given stage t exceeds the reserved amount, the extra resources are fulfilled using the on-demand instances.
- The following diagram shows the case where the
application exceeds its reserved resource needs at stage t3
Stages t4 t3 t1 T
h
t2
On-demand
Application resource demand
- The application’s resource demand (D) to run at every stage is
known a priori.
- The applications resource demand duration may be more
than the duration of contract (𝑠
𝑙) at any stage of the
application execution
- This case will trigger the on-demand resource provisioning at
a higher additional cost.
Stages t4 t3 t1 T
h
t2
On-demand
𝑠𝑙
Simplifying Assumptions
- At every stage (t), we need to decide the following
– 𝑌𝑢,𝑆𝑙: decide the number of instances to be reserved under contract 𝑙. – 𝑌𝑢,𝑠𝑙: determine the number of reserved instances to be launched from contract 𝑙. – 𝑌𝑢,𝑝: determine the number of ‘on-demand’ instances to be launched.
- Note that the ‘on-demand’ instance cost per hour is much
higher than the reserved instance cost (𝑝 > 𝑠
𝑙)
Simplifying Assumptions
- We can determine the cost at any stage (t) as follows:
𝐷𝑢 = 𝑌𝑢,𝑆𝑙 ∙ 𝑆𝑙 + 𝑌𝑢,𝑠𝑙 ∙ 𝑠
𝑙 ∙ ℎ 𝐿 𝑙=1
+ 𝑌𝑢,𝑝 ∙ 𝑝 ∙ ℎ
– 𝑌𝑢,𝑆𝑙 ∙ 𝑆𝑙: The product of the number of instances to be reserved under contract 𝑙 (𝑌𝑢,𝑆𝑙) and the one time reservation cost (𝑆𝑙) represents the cost of reservation under contract k, – 𝑌𝑢,𝑠𝑙 ∙ 𝑠
𝑙 ∙ ℎ: The product of the resource usage cost per hour (𝑠 𝑙) and
the number of reserved instances to be launched from contract 𝑙 (𝑌𝑢,𝑠𝑙) and the number of hours per stage (h) stands for the cost of using reserved instances, and – 𝑌𝑢,𝑝 ∙ 𝑝 ∙ ℎ: the number of ‘on-demand’ instances to be launched (𝑌𝑢,𝑝) and the usage charge per hour for an on-demand instance (𝑝) and the number of hours per stage (h) stands for the cost of using on-demand instances.
Single Contract Reservation
- The reservation decision is taken for each contract duration (called
segment) separately during the whole duration of the demand vector as shown below.
Note that the whole duration of T is divided into multiple segments with each segment being of duration 𝑢𝑙. segments
Open Problems
- Research question 1: How can we integrate the various
uncertainties into the algorithm?
- Research question 2: Can integrating the option of spot
pricing scheme further minimize the total cost?
- Research question 3: Currently, users can only reserve
instances (i.e., either 1-year reservation or 3-year reservation). An approach that permits customers to reserve resources for any length and from any time point in the future.
- Research question 4: Reservation can lead to an eviction
- f currently running applications to accommodate the
need for reservation of resources. How can this be minimized?
Open Problems
- Research question 5: The work so far try to maximize
social welfare. An open question is how can we maximize the revenue for the cloud provider. Many exiting work
- nly look at a single cloud service provider. How can we
extend this to multiple clusters?
- Research question 6: There are many work that statically
determine the amount of resources to be reserved in advance in order to minimize the total cost of running an
- application. There is a need for extending or proposing
new approaches that dynamically determine the amount
- f resources to be reserved in advance in order to
minimize the total cost of running an application.
Summary of Advanced Reservation
- Minimizing both under-provisioning and
- verprovisioning problems under the demand and
price uncertainty in cloud computing environments is important.
- The under-provisioning problem can be solved by
provisioning more resources at higher cost with on- demand plan.
- The only recourse for the overprovisioning problem
is to support it with on-demand instances fee structure.
Spot Instances
- Spot instances are Amazon’s third plan specifically
tailored for offering their unused resources at a much lower cost than both on-demand and advanced reservation
- Major cloud service providers (AWS, Google, and
Azure) offer the option to use Spot Instances.
- Cloud users can bid on unused Amazon EC2 capacity
and run those instances for as long as their bid exceeds the current spot price.
- A wide variety of auction-based approaches for spot
instances bidding has been proposed in the literature.
Spot Instances
- Spot Instances are very useful in both batch
processing and high-performance clusters, as well as web server fleets with variable workloads.
- The appeal for Spot Instance is its cheapness as
compared to both Reserved and on-demand Instances
- It is estimated that
– reserved instances can save up to 70% compared to On- Demand with a 1- or 3-year commitment – spot instances saving is as high as 80-90% compared to On- Demand
Issues With Spot Instances
- Spot Instances are a cost-effective choice if
you can be flexible about when your applications run and if your applications can be interrupted.
- Why Spot Instances are well-suited for data
analysis, batch jobs, background processing, and optional tasks.
Spot Instances
- The problem with spot instances is that their price
changes periodically based on supply and demand of spot instances
- Cloud users whose bid exceeds the current spot
instances price gain access to the available spot instances.
- This render the use of spot instances unreliable since
the instances may become unavailable at any time without any notice to the customer.
- One way to handle the sudden discontinuation of
spot instances is to deploy checkpointing schemes.
Differences
- The key differences between Spot Instances
and On-Demand Instances are that
– Spot Instances can only be launched immediately if there is available capacity, – the hourly price for Spot Instances varies based on demand, and – Spot instances can be interrupted
Research Question
- Research question 1: Spot instance offering is
not SLA-governed service to users. Although the availability of service SLAs is a core paradigm of cloud computing, spot instances in practice still come without any service quality guarantees. How can you extend the spot instance service to provide SLA for eviction probability?
Research Question
- The life-time of spot instances are unknown quantity
in the provisioning of cloud services. Basically, the life-time uncertainty of a spot-instance makes their use difficult to end-users.
- Research question 2: Can we develop a predicative
algorithm that can predict spot instance lifetimes?
- Research question 3: How can we integrate the
predicative algorithm with the resource provisioning to ensure that all accepted spot requests meet their target lifetime?
Research Question
- A spot-instance will be terminated if the capacity is
needed to run an on-demand instance.
- Research question 4: Developing SLA-aware
resource provisioning algorithm that effectively co-schedule on-demand workloads with spot workloads to provide guarantees to utilize otherwise unused resource capacity
References
- Sivadon Chaisiri, Bu-Sung Lee, Member, IEEE, and Dusit Niyato, . IEEE
- Trans. on Service Computing, Vol. 5, No. 2, 2012.
- Sunirmal Khatua, Nandini Mukherjee, A Novel Checkpointing Scheme for
Amazon EC2 Spot Instances, International Symposium on Cluster, Cloud and Grid Computing (CCGrid), 2013 13th IEEE/ACM Pages, 180-181, 2013/5/13, DOI: 10.1109/CCGrid.2013.71
- PK Sur, RK Das, N Mukherjee, Heuristic-based resource reservation
strategies for public cloudS Khatua, IEEE Transactions on Cloud Computing 4 (4), 392-401
34