investigation of multi-resource cloud simulators · investigation of multi-resource cloud...

23
Investigation of Multi-Resource Cloud Simulators Björn Hasselmann Zurich, Switzerland Student ID: 11-717-626 Supervisor: Patrick Gwydion Poullie Date of Submission: May 23, 2015 University of Zurich Department of Informatics (IFI) Binzmühlestrasse 14, CH-8050 Zürich, Switzerland ifi I NFORMATIK V ERTIEFUNG Communication Systems Group, Prof. Dr. Burkhard Stiller

Upload: trinhhanh

Post on 20-Aug-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Investigation of Multi-ResourceCloud Simulators

Björn HasselmannZurich, Switzerland

Student ID: 11-717-626

Supervisor: Patrick Gwydion PoullieDate of Submission: May 23, 2015

University of ZurichDepartment of Informatics (IFI)Binzmühlestrasse 14, CH-8050 Zürich, Switzerland ifi

INF

OR

MAT

IKV

ER

TIE

FU

NG

–C

omm

unic

atio

nS

yste

ms

Gro

up,P

rof.

Dr.

Bur

khar

dS

tille

r

Informatik VertiefungCommunication Systems Group (CSG)Department of Informatics (IFI)University of ZurichBinzmühlestrasse 14, CH-8050 Zürich, SwitzerlandURL: http://www.csg.uzh.ch/

Contents

1 Introduction 1

2 Simulators 3

2.1 Greencloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2.1.1 Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2 ICanCloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.2.1 Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.3 CloudSim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.3.1 Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Comparison 9

4 Conclusion and future work 11

Bibliography 13

Abbreviations 15

List of Figures 15

List of Tables 17

i

ii CONTENTS

Chapter 1

Introduction

As the requirements on digital services have grown, clouds become more and more impor-tant to provide these services such as PaaS, SaaS or especially IaaS. Namely because theyallow large scale sharing of computing resources in a technically and administratively scal-able manner. For every job that will run in the cloud, one or more virtual machines (VM)are utilized to process the workload. These VMs run on the cloud’s physical machines(PM), which define their virtual resources, e.g., CPU and RAM. The performance of aVM depends crucially on the availability of these resources. Although this is an importantfactor, many cloud simulators cover it insufficiently or not at all. A reason for this is, thattypically the prioritization scheme of the resource provisioning policies is based on onlyone parameter, the CPU[1].

Nevertheless multiple resources are consumed simultaneously and different jobs may havehighly heterogeneous demands[2]. In particular, the problem for heterogeneous multi-resource allocation is to define a fairness strategy in the first place: Since the customers’preferences for different resources may vary, the value of individual resource shares issubjective. For example, some customers may require more CPU for their workloadswhile others necessitate more memory. A third customer may use the cloud for backupsand therefore need disk-space and bandwidth, but no processing power.

This analysis will not go into detail of the process of the actual resource allocation in cloudcomputing, but rather consider the possibilities and capabilities of simulators to modelthe hardware and their limitations. Therefore, the main questions in this study are howopen-source, multi-resource cloud simulators model the resources and their consumptionwhen processing tasks.

1

2 CHAPTER 1. INTRODUCTION

Chapter 2

Simulators

Every simulator found in this research to model a cloud environment follows a basic struc-ture. They all model or extend an existing entity from an underlying framework, whichuses the typical attributes of a physical machine, e.g., storage or memory. Additionallythey measure the CPU’s processing power in MIPS or FLOPS. These are both units thatmeasure how fast a processor is able to work or follow instructions, respectively. ”MillionsInstructions Per Second” (MIPS) refers to how many machine code instructions can beexecuted in one second and is therefore inaccurate to compare systems[3], since no twoCPUs use exactly the same kind of execution methods. Also instructions can’t be ex-plicitly defined and will therefore vastly differ in their amount of work. For example, asimple arithmetic operation might take 1 clock cycle to complete, whereas doing a floatingpoint division might take 10 or more clock cycles. ”Floating-Point Operations Per Second”appears to be the more precise choice, since it counts the possible floating-point additionsor multiplications per second. Still, it is to be noted that both values can’t be compareddirectly to the clock speed of a CPU, since single operations need a different amount ofclock cycles according to implementation. The physical entities can host multiple VMs,which in turn contain the tasks or jobs that are to be executed. Both, the VMs andjobs are pre-instantiated and then deployed to such hosts through individual provisioningpolicies. Provisioning and allocation are composed of three parts.

• The allocation of VMs to hosts

