Skip to content

Commit 91c5afa

Browse files
committed
Updated README.md
Signed-off-by: Zalimben <[email protected]>
1 parent 205443b commit 91c5afa

File tree

1 file changed

+65
-17
lines changed

1 file changed

+65
-17
lines changed

README.md

Lines changed: 65 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,48 @@
1-
# DynamicVMP Framework
1+
# Dynamic Virutal Machine Placement Framework
2+
3+
This project contains the source code and results of the following research:
4+
5+
#### *"Two-Phase Virtual Machine Placement Algorithms for Cloud Computing. An experimental Evaluation Under Uncertainty"*.
6+
7+
*Conferencia Latinoamericana de Informática (CLEI), 2017* \
8+
**Authors:** N. Chamas and F. López-Pires and B. Barán \
9+
**Release:** [CLEI-2017](https://github.com/DynamicVMP/dynamic-vmp-framework/releases/tag/CLEI-2017)
10+
11+
##
12+
13+
#### *"Virtual Machine Placement for Elastic Infrastructures in Overbooked Cloud Computing Datacenters Under Uncertainty"*
14+
15+
*Future Generation Computer Systems, 2017* \
16+
**Authors**: F. López-Pires and B. Barán and A. Amarilla and L. Benítez and S. Zalimben \
17+
**Release:** [FGS-2017](https://github.com/DynamicVMP/dynamic-vmp-framework/releases/tag/FGCS-2017)
18+
19+
###### Abstract
20+
21+
Infrastructure as a Service (IaaS) providers must support requests for virtual resources in highly dynamic cloud computing envi-ronments. Due to the randomness of customer requests, Virtual Machine Placement (VMP) problems should be formulated underuncertainty. This work presents a novel two-phase optimization scheme for the resolution of VMP problems for cloud computingunder uncertainty of several relevant parameters, combining advantages of online and offline formulations in dynamic environmentsconsidering service elasticity and overbooking of physical resources. In this context, a formulation of a VMP problem is presented,considering the optimization of the following four objective functions: (1) power consumption, (2) economical revenue, (3) resourceutilization and (4) placement reconfiguration time. The proposed two-phase optimization scheme includes novel methods to decidewhen to trigger a placement reconfiguration through migration of virtual machines (VMs) between physical machines (PMs) andwhat to do with VMs requested during the reconfiguration period. An experimental evaluation against state-of-the-art alternativeapproaches for VMP problems was performed considering 400 scenarios. Experimental results indicate that the proposed schemeoutperforms other evaluated alternatives, improving the quality of solutions in a scenario-based uncertainty model considering the following evaluation criteria among solutions: (1) average, (2) minimum and (3) maximum objective function cost.
22+
23+
##
24+
25+
#### *"Evaluating a Two-Phase Virtual Machine PlacementOptimization Scheme for Cloud Computing Datacenters"*
26+
27+
*Metaheuristics International Conference, 2017* \
28+
**Authors**: F. López-Pires and B. Barán and A. Amarilla and L. Benítez and S. Zalimben \
29+
**Release:** [MIC-2017](https://github.com/DynamicVMP/dynamic-vmp-framework/releases/tag/1.0)
30+
31+
###### Abstract
32+
33+
Infrastructure as a Service (IaaS) providers must support requests for virtual resources in complexdynamic cloud computing environments, taking into account service elasticity and overbooking ofphysical resources. Due to the randomness of customer requests, Virtual Machine Placement (VMP)problems should be formulated under uncertainty. This work proposes an experimental evaluationof a two-phase optimization scheme for VMP problems, studying different (i) online heuristics, (ii)overbooking protection factors and (iii) objective function scalarization methods. The proposed ex-perimental evaluation considers an uncertain VMP formulation for the optimization of the followingthree objective functions: (i) power consumption, (ii) economical revenue, and (iii) resource utiliza-tion. Experiments were performed considering 96 different scenarios, representing complex cloudcomputing environments. Experimental results shows that Best-Fit and Best-Fit Decreasing heuris-tics are recommended in the incremental VMP (iVMP) phase working with the considered MemeticAlgorithm in the VMP reconfiguration (VMPr) phase, adjusting protection factors to 0.00 and 0.75in low and high CPU load scenarios respectively, while scalarazing the proposed three objectivefunctions considering an Euclidean distance to the origin.
34+
35+
##
236

337
To develop and execute the following items are required:
438

5-
## To develop:
39+
### To develop:
640

741
1. Maven 3 or greater
842
2. Java 8 (JDK 1.8)
943
3. Java IDE (i.e. eclipse, intellij, ...)
1044

11-
## To run:
45+
### To run:
1246
The framework could be compile with maven.
1347

1448
1. Go to the project root and execute:
@@ -20,35 +54,38 @@ $ mvn clean package
2054
``` bash
2155
$ java -jar target/DynamicVMPFramework.jar parameter
2256
```
23-
## Parameter File Structure
2457

58+
##
59+
#### Input File
60+
- *parameter:* Configuration file and scenarios
2561

62+
##### Parameter File Structure
2663

2764
1. APPROACH = Algorithm approach
2865
* CENTRALIZED
29-
* DISTRIBUTED -> This approach will automatically launch the distributed approach and you don't
30-
need to specify the following inputs: VMPr, VMPr_TRIGGERING, VMPr_RECOVERING.
31-
2. iVMP = iVMP algorithm
66+
* DISTRIBUTED -> This approach will automatically launch the distributed approach and you don't need to specify the following inputs: VMPr, VMPr_TRIGGERING, VMPr_RECOVERING.
67+
68+
2. iVMP = Algorithm for the incremental phase (iVMP).
3269
* FF -> First Fit
3370
* BF -> Best Fit
3471
* WF -> Worst Fit
3572
* FFD -> First Fit Decreasing
3673
* BFD -> Best Fit Decreasing
37-
3. VMPr = VMPr algorithm
38-
* MEMETIC
39-
* ACO
40-
4. VMPr_TRIGGERING = VMPr triggering
74+
3. VMPr = Algorithm for the reconfiguration phase (VMPr).
75+
* MEMETIC -> Memetic Algorithm
76+
* ACO -> Ant Colony Optimization
77+
4. VMPr_TRIGGERING = VMPr triggering strategy
4178
* PERIODICALLY
4279
* PREDICTION-BASED
43-
5. VMPr_RECOVERING = VMPr recovering
80+
5. VMPr_RECOVERING = VMPr recovering strategy
4481
* CANCELLATION
4582
* UPDATE-BASED
4683
6. PM_CONFIG = Load CPU Configuration
47-
* LOW
48-
* MED
49-
* HIGH
50-
* FULL
51-
* SATURATED
84+
* LOW -> (<10%)
85+
* MED -> (<30%)
86+
* HIGH -> (<80%)
87+
* FULL -> (<95%)
88+
* SATURATED -> (<120%)
5289
7. DERIVE_COST = Cost per each derived VM
5390
8. PROTECTION_FACTOR_01 = Resource1 protection factor [0;1]
5491
9. PROTECTION_FACTOR_02 = Resource2 protection factor [0;1]
@@ -77,3 +114,14 @@ quicker as pheromone constant grows
77114
26. ACO_ITERATIONS = Number of iterations to be performed in ACO
78115
to return a solution
79116
27. SCENARIOS = List of Request
117+
118+
#### Output Files
119+
The framework generates the following files:
120+
- *economical_penalties*: Average economical penalties per each SLA violation.
121+
- *economical_revenue*: Average ecomical revenue per each VM hosted in the main provider.
122+
- *leasing_costs*: Average economical revenue lost per each VM hosted in an alternative provider from federation.
123+
- *power_consumption*: Average power energy consumed
124+
- *reconfiguration_call_times*: Number of reconfiguration calls.
125+
- *wasted_resources*: Average of wasted resources (one column per resource)
126+
- *wasted_resources_ratio*: Average of wasted resources (considering all resources)
127+
- *scenarios_scores*: Score per each executed scenario.

0 commit comments

Comments
 (0)