Transcript
Page 1: Improving Resource Utilization in Cloud using Application Placement Heuristics

Improving Resource Utilization in Cloudusing Application Placement Heuristics

Atakan Aral, Tolga Ovatman

Istanbul Technical University, Department of Computer Engineering

{aralat, ovatman}@itu.edu.tr

Page 2: Improving Resource Utilization in Cloud using Application Placement Heuristics

Motivation

• Application placement is an important concept when providing software as a service in cloud environments.

• Most of the time additional resource acquisition is preferred over migrating the applications due to the high cost of migration.

• This situation results in under-utilized resources.

2

Page 3: Improving Resource Utilization in Cloud using Application Placement Heuristics

Problem

• Inefficient distribution of cloud applica-tions to virtual machines.

3

Page 4: Improving Resource Utilization in Cloud using Application Placement Heuristics

Aim

• Optimally placing applications to VMs

• Maximize the number of applications assigned.

• Minimize the number of application migrations.

4

Page 5: Improving Resource Utilization in Cloud using Application Placement Heuristics

Candidate Solutions

• Greedy algorithms (e.g. Round-Robin)

– Easy to implement

– Does not produce good placements

• Linear Optimization (e.g. MIP)

– Guaranteed to produce optimal placement

– Costly, Migrations required

• Evenness Heuristics

– May produce good enough placements

– There is no universally accepted heuristic

5

Page 6: Improving Resource Utilization in Cloud using Application Placement Heuristics

Suggested Solution

• Assign using an intelligent heuristic when possible

• Do not make any migrations yet

• When no VM is able to hold the arriving application, use Mixed Integer Programming

• Minimize number of migrations as the objective function

6

Page 7: Improving Resource Utilization in Cloud using Application Placement Heuristics

Suggested Solution

7

Page 8: Improving Resource Utilization in Cloud using Application Placement Heuristics

Contribution

• Novel evenness heuristics

• Comparison of the heuristics with other approaches

• Evaluation of the heuristic approach on various VM counts and capacities

• MIP formulation that minimizes number of migrations

8

Page 9: Improving Resource Utilization in Cloud using Application Placement Heuristics

Heuristics

• Standard Deviation (SD)

– Natural choice but may miss outliers

• Span (SP)

– Focuses only on the outliers

• Cumulative Difference (CD)

– Similar to SD, only simpler

• CD from Minimum (DM)

– Considers only high outliers

• Skewness (SK) by Xiao et al

9

Page 10: Improving Resource Utilization in Cloud using Application Placement Heuristics

MIP Formulation

• Objective: Minimize number of migrations

• Constraints:

– Each app must be assigned to exactly one VM:

– No VM should be overloaded:

10

Page 11: Improving Resource Utilization in Cloud using Application Placement Heuristics

Experimental Results

• Experiment 1: Postponement of Migration

11

Page 12: Improving Resource Utilization in Cloud using Application Placement Heuristics

Experimental Results

• Experiment 1: Postponement of Migration

12

Page 13: Improving Resource Utilization in Cloud using Application Placement Heuristics

Experimental Results

• Experiment 2: Minimization of Migration Count

13

Page 14: Improving Resource Utilization in Cloud using Application Placement Heuristics

Experimental Results

• Experiment 3: Analysis on Constant Total Capacity

14

0%1%2%3%4%5%6%7%8%9%10%11%12%13%14%15%

50,051,052,053,054,055,056,057,058,059,060,061,062,063,064,065,0

3 4 5 6 7 8 9 10 11 12

Greedy Heuristic Improvement

Page 15: Improving Resource Utilization in Cloud using Application Placement Heuristics

Conclusion

• Optimal placement in up to 10,8% of the cases, four times better than greedy

– No migrations necessary, better service quality

• Delay MIP algorithm up to 12,1% w.r.t. greedy

– More applications accepted before migrations

• MIP results in 34,5% less application migrations

15

Page 16: Improving Resource Utilization in Cloud using Application Placement Heuristics

Future Work

• Increasing the performance of cloud software as a whole by optimizing resource allocation

• Graph and Automata based modeling of the cloud environment and RA problem

• Optimization on 3 different but related phases of the cloud software life cycle

16

Page 17: Improving Resource Utilization in Cloud using Application Placement Heuristics

Future Work

17

Page 18: Improving Resource Utilization in Cloud using Application Placement Heuristics

Future Work

• MapReduce Configuration

– «The cost of using 1000 machines for 1 hour, is the same as using 1 machine for 1000 hours in the cloud paradigm.»

– Maximizing the utilization of all nodes for a Hadoop job by calculating the optimum parameters i.e. number of map/reduce

– Higher values mean higher parallelism but may cause resource contention and coordination problems.

18

Page 19: Improving Resource Utilization in Cloud using Application Placement Heuristics

Future Work

• MapReduce Configuration

– Optimum parameters depend on the resource consumption of the software.

– Design model of the software will be statically analyzed in order to guess resource consumption pattern.

– Critical (bottleneck) resources will be identified.

– Optimization at Application Level

19

Page 20: Improving Resource Utilization in Cloud using Application Placement Heuristics

Future Work

• Resource Selection and Optimization

– «In distributed computing environments, up to 85% of computing capacity remains idle due to poor optimization of placement.»

– Optimally assigning interconnected virtual nodes to substrate network with constraints

• Constraints: Datacenter capacities and bandwidth, Incompletely known topology, Locality and Jurisdiction

• Objectives: Less Inter-DC communication, Geographical proximity to user, and Latency

20

Page 21: Improving Resource Utilization in Cloud using Application Placement Heuristics

Future Work

• Resource Selection and Optimization

– VN requests and DC network are represented as undirected weighted graphs.

– Graph similarity - subgraph matching algorithms will be employed.

– Optimization at Infrastructure Level

21

Page 22: Improving Resource Utilization in Cloud using Application Placement Heuristics

Future Work

• Work Distribution to Resources

– «Data flows between nodes only in the shuffle step of the MapReduce job, and tuning it can have a big impact on job execution time.»

– Analysis of the shuffle and scheduling algorithms of Apache Hadoop framework.

– Mapper and reducer nodes should be selected carefully to minimize network traffic.

– Dynamic load balancing should be ensured.

22

Page 23: Improving Resource Utilization in Cloud using Application Placement Heuristics

Future Work

• Work Distribution to Resources

– Cost based formal analysis of the existing schedulers

– Which scheduler is more appropriate for given costs of map, reduce, shuffle phases?

– How can DataNode selection for blocks and clones be optimized to reduce network traffic?

– Optimization at Platform Level

23

Page 24: Improving Resource Utilization in Cloud using Application Placement Heuristics

Thank you!


Top Related