• The deployment of jobs to VMs

• The provisioning of resources from hosts to VMs

For every of these steps there a policy has to be defined, which can either be space- or time-shared. Most of the simulators provide some pre-implemented standard techniques, e.g.,FCFS or Round Robin. Most important of all, jobs are defined by their instructions lengthin MI (”Million Instructions”). Also they model the storage’s and memory’s workloadcreated by the tasks through predefined sizes of input and output files. Certainly, thereare many more details possible to depict, like bandwidth load or status. Unfortunatelyit remains unclear whether resources in use share a direct interdependency or if they justserve as constant limiting factors.

3

4 CHAPTER 2. SIMULATORS

2.1 Greencloud

Greencloud is an open-source simulation environment with the main focus on the energyconsumption in cloud infrastructures. Often a simple optimization in the datacenter or aworkload scheduling, which takes the energy consumption into account, can lead to signifi-cant energy savings[4]. Therefore, Greencloud’s key feature is gathering and summarizinginformation about the power consumed by computation and communication. Since itis developed as an extension of the packet-level network Simulator Ns2[5], Greencloudis using the underlying framework to simulate data center components, such as servers,switches and links, as well as packet-level communication patterns. Thereby it featuresindependent energy models for each type of resource, network-aware resource allocationand a complete TCP/IP implementation. Even though a user friendly GUI is mentionedin its key features[6], there are no liable sources for any kind of image material. On theother hand, Greencloud can produce trace files of the simulations, which then can beinterpreted by the network animation tool Nam[7].

Figure 2.1: Greencloud results depicted by Nam

2.2. ICANCLOUD 5

2.1.1 Resources

The physical entities’ possible maximum performance, in this case servers, is measuredeither in MIPS or FLOPS and is preconfigured together with their memory and storage.Also there are several scheduling strategies implemented, from a simple Round-Robin tomore complex algorithms, like Dynamic Voltage and Frequency Scaling (DVFS[8]). Theissue of how exactly Greencloud is computing the power consumption with respect to theconsidered resources is not a main topic of this study and is therefore not covered here.

2.2 ICanCloud

ICanCloud focuses on the evaluation of ”pay-as-you-go” scenarios, i.e., predicting thetrade-offs between cost and performance of a given set of applications which are exe-cuted in a specific hardware. It has been developed on top of the INET and OMNeT++frameworks[9]. Next to a user-friendly GUI, which is able to manage, configure and launchexperiments and generate graphical reports, ICanCloud specifically distinguishes and pro-vides a wide range of configurations for storage systems, i.e., local, remote and parallelstorage systems.

Figure 2.2: ICanCloud datacenter

6 CHAPTER 2. SIMULATORS

Figure 2.3: ICanCloud configuration: create a new cloud

Figure 2.4: ICanCloud: plotted results

2.3. CLOUDSIM 7

2.2.1 Resources

The physical entities are considered as nodes and their processing power is also measuredin MIPS. They can host multiple VMs which alternately host the application services.ICanCloud has a highly detailed depiction in terms of storage and memory. For the former,it differentiates between the number of available disks and their type, for which some pre-configurations are implemented. For the latter, the memory consists of its read- andwrite-latency time and self-evidently its size in MB. At this point it would be interestingto further research, if ICanCloud handles the latencies as constants and simply adds upthe time or if they depend on how many VMs are using the memory simultaneously.The core module is the so called ”Hypervisor”, which implements interfaces for differentadjustable broker strategies. This module is responsible for managing the VM instancesand the incoming jobs whichshould be executed. As of now, ICanCloud provides no powerconsumption model.

2.3 CloudSim

CloudSim[14] is a layered event management framework for developers to design and testcloud computing infrastructure performance. It is suited for large scale cloud computingdata centers and also supports the modeling and simulation of energy-aware resources.It is built on SimJava and GridSim and handles their scalability limitations. Its mainfeatures are the provision of large scale cloud computing data centers with their networktopologies and messaging systems. Also it considers connected, or federated, clouds andhow they behave. Conclusively, policies and broker strategies can be defined. In this studyonly the basic CloudSim framework was considered, even though there are already manyextensions available, which add new or improve already existing features. For example,CloudAnalyst[10], inter alia, adds a GUI, or CloudExp[11] adds support of the MapReduceframework to handle parallel data processing patterns and Big Data problems.

2.3.1 Resources

