Chapter 5-Cloud Simulation
Chapter 5-Cloud Simulation
Cloud simulation
Introduction
• Cloud computing has advanced incredibly in the ongoing years because
of its characteristics of being secure, and highly scalable.
• We can say that it is able to dynamically deliver IT assets over the
Internet for user applications that have different composition,
configuration, and deployment requirements.
• In cloud computing, access to the infrastructure incurs payments in real
currency.
• Simulation-based approaches offer significant benefits, as it allows
cloud customers to test their services in repeatable and controllable
environment free of cost, and to tune the performance bottlenecks
before deploying on real clouds.
• At the provider side, simulation environments allow evaluation of different kinds
of resource leasing scenarios under varying load and pricing distributions.
• Such studies could aid the providers in optimizing the resource access cost with
a focus on improving profits.
• In the absence of such simulation platforms, Cloud customers and providers
have to rely either on theoretical and imprecise evaluations, or on trial-and-error
approaches that lead to inefficient service performance and revenue generation.
• The primary objective of this simulator is to provide a generalized and extensible
simulation framework that enables seamless modeling, simulation, and
experimentation of emerging cloud computing infrastructures and application
services.
• By using CloudSim, researchers and industry-based developers can focus on
specific system design issues that they want to investigate, without being
concerned about the low-level details related to cloud-based infrastructures and
services.
• CloudSim is a practical approach to implement and test Cloud scenarios.
• It is new generalized and extensible simulation framework that enables seamless
modeling, simulation, and experimentation of emerging cloud computing
infrastructures and management services.
• The CloudSim simulation layer offers help for demonstrating and simulation of
virtualized Cloud-based server data center conditions including committed
administration interfaces for VMs, memory, storage, and data transmission.
• The central issues, for example, provisioning of hosts to VMs, and managing
application execution state are dealt with.
• The data center deals with various host elements.
• The hosts are mapped out to at least one VMs dependent on a VM allotment
strategy that ought to be characterized by the Cloud specialist organization.
• Here, the VM strategy represents the tasks control arrangements identified with VM life
cycle, for example, provisioning of a host to a VM, VM creation, VM failure and VM migration.
• Thus, at least one application administrations can be provisioned inside a solitary VM case,
alluded to as application provisioning with regards to Cloud computing.
• In the context of CloudSim, an entity is an instance of a component.
• A CloudSim component can be a class (abstract or complete) or set of classes that represent
one CloudSim model (data center, host etc.).
• A data center can manage several hosts that in turn manages VMs during their life cycles.
• Host is a CloudSim component that represents a physical computing server in a Cloud:
• it is assigned a pre-configured processing capability (expressed in millions of instructions per second-
MIPS), memory, storage, and a provisioning policy for allocating processing cores to VMs.
• The Host component implements interfaces that support modelling and simulation of both
single-core and multi-core nodes.
• For each Host component, the allocation of processing cores to VMs is done based on a host
allocation policy.
• This policy takes into account several hard- ware characteristics, such as number of CPU
cores, CPU share and amount of memory (physical and secondary), that are allocated to a
given VM instance.
• Hence, CloudSim supports simulation scenarios that assign specific CPU cores to specific
VMs (a space-shared policy), dynamically distribute the capacity of a core among VMs
(time-shared policy), or assign cores to VMs on demand.
CloudSim Architecture
• CloudSim runs on any Integrated Development Environment (IDE).
• Choose your IDE such as NetBeans or Eclipse and create a new project.
• Find a Java Runtime Environment (JRE) for running a CloudSim.
• This JRE could usually be downloaded from Github.
• Right click on the project you created and choose properties.
• Then click on Add Library and choose to Add Jar files.
• Then choose the CloudSim JRE.
• Additionally you need to download JAR files for math functions from
http://commons.apache.org/proper/commonsmath/download_math.cgi.
• Finally you start running your simulation by choosing
org.cloudbus.cloudsim.examples.
CloudSim Example