Getting Started with VMPlaceS
This "Getting Started" guide will cover the following points:
- Installation of VMPlaceS' dependencies
- Installation of VMPlaceS
- Creation of a Simulation Resolver
- Creation of a Reconfiguration Planner
- Running a simulation
I- Installation of VMPlaceS' dependencies
Before installing VMPlaceS, we need to install some dependencies:
- Python
- SBT
- Simgrid
These dependencies can easily be installed by using a package manager. We provides instructions for brew and APT.
A- via brew (macos)
B- via APT (linux)
II- Installation of VMPlaceS
First, clone the git repository of VMPlaceS:
Then, browse in the VMPlaceS folder and run those two commands in order to build a java jar archive of VMPlaceS:
To validate the installation of VMPlaceS and its dependencies, run the following command:
A simulation (based on a simple scheduling algorithm implemented in VMPlaceS) should start and simulate the functioning of a small cloud infrastructure during 1800s.
III- Implementing a new scheduling algorithm in VMPlaceS
A- Creation of a Simulation Resolver
Create a new java file located in src/main/java/simulation/ExampleResolver.java with the following content :
B- Creation of a Reconfiguration Planner
Create a new java file located in src/main/java/scheduling/example/ExampleReconfigurationPlanner.java with the following content :
C- Creating a deployment file
Add the following lines in the "algorithms" section of the config/algorithms.json file:
D- Adding the algorithms to VMPlaceS
Add the following lines in the "algorithms" section of the config/algorithms.json file:
IV- Run a simulation
A- Command line
B - IntelliJ Idea (IDE)
Step 1 and 2: Launch the simulation and stop it immediately
Step 3 and 4: Customize the simulation executable
Step 5: Enter the parameters of the simulation
Step 6: Validate the configuration
Step 7: Run the simulation again