developing resource consolidation frameworks for moldable virtual machines in clouds

Post on 23-Feb-2016

25 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Developing resource consolidation frameworks for moldable virtual machines in clouds. Author: Liang He, Deqing Zou , Zhang Z hang , etc Presenter: Weida Z hong. abstract. Using Genetic Algorithm to consolidate moldable Virtual Machines - PowerPoint PPT Presentation

TRANSCRIPT

Developing resource consolidation frameworks for moldable virtual

machines in clouds

Author: Liang He, Deqing Zou, Zhang Zhang, etc

Presenter: Weida Zhong

abstract

• Using Genetic Algorithm to consolidate moldable Virtual Machines

• Developing a reconfiguration algorithm to lower the transition overhead that transiting the Cloud to the optimized system state needs

contents

• System Hierarchy and workload models• Genetic Algorithm• Reconfiguring virtual clusters 1. Categorizing changes in system state 2. Transiting system states 3. Calculating transition time• Experimental studies

System Hierarchy and workload models

System Hierarchy and workload models

• The cloud system aims to maintain a steady level of Quality of Service (QoS) delivered by every VC.

• The desired QoS is expressed as that the total service rate of all VMs in a VC cannot be less than a certain figure

contents

• System Hierarchy and workload models• Genetic Algorithm• Reconfiguring virtual clusters 1. Categorizing changes in system state 2. Transiting system states 3. Calculating transition time• Experimental studies

Classical genetic algorithm procedure

initialization

Evaluation/ fitness

computing

reproduction

Next generation

Stop?

crossover

mutation

begin

endYes

No

Genetic Algorithm• Will be triggered if 1. there are spare resource capabilities in active nodes. 2. the spare resource capabilities in every node are less than the capacity requirements of the new VM in , denoted as 3. the total spare resource capabilities across all used physical nodes are greater than the capacities required by the new VM

Schematic diagram

new

Current active

Genetic Algorithm

• A system state is represented using a 3-D array, S.

• S[i, j, k] is the percentage of the total capacity of resource in node that is allocated to of

• For example, S[2, 3, 4] = 30%• S[*, j, *]: the resource capacity allocated to

Genetic Algorithm -- crossover

• Two parent solutions allocated to : [*, j, *], [*, j, *]

• Randomly select a VC index p from 1 to M• Both of the two parent solutions are

partitioned into two portions at the position p• Merge the head portion of parent solution 1

with the tail of 2

Genetic Algorithm -- crossover

• Validity check:

• For

Genetic Algorithm -- mutation

• 1. determining index i, j, k

The ratio of the probability of selecting the major resource type to other resource types is set to be R :1 (R is the number of resource types in the system)

Select VC

Select Node

Select Resource

Genetic Algorithm -- mutation

• 2. adjusting resource capacities S[i, j, k] is increased by a quantity randomly chosen from [0, min(maxS[i, j, k], )], where is the spare capacity of resource in node

Genetic Algorithm – fitness function

• Standard deviation of () can reflect the convergence level of spare capacity across N nodes

• Standard deviation of () can reflect to what extant there are balanced spare capacities across different types of resource in node

Genetic Algorithm – fitness function

• Standard deviation of () can reflect to what extant there are balanced spare capacities across different types of resource in node

= =

Genetic Algorithm – fitness function

• Fitness function

• = a weight function and used to calculated the weighted sum of the deviation of resource spare capacity in multiple nodes

contents

• System Hierarchy and workload models• Genetic Algorithm• Reconfiguring virtual clusters 1. Categorizing changes in system state 2. Transiting system states 3. Calculating transition time• Experimental studies

Reconfiguring virtual clusters

GAS 𝑺′

cost?

VM Creation

VM Deletion

VM Migration

Changing Capacity

Categorizing changes in system state

• Case 1: S[i, j, *] 0, 0, and S[i, j, *] (1.1) S[i, j, *] is greater; (1.2) is greater• Case 2: S[i, j, *] 0, 0 (2.1) deleting ; (2.2) Migrate to another node• Case 3: S[i, j, *] 0, 0 (3.1) creating ; (3.2) Accept migration of ’s VM from another node

Transiting system states---VM operations during the transition

• DL(), CR(), CH(), MG(, )• RR() =

number of request average

execution time of a request

duration that the current request has

been run

Transiting system states--- VM operations during the transition

• DL(), CH(), MG(, ), CR()

• When both categories of VM operations need to be performed, we have to consider the execution order of the VM operations

releasing allocating

Transiting system states---Performing VM operations without dependency

Performing VM operations without dependency We mark the equation as Eq.(8)• The time for reconfiguring : TR() = +min

Transiting system states---Performing VM operations without dependency

Algorithm 1. Reconfiguration_without_dependency(); for each in Case 1 do Adjust the resource capacity of ; for each in Case 2.1 do Delete ; for each in Case 2.2 do Find a mapping destination node, Call migration() ; return;

Transiting system states---Performing VM operations with dependency

If Eq. (8) does not hold, which means , there must be at least one VM which releases resources during the reconfiguration.• We should release resources first until the first

equation is satisfied

Transiting system states---Performing VM operations with dependency

Algorithm 2. Migration() //migration

If Eq.(8) does not hold for then for each in Case 1.1 do reduce resource allocation and update S[k,j,*] if Eq.(8) holds then migrate and update S[k,j,*], S[i,j,*] return; end for for each in Case 2.1 do delete and update S[k,j,*]

end for

Algorithm 2(cont.)

For each in Case 2.2 do Obtain a mapping node, Call migration() if Eq.(8) holds then Migrate and update S[k,j,*], S[i,j,*] return

else migrate and update S[k,j,*], S[i,j,*]

return

Algorithm 3. Reconfiguration()If Eq.(8) does not hold for then for each in Case 1.1 do reduce resource allocation and update S[i,j,*] if Eq.(8) holds then break end for for each in Case 2.1 do delete and update S[k,j,*] if Eq.(8) holds then break end for for each in Case 2.2 do Obtain the mapping node, Call migration() if Eq.(8) holds then break end forCall Reconfiguration_without_dependency()

Algorithm 4. Reconfiguring the cloud

Input: S[i, j, k] Ω = the set of all nodes in the cloud while(Ω ф) Obtain node (1) from Ω; Call Reconfiguration() ; Ω = Ω - ; end while for each do for each in Case 3 that has not been handled create ;

Calculating transition time• A Directed Acyclic Graph (DAG) can be

constructed based on the dependencies between the VM operations as well as between source nodes and mapping destination nodes.

Calculating transition time

• If the VM operations in all nodes form a single DAG, calculating the transition time of the reconfiguration plan for the cloud can be transformed to compute the critical path in the DAG.

• If there are several DAG graphs, the time of the longest critical path is the transition time of the reconfiguration plan

contents

• System Hierarchy and workload models• Genetic Algorithm• Reconfiguring virtual clusters 1. Categorizing changes in system state 2. Transiting system states 3. Calculating transition time• Experimental studies

Experimental studies

• The simulation experiments about the effectiveness of the GA algorithm

• The performance of the cloud reconfiguration method

Performance of GA--- impact of the number of physical nodes

Performance of GA--- impact of the number of physical nodes

Performance of GA--- impact of free capacity

Performance of GA--- impact of the number of VCs

Performance of the cloud reconfiguration

Performance of the cloud reconfiguration

Conclusion• Develop a resource consolidation framework

for moldable virtual machines in clouds

• A Genetic Algorithm is developed to compute the optimized system state

• A cloud reconfiguration algorithm is developed to transfer the cloud from the current state to the optimized one

Thank you

top related