Upload
pearl-banks
View
212
Download
0
Embed Size (px)
Citation preview
Cloud Resource Scheduling for Online and Batch ApplicationsKick-off meeting
Project GoalDevelop a resource management
system that◦Deploy different types of jobs to
servers.◦Dynamically adjust the resource
allocation according to job workloads.
◦Meet the Service Level Agreement(SLA) of latency-sensitive jobs.
◦Minimize the cost. Penalty of violating SLA
Type of JobInteractive job
◦Latency-sensitive◦State-less◦Strict SLA
Batch job◦Consists of many (independent)
tasks.◦Soft deadline.
ExampleYouTube
◦Interactive: video streaming◦Batch: flow analysis
Phone billing system◦Interactive: rate querying/changing◦Batch: calculating the phone bill per
user.
Cost“Penalty”
◦The price we have to pay for violating the SLA.
Each job has different penalty rate.◦P( Ja ) = penalty rate( Ja ) * max(0, v),
Ja ∈ I v: percentage of SLA violation within a
time window
◦P( Jb ) = penalty rate ( Jb ) * max(0, d), Jb ∈ B d: difference between job completion
time and deadline.
Problem DefinitionGiven a set of batch job B, a set
of interactive job I, the number of processors m, and a penalty C. Is there a schedule to run all jobs with the total penalty no more than C?◦NP-complete◦Design heuristics to obtain schedule
with reasonable quality.
Processor AllocationEstimate the penalty of
interactive jobs on different number of processors.
Estimate the penalty of batch jobs on different number of processors.
Determine the number of processors for each job.◦With limit number of processors, find
the assignment that minimize the total penalty.
System Architecture
Implement the scheduling algorithm and evaluate the result.
Build the system on Docker / implement the scheduler in Kubernetes.
Consider other resources.◦Memory, network…etc.
To Do