In CloudSim, a Data Center represents the core infrastructure and can manage multiplehosts, which in turn manage the VMs during their life cycle. A preconfigured processingpower is assigned to the hosts, again in MIPS, together with storage, memory, bandwidthand a provisioning policy for allocating processing cores to VMs. The cloud based appli-cation services are represented by Cloudlets and modeled by their input and output sizesand their processing length in MI.

8 CHAPTER 2. SIMULATORS

Chapter 3

Comparison

All of the simulators examined promise individual modeling and simple extending oradapting of various scenarios, which is true in that it depends on the user’s programmingknowledge. While CloudSim uses Java only, others use combinations of languages andplatforms, e.g., Greencloud is built on top of the Ns2 network simulator and is writtenin C++ and OTcL. In terms of the physical resources, all simulators handle them verysimilarly. They all have some equivalences for the three entities; server, VM and ser-vice. And they provide standard allocation policies, e.g. Round Robin, or the possibilityto implement an individual one. Except for the implementation details, i.e. language,platform, resource usage etc., the simulators mainly differ in the results they specificallydeliver. While Greencloud is focused on the energy consumption, ICanCloud evaluates aquality/price ratio. CloudSim on the other hand can be adapted to provide various re-sults, but has to be configured first. For a detailed performance comparison of ICanCloudand CloudSim the reader is referred to [12]. Being aware, that this is a paper specificallypresenting ICanCloud, they summarize that ICanCloud is faster in large scale experimentsand provides better scalability, but requires more memory to use than CloudSim.

Table 3.1 gives a general overview over the three simulators compared in seven aspects:Platform: The underlying platform(s) used to implement the simulator.Language: The programming language(s) the simulators are using.Graphical Support: ICanCloud is the only one with a fully supported GUI, while the

rest is declared as limited, since the original CloudSim didn’t support any graphical inter-face at all and even with CloudAnalyst only the configurations and results can be shown.Basically the same applies for Greencloud with generated trace files for Nam[7].

Predefined models for public cloud providers: ICanCloud provides a model of a cloudsuggested by Amazon, in which physical and virtual machine specifications are predefined.The others do not give this information.

Power consumption modeling: As expected, Greencloud fully supports this feature, sinceit’s a main goal of the simulator. CloudSim also supports it, but to a lesser extent andICanCloud claims it is ”work in progress”, but not yet available.

Parallel experiments: The possibility to run an experiment on multiple machines si-multaneously is a highly important, but not yet reached goal of ICanCloud. No othersimulator provides this either.

9

10 CHAPTER 3. COMPARISON

Migration algorithms: Migrating VMs from one processor to another can have a greatimpact on the system’s performance[13] and so far only CloudSim does support this.

Parameter CloudSim Greencloud ICanCloud

Platform GridSim, SimJava NS2 INET, OMNeT++

Language Java C++, OTcl C++, NED

Graphical Support Limited (throughCloudAnalyst[10]

Limited (trace filesthrough Nam[7])

Full

Predefined models forpublic cloud providers

None None Amazon

Power consumptionmodeling support

Limited Yes None

Parallel experimentsupport

No No No

Migration algorithms Yes No No

Table 3.1: Comparison of the simulators

Chapter 4

Conclusion and future work

In this study three state of the art cloud computing simulators were compared. It resulted,that in terms of multi-resource allocation all of them let the users define their preferredpolicies on how resources should be provisioned in the time of allocating VMs or deployingtasks. Most of them provide a standard set of policies or in case of Greencloud even morecomplex patterns regarding power consumption. For further research it would be necessaryto evaluate the simulators with all their possibilities, since ICanCloud claims that twobigger features are still in development (power consumption and parallel experiments)and CloudSim already would have had a rich set of different extensions, which vastlyenhance its use. Also, it should be checked regularly for new simulators. An interestingcandidate could be FlexCloud[15], which came out earlier this year. In particular, furtherinvestigation of the interdependencies of resources would be advisable, especially the usageof the time component, since it is not clear whether MIPS or FLOPS are precise enoughand how dependable read-/write-latencies are considered, e.g. how a space shared memorywill behave, if multiple VMs utilize it to its full capacity.

11

12 CHAPTER 4. CONCLUSION AND FUTURE WORK

Bibliography

[1] Dalibor Klusacek, Hana Rudova, and Michal Jaros: Multi Resource Fairness: Prob-lems and Challenges, Faculty of Informatics, Masaryk University Botanicka 68a,Brno, Czech Republic; CESNET z.s.p.o., Zikova 4, Prague, Czech Republic; Instituteof Computer Science, Masaryk University Botanicka 68a, Brno, Czech Republic

[2] Raouf Boutaba, Lu Cheng, Qi Zhang: On cloud computational models and the het-erogeneity challenge, Journal of Internet Services and Applications, 3(1):77-86, 2012.,Charles Reiss, Alexey Tumanov, Gregory R. Ganger, Randy H. Katz, and MichaelA. Kozuch. Heterogeneity and dynamicity of clouds at scale: Google trace analy-sis. Proceedings of the Third ACM Symposium on Cloud Computing, SoCC ’12, pp7:1-7:13, New York, NY, USA, 2012. ACM.

[3] http://www.sgidepot.co.uk/perf.html, May 2015

[4] Dzmitry Kliazovich, Pascal Bouvry, Samee Ullah Khan: GreenCloud: a packet-levelsimulator of energy-aware cloud computing data centers, November 2010

[5] The networks simulator Ns2, http://www.isi.edu./nsnam/ns/, 2010

[6] http://greencloud.gforge.uni.lu/, May 2015

[7] http://www.isi.edu/nsnam/nam/, May 2015

[8] Wan Yeon Lee: Energy-saving DVFS Scheduling of Multiple Periodic Real-time Taskson Multi-core Processors, Dept. of Computer Engineering, Hallym University, Chun-chon, South Korea, 13th IEEE/ACM International Symposium on Distributed Sim-ulation and Real Time Applications, 2009

[9] http://omnetpp.org/, May 2015

[10] B. Wickremasinghe, R. Calheiros, and R. Buyya, ”CloudAnalyst: A CloudSim-basedVisual Modeller for Analysing Cloud Computing Environments and Applications.”Proceedings of the 24th IEEE Int’l Conference on Advanced Information Networkingand Applications (AINA 2010), Perth, Australia, April 20-23, 2010

[11] Yaser Jararweh, Moath Jarrah, Mazen kharbutli, Zakarea Alshara, Mohammed No-raden Alsaleh, Mahmoud Al-Ayyoub: CloudExp: A comprehensive cloud computingexperimental framework, Department of Computer Science, Jordan University of Sci-ence and Technology, 22110, Jordan; Department of Computer Engineering, JordanUniversity of Science and Technology, 22110, Jordan; University of North CarolinaCharlotte, Charlotte, NC, USA, September 2014

13

14 BIBLIOGRAPHY

[12] Alberto Nunez, Jose L. Vazquez-Poletti, Agustin C. Caminero, Gabriel G. Castane,Jesus Carretero, Ignacio M. Llorente: iCanCloud: A Flexible and Scalable CloudInfrastructure Simulator, Springer Science+Business Media B.V. 2012, April 2012

[13] Elham Shamsinezhad, Asadollah Shahbahrami, Alireza Hedayati, Ahmad KhademZadeh, Hamid Banirostam: Presentation Methods for Task Migration in Cloud Com-puting by Combination of Yu Router and Post-Copy, IJCSI International Journal ofComputer Science Issues, Vol. 10, Issue 4, No 1, July 2013

[14] Rodrigo N. Calheiros, Rajiv Ranjan, Anton Beloglazov, Cesar A. F. De Rose, Ra-jkumar Buyya: CloudSim: a toolkit for modeling and simulation of cloud computingenvironments and evaluation of resource provisioning algorithms, Wiley Online Li-brary www.wileyonlinelibrary.com, August 2010

[15] Minxian Xu, Wenhong Tian, Xinyang Wang, Qin Xiong: FlexCloud: A Flexibleand Extendible Simulator for Performance Evaluation of Virtual Machine Allocation,January 2015

Abbreviations

PaaS Platform as a ServiceSaaS Software as a ServiceIaaS Infrastructure as a ServiceVM Virtual MachinePM Physical MachineMIPS Million Instrucitions Per SecondFLOPS Floating-Point Operations Per SecondFCFS First Come, First ServedMI Million InstructionDVFS Dynamic Voltage and Frequency Scaling

15

16 ABBREVIATONS

List of Figures

2.1 Greencloud results depicted by Nam . . . . . . . . . . . . . . . . . . . . . 4

2.2 ICanCloud datacenter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.3 ICanCloud configuration: create a new cloud . . . . . . . . . . . . . . . . . 6

2.4 ICanCloud: plotted results . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

17

18 LIST OF FIGURES

List of Tables

3.1 Comparison of the simulators . . . . . . . . . . . . . . . . . . . . . . . . . 10

19