CloudSim is a framework for modeling and simulation of cloud computing infrastructures and services. Originally built primarily at the Cloud Computing and Distributed Systems (CLOUDS) Laboratory, The University of Melbourne, Australia, CloudSim has become one of the most popular open source cloud simulators in the research and academia. CloudSim is completely written in Java.
Initially developed as a stand-alone cloud simulator, CloudSim has further been extended by independent researchers.
- Though CloudSim itself does not have a graphical user interface, extensions such as CloudReports offer a GUI for CloudSim simulations.
- CloudSimEx extends CloudSim by adding MapReduce simulation capabilities and parallel simulations.
- Cloud2Sim extends CloudSim to execute on multiple distributed servers, by leveraging Hazelcast distributed execution framework.
- RECAP DES extends the CloudSimPlus extension to model synchronous hierarchical architectures (such as ElasticSearch).
CloudSim Free Learning Resources
There are multiple tutorials and blog posts available on CloudSim. In addition, there is an online course introducing CloudSim Simulation Framework covering the installation, architecture and execution description, and sample simulations. Few quick references to the quick tutorials are as flows:
- A brief article titled "CloudSim Simulation Toolkit: An Introduction" discuss about the major components of the Cloudsim. This article is crux of the research paper published by Dr. Raj Kumar Buyya, If you are a beginner then you should start with this to have an understanding of basic architecture of Cloudsim.
- Cloudsim Tutorial: Configure CloudSim using Eclipse IDE : This is the best resource to start with, this video will help you to configure the cloudsim 3.0.3 version on your computer system. In this you will follow all the resource weblinks which are minimally required to setup the cloudsim. A step by step how to article on Cloudsim Setup Using Eclipse is published on cloudsimtutorials.online
- Cloudsim Tutorial: Simulation Environment Introduction: This video resource will give you some insight on understating the internal simulation process of the cloudsim toolkit. You may replay it as you get mature with cloudsim insight knowledge
- Cloudsim Tutorial: Introduction to Package Intro: This video will share the detailed information about various inbuilt entities/models of various cloud components and their working. You may find a detailed article titled "Beginners Guide to Cloudsim Project Structure"
- Cloudsim Tutorial: CloudSim Example Step by Step Working: This video resource will demonstrate the various internal calls to the entities and simulation modules by using debug feature of eclipse platform. This video is a bit lengthy and the most important one to get the insight on various contributing models. You may read a details article on same titled "Guide to CloudsimExample1.java simulation workflow"
- CloudSim Tutorial: CloudSim Events the heartbeat of simulation: This is another important resource which will give you the understanding on the event management system of Cloudsim Simulation Module. In this we will discuss in detail about the working of CloudSim.java, SimEntity.java, FutureQueue.java, DefferedQueue.java etc classes and their significance in simulation process.
- CloudSim Tutorial: How to include custom Files Mentioned in Previous Video: This is the supplement video to this the previous video as we have extended simulation to generate the custom logs. So if you want to do the same, you can also extend your cloudsim code by including the provided files in a way mentioned in the video.
- CloudSim Tutorial: Switch between Timeshared and Spaceshared policies for VM and cloudlets: This video is helpful for those research scholars who are working on the VM allocation OR Task allocation policy problem. This resource will give you an insight on the various basic aspects of the Timeshare and Spaceshared models available with Cloudsim
- CloudSim Tutorial: Demo Simulation of Space Shared VM and TimeShared Cloudlets: This video will get you some more extended information on how to manage the VM and Cloudlets in different configurations and is a supplemental resource to previous video. You can also read a detailed article titled "How to do Virtual Machine and Task Scheduling in Cloudsim"
- CloudSim Tutorial: Simulation of SJF Task Scheduling Algorithm: This video resources discuss about the process to implement a custom static task scheduling algorithm in Cloudsim. Here we have defined the pre-requisite configurations and then wrote the code as per the defined configurations.
- Power-Aware Simulation Scenario in Cloudsim: This articles provides a detailed information about the various models available in cloud that are required in implementation of energy-aware/Green computing/ Vm migration related simulation scenarios.
- Cloudlet in Cloudsim:Cloudlet in Cloudsim defined the workload, which is to be executed during the simulation run of the cloudsim simulation engine. This article discuss in detail about all the major attributes and methods role and significance in defining the workload for cloudsim simulation engine
A self-paced online on demand course(3 hours) title "Learn Basics of Cloudsim" is available on Udemy platform. As per the description of the course, it is for the "Beginner research fellows interested in defining and implementing their custom cloud related research scenarios/models." and "Professors/Research fellows who are doing research in cloud infrastructure related topics like: Workload scheduling, Resource Allocation/Scheduling, Broker/Allocation policies etc.".
Also as per the author of the course, the weekly content update will be done till August 2020. The following coupon code "60AA09B02D550519B8A5" which can avail you a discount of up to 20%.
- Calheiros RN, Ranjan R, Beloglazov A, De Rose CA, Buyya R (2011). "CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms" (PDF). Software: Practice and Experience. 41 (1): 23–50. doi:10.1002/spe.995.
- "The Cloud Computing and Distributed Systems (CLOUDS) Laboratory, University of Melbourne".
- Sá, Thiago Teixeira; Calheiros, Rodrigo N.; Gomes., Danielo G. (2014). CloudReports: An Extensible Simulation Tool for Energy-Aware Cloud Computing Environments. In Cloud Computing, Springer International Publishing. Computer Communications and Networks. pp. 127–142. doi:10.1007/978-3-319-10530-7_6. ISBN 978-3-319-10529-1.
- "CloudSimEx Project". 2018-08-06.
- Kathiravelu, Pradeeban; Veiga, Luís (9 September 2014). Concurrent and Distributed CloudSim Simulations (PDF). IEEE 22nd International Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems (MASCOTS). Paris. pp. 490–493. Archived from the original (pdf) on 9 September 2014. Retrieved 2 January 2016.
- Kathiravelu, Pradeeban; Veiga, Luís (8 December 2014). An Adaptive Distributed Simulator for Cloud and MapReduce Algorithms and Architectures (PDF). IEEE/ACM 7th International Conference on Utility and Cloud Computing (UCC), 2014. London. pp. 79–88. Archived from the original (pdf) on 8 December 2014. Retrieved 2 January 2016.
- "RECAP DES repository".
- M. Bendechache, S. Svorobej, P. T. Endo, M. Marino, E. Ares, J. Byrne and T. Lynn, “Modelling and Simulation of ElasticSearch using CloudSim,” International Symposium on Distributed Simulation and Real Time Applications, 2019.
- M. Bendechache, I. Silva, G. Santos, A. Guedes, S. Svorobej, M. Marino, E. Ares, J. Byrne, P. T. Endo and T. Lynn, “Analysing dependability and performance of a real-world Elastic Search application,” Latin-America Symposium on Dependable Computing, 2019.
- "SuperWits Academy: CloudSim Simulation Framework Course".