rituraj0/CloudSim
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
1. CloudSim -------- CloudSim is a simulator for a Cloud infrastructure (surprise!) developed on top of the SimPy framework. It's main purpose for now, is to simulate a Scheduler for a cloud, but this can easily be extended to more complicated functionalities. 2. Requirements ------------ 1. Python >= 2.5 2. GhostView 3. SimPy (already bundled in the package) 3. 50 nodes on a cloud platform of your choice. Just kidding. 3. Tested Platforms ------------------- - Ubuntu 10.04 ~x86. - Ubuntu 10.04 ~x64. - Windows 7 ~x64 4. Running ---------- $: python(.exe) CloudSim.py --input <input-file> --conf <conf-file> 5. Examples ----------- Two example input files are provided: a simulation input file named "input", and a default configuration file "scheduler.conf". 6. Generated graph files ------------------------ In order to visualize the CloudSim generated graph files (.ps format), you should have GhostScript installed, and a proper visualization tool (such as evince or GSView). In general, UNIX system have these tools installed by default. In Windows or other systems, please download and install the latest version of these tools on: http://pages.cs.wisc.edu/~ghost/ 7. Working ---------- The basic organisation of the cloud infrastructure comprises of: 1) Task Generators 2) A scheduler 3) Machines for job execution Inputs are read from the input file, and task generators feed jobs from these tasks into the scheduler. The scheduler, based on the scheduling algorithm being used, assigns these jobs to different machines from the cloud infratsructure. It may also start new machines, stop existing ones, or hold back jobs. The below diagram depicts the overall structure. ScheduleJob TaskGenerator 1 ----------- V SubmitJobsForExecution TaskGenerator 2 -----> Scheduler ----------------------> Machine 1 . ^ | . | |---------> Machine 2 TaskGenerator N ---------- | ---------> Machine N 8. Credits ------ Paulo Ricardo Motta Gomes <pauloricardomg@gmail.com> Lalith Suresh <suresh.lalith@gmail.com