31 January 2013
Cloud Computing

Cloud Computing
Principle and Paradigms

Presented by

Majid Hajibaba

1
31 January 2013

• information processing can be done more efficiently
centrally, on large farms of computing and storage
systems accessible via the Internet.
• ā€œcloudsā€ are the natural evolution of traditional data
centers
• Offer subscription-based access to infrastructure(IaaS),
platforms(PaaS), and applications(SaaS)
• many open research problems

Cloud Computing

Preface

2
Presented by Majid Hajibaba
• Introduction to cloud computing

•
•
•
•
•

Infrastructure as a Service (IaaS )
Platform and Software as a Service (PaaS/SaaS)
Monitoring and Management
Applications
Governance and Case Studies

31 January 2013

• Foundations

Cloud Computing

Book Content

3
Presented by Majid Hajibaba
31 January 2013
Cloud Computing

Cloud Computing: In a Glance

4
Presented by Majid Hajibaba
• Virtualize
• means delivering useful functions while hiding how their internals
work

• Cluster, grid, cloud
• access to large amounts of computing power in a fully virtualized
manner, by aggregating resources and offering a single system
view
• Delivering Computing as a utility
• On-demand
• Pay-as-you-go

31 January 2013

• Electric Power

Cloud Computing

1.Introduction To Cloud
computing

• Service provider (Amazon, Google)
• Computing infrastructure (Cloud)
• Access from anywhere
• As a service
Presented by Majid Hajibaba

5
• Cloud is a parallel and distributed computing system consisting of
a collection of inter-connected and virtualized computers that are
dynamically provisioned and presented as one or more unified
computing resources based on service-level agreements (SLA)

• Vanquero
• clouds are a large pool of easily usable and accessible virtualized
resources (such as hardware, development platforms and/or
services). These resources can be dynamically reconfigured to
adjust to a variable load (scale), allowing also for an optimum
resource utilization.

31 January 2013

• Buyya

Cloud Computing

Defining

6
Presented by Majid Hajibaba
• Clouds are hardware based services offering compute,
network, and storage capacity where: Hardware
management is highly abstracted from the buyer,
buyers incur infrastructure costs, and infrastructure
capacity is highly elastic

• Berkeley
• characteristics of cloud computing as
• (1) the illusion of infinite computing resources
• (2) the elimination of an up-front commitment by cloud
users
• (3) the ability to pay for use . . . as needed . . .
Presented by Majid Hajibaba

31 January 2013

• McKinsey

Cloud Computing

Defining

7
• a pay-per-use model for enabling available, convenient, ondemand network access to a shared pool of configurable
computing resources that can be rapidly provisioned and released
with minimal management effort or service provider interaction

• Armbrust
• Data center hardware and software that provide services.

31 January 2013

• NIST

Cloud Computing

Defining

• Sotomayor
• IT infrastructure deployed on an Infrastructure as a Service
provider data center
Presented by Majid Hajibaba

8
•
•
•
•

(i) pay-per-use (no ongoing commitment, utility prices)
(ii) elastic capacity and the illusion of infinite resources
(iii) self-service interface
(iv) virtualized (abstracted) resources

• The ultimate goal is allowing customers to run their everyday
IT infrastructure ā€œin the cloud.ā€

31 January 2013

• Cloud should have

Cloud Computing

Common Characteristic

9
Presented by Majid Hajibaba
Cloud Computing

31 January 2013

Roots of Cloud Computing

10
Presented by Majid Hajibaba
• applications running on different messaging product platforms
• enabling information from one application to be made available to
others
• enabling internal applications to be made available over the Internet

• SOA
• address requirements of loosely coupled, standards-based, and
protocol-independent distributed computing
• WS ,HTTP, XML

31 January 2013

• Web Service

Cloud Computing

Internet Technologies

• Common mechanism for delivering service

• applications is a collection of services that together perform complex
business logic
• Building block in IaaS
• User authentication, payroll management, calender
Presented by Majid Hajibaba

11
• aggregation of distributed resources
• transparently access
• Problems
• QoS, Lack of performance
• Availability, Virtualization

• Utility Computing
• assign a ā€œutilityā€ value to users
• QoS constraints (deadline, importance, satisfaction)

31 January 2013

• Grid Computing

Cloud Computing

Distributed Computing

12
Presented by Majid Hajibaba
• overcome most operational issues of data center building and
maintenance
• improving sharing and utilization of computer systems
• running multiple operating systems and software stacks on a
single physical platform
• virtual machine monitor (VMM)
• mediates access to the physical hardware
• presenting to guest operating system a virtual machine (VM)

31 January 2013

• Hardware Virtualization

Cloud Computing

Hardware

• is a set of virtual platform interfaces

13
Presented by Majid Hajibaba
31 January 2013
Cloud Computing

Virtualization

14
Presented by Majid Hajibaba
• security

•
•
•
•

Reliability
Performance ??
Utilization
Workload migration
• Load balancing
• Disaster recovery
• …

• WMM example
• VMWare ESXi, KVM, Xen
Presented by Majid Hajibaba

31 January 2013

• Capabilities
• Workload isolation

Cloud Computing

Virtualization

15
Cloud Computing

• improve systems by decreasing human involvement in their
operation.
• manage themselves, with high-level guidance from humans
• Properties
•
•
•
•

31 January 2013

Autonomic Computing

Self-configuration
Self-optimization
Self-healing
Self-protection

• IBM reference Model
• MAPE-K
16
Presented by Majid Hajibaba
• Three abstraction level of the capability

Cloud Computing

• (1) Infrastructure as a Service
• (2) Platform as a Service
• (3) Software as a Service

31 January 2013

Layers and Types of cloud

17
Presented by Majid Hajibaba
• Offering VM
• Software stack

31 January 2013

• Offering virtualized resources on demand
• computation, storage, communication
• Bottom layer of cloud systems
• Example
• Amazon EC2

Cloud Computing

IaaS

18
Presented by Majid Hajibaba
make a cloud easily programmable
offers an environment
developers create and deploy applications
do not necessarily need to know how many processors or
how much memory that applications will be using
• offered building blocks
• Google AppEngine

31 January 2013

•
•
•
•

Cloud Computing

PaaS

• Python, java
• Building block
• Mail service, instance messaging service, image manipulation service
19
Presented by Majid Hajibaba
• Applications reside on the top of the cloud stack

31 January 2013

SaaS

• From locale to on-line software with same functionally
• Example
• Salseforce.com
• CRM

Cloud Computing

• accessed by end users through Web portal

20
Presented by Majid Hajibaba
31 January 2013
Cloud Computing

Delivery Models

21
Presented by Majid Hajibaba
Cloud Computing

• Public, Private , Community (hybrid)

31 January 2013

Deployment Models

22
Presented by Majid Hajibaba
• Public cloud
• cloud made available in a pay-as-you-go manner to the general
public

31 January 2013

Deployment Models

• internal data center of a business or other organization, not made
available to the general public
• restructuring an existing infrastructure
• adding virtualization and cloud-like interfaces

• Community cloud

Cloud Computing

• Private cloud

• shared by several organizations and supports a specific
community that has shared concerns

• hybrid cloud
• takes shape when a private cloud is supplemented with
computing capacity from public clouds
Presented by Majid Hajibaba

23
(i) self-service
(ii) per-usage metered and billed
(iii) elastic
(iv) customizable.

31 January 2013

•
•
•
•

Features of cloud

Cloud Computing

Desired

24
Presented by Majid Hajibaba
• VIM
• The software toolkit responsible for rapidly and dynamically
provision resources to applications
• Cloud operation system
• Cloud toolkit vs. virtual infrastructure manager
• Availability and management users

• Features
• basic and advanced features that are usually available in VIMs

31 January 2013

• Management is a challenge

Cloud Computing

CLOUD INFRASTRUCTURE
MANAGEMENT

• Case Studies
• The most popular VI managers available
25
Presented by Majid Hajibaba
Virtualization Support
Self-Service, On-Demand Resource Provisioning
Multiple Backend Hypervisors
Storage Virtualization
• SAN

• Interface to Public Clouds
• Virtual Networking
• Dynamic Resource Allocation
• Green computing

31 January 2013

•
•
•
•

Cloud Computing

Features

• Virtual Clusters
• Reservation and Negotiation Mechanism
• Advance reservation and best-effort request

• High Availability and Data Recovery
• FailOver Mechanism, redundancy, backup
Presented by Majid Hajibaba

26
• Apache VCL
• AppLogic

31 January 2013

Case studies

•
•
•
•
•
•
•
•

Citrix Essentials
Enomaly ECP
..
OpenPEX
..
..
..
VMWare vSphere and vCloud
Presented by Majid Hajibaba

Cloud Computing

• Grid Operating System

27
• Features
geographic presence
• To improve availability and responsiveness, Availability Zones

ii.

user interfaces and access the system
• GUI, CLI, WS

iii.

Advance reservation of capacity
• Amazon, long period

iv.
v.

Automatic scaling and load balancing
Service Level Agreement

Cloud Computing

i.

31 January 2013

IaaS PROVIDERS

• Availability and performance guarantee, QoS

vi.

Hypervisor and operation system choice
28
Presented by Majid Hajibaba
• Case studies
• Amazon Web Services
• S3, EC2, RDS, …

31 January 2013

IaaS PROVIDERS

• 100% SLA

• Joyent
• Automatic scaling of cpu cores

• GoGrid
• Pre-made windows and linux images

Cloud Computing

• Flexiscale

• Rackspace Cloud Servers
• Fixed size instance
29
Presented by Majid Hajibaba
• Features
• Programming Models, Languages, and Frameworks
• MapReduce, WebService, Workflow, computational task

31 January 2013

PaaS Providers
• Persistence Options

• Case studies
• Aneka
• .NET, amazon EC2, threads

• AppEngine
• python-java, Google

• Microsoft Azure

Cloud Computing

• Record state and recover, relational DB, distributed storage

• .NET, Microsoft

• Force.com
• Apex, own dc

• Heroku
• Ruby, automatic scaling
Presented by Majid Hajibaba

30
• Security, privacy and trust
• Third party services
• Countries laws

31 January 2013

Challenges and Risks

• Portable user data
• CCIF

• Availability, Fault tolerance, disaster Recovery
• SLA

Cloud Computing

• Data lock-in and standardization

• Resource Management and Energy efficiency
• Migration
• Performance
• Green

31
Presented by Majid Hajibaba
END

INTRODUCTION
32

Cloud Computing

31 January 2013

cloud computing, Principle and Paradigms: 1 introdution

  • 1.
    31 January 2013 CloudComputing Cloud Computing Principle and Paradigms Presented by Majid Hajibaba 1
  • 2.
    31 January 2013 •information processing can be done more efficiently centrally, on large farms of computing and storage systems accessible via the Internet. • ā€œcloudsā€ are the natural evolution of traditional data centers • Offer subscription-based access to infrastructure(IaaS), platforms(PaaS), and applications(SaaS) • many open research problems Cloud Computing Preface 2 Presented by Majid Hajibaba
  • 3.
    • Introduction tocloud computing • • • • • Infrastructure as a Service (IaaS ) Platform and Software as a Service (PaaS/SaaS) Monitoring and Management Applications Governance and Case Studies 31 January 2013 • Foundations Cloud Computing Book Content 3 Presented by Majid Hajibaba
  • 4.
    31 January 2013 CloudComputing Cloud Computing: In a Glance 4 Presented by Majid Hajibaba
  • 5.
    • Virtualize • meansdelivering useful functions while hiding how their internals work • Cluster, grid, cloud • access to large amounts of computing power in a fully virtualized manner, by aggregating resources and offering a single system view • Delivering Computing as a utility • On-demand • Pay-as-you-go 31 January 2013 • Electric Power Cloud Computing 1.Introduction To Cloud computing • Service provider (Amazon, Google) • Computing infrastructure (Cloud) • Access from anywhere • As a service Presented by Majid Hajibaba 5
  • 6.
    • Cloud isa parallel and distributed computing system consisting of a collection of inter-connected and virtualized computers that are dynamically provisioned and presented as one or more unified computing resources based on service-level agreements (SLA) • Vanquero • clouds are a large pool of easily usable and accessible virtualized resources (such as hardware, development platforms and/or services). These resources can be dynamically reconfigured to adjust to a variable load (scale), allowing also for an optimum resource utilization. 31 January 2013 • Buyya Cloud Computing Defining 6 Presented by Majid Hajibaba
  • 7.
    • Clouds arehardware based services offering compute, network, and storage capacity where: Hardware management is highly abstracted from the buyer, buyers incur infrastructure costs, and infrastructure capacity is highly elastic • Berkeley • characteristics of cloud computing as • (1) the illusion of infinite computing resources • (2) the elimination of an up-front commitment by cloud users • (3) the ability to pay for use . . . as needed . . . Presented by Majid Hajibaba 31 January 2013 • McKinsey Cloud Computing Defining 7
  • 8.
    • a pay-per-usemodel for enabling available, convenient, ondemand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort or service provider interaction • Armbrust • Data center hardware and software that provide services. 31 January 2013 • NIST Cloud Computing Defining • Sotomayor • IT infrastructure deployed on an Infrastructure as a Service provider data center Presented by Majid Hajibaba 8
  • 9.
    • • • • (i) pay-per-use (noongoing commitment, utility prices) (ii) elastic capacity and the illusion of infinite resources (iii) self-service interface (iv) virtualized (abstracted) resources • The ultimate goal is allowing customers to run their everyday IT infrastructure ā€œin the cloud.ā€ 31 January 2013 • Cloud should have Cloud Computing Common Characteristic 9 Presented by Majid Hajibaba
  • 10.
    Cloud Computing 31 January2013 Roots of Cloud Computing 10 Presented by Majid Hajibaba
  • 11.
    • applications runningon different messaging product platforms • enabling information from one application to be made available to others • enabling internal applications to be made available over the Internet • SOA • address requirements of loosely coupled, standards-based, and protocol-independent distributed computing • WS ,HTTP, XML 31 January 2013 • Web Service Cloud Computing Internet Technologies • Common mechanism for delivering service • applications is a collection of services that together perform complex business logic • Building block in IaaS • User authentication, payroll management, calender Presented by Majid Hajibaba 11
  • 12.
    • aggregation ofdistributed resources • transparently access • Problems • QoS, Lack of performance • Availability, Virtualization • Utility Computing • assign a ā€œutilityā€ value to users • QoS constraints (deadline, importance, satisfaction) 31 January 2013 • Grid Computing Cloud Computing Distributed Computing 12 Presented by Majid Hajibaba
  • 13.
    • overcome mostoperational issues of data center building and maintenance • improving sharing and utilization of computer systems • running multiple operating systems and software stacks on a single physical platform • virtual machine monitor (VMM) • mediates access to the physical hardware • presenting to guest operating system a virtual machine (VM) 31 January 2013 • Hardware Virtualization Cloud Computing Hardware • is a set of virtual platform interfaces 13 Presented by Majid Hajibaba
  • 14.
    31 January 2013 CloudComputing Virtualization 14 Presented by Majid Hajibaba
  • 15.
    • security • • • • Reliability Performance ?? Utilization Workloadmigration • Load balancing • Disaster recovery • … • WMM example • VMWare ESXi, KVM, Xen Presented by Majid Hajibaba 31 January 2013 • Capabilities • Workload isolation Cloud Computing Virtualization 15
  • 16.
    Cloud Computing • improvesystems by decreasing human involvement in their operation. • manage themselves, with high-level guidance from humans • Properties • • • • 31 January 2013 Autonomic Computing Self-configuration Self-optimization Self-healing Self-protection • IBM reference Model • MAPE-K 16 Presented by Majid Hajibaba
  • 17.
    • Three abstractionlevel of the capability Cloud Computing • (1) Infrastructure as a Service • (2) Platform as a Service • (3) Software as a Service 31 January 2013 Layers and Types of cloud 17 Presented by Majid Hajibaba
  • 18.
    • Offering VM •Software stack 31 January 2013 • Offering virtualized resources on demand • computation, storage, communication • Bottom layer of cloud systems • Example • Amazon EC2 Cloud Computing IaaS 18 Presented by Majid Hajibaba
  • 19.
    make a cloudeasily programmable offers an environment developers create and deploy applications do not necessarily need to know how many processors or how much memory that applications will be using • offered building blocks • Google AppEngine 31 January 2013 • • • • Cloud Computing PaaS • Python, java • Building block • Mail service, instance messaging service, image manipulation service 19 Presented by Majid Hajibaba
  • 20.
    • Applications resideon the top of the cloud stack 31 January 2013 SaaS • From locale to on-line software with same functionally • Example • Salseforce.com • CRM Cloud Computing • accessed by end users through Web portal 20 Presented by Majid Hajibaba
  • 21.
    31 January 2013 CloudComputing Delivery Models 21 Presented by Majid Hajibaba
  • 22.
    Cloud Computing • Public,Private , Community (hybrid) 31 January 2013 Deployment Models 22 Presented by Majid Hajibaba
  • 23.
    • Public cloud •cloud made available in a pay-as-you-go manner to the general public 31 January 2013 Deployment Models • internal data center of a business or other organization, not made available to the general public • restructuring an existing infrastructure • adding virtualization and cloud-like interfaces • Community cloud Cloud Computing • Private cloud • shared by several organizations and supports a specific community that has shared concerns • hybrid cloud • takes shape when a private cloud is supplemented with computing capacity from public clouds Presented by Majid Hajibaba 23
  • 24.
    (i) self-service (ii) per-usagemetered and billed (iii) elastic (iv) customizable. 31 January 2013 • • • • Features of cloud Cloud Computing Desired 24 Presented by Majid Hajibaba
  • 25.
    • VIM • Thesoftware toolkit responsible for rapidly and dynamically provision resources to applications • Cloud operation system • Cloud toolkit vs. virtual infrastructure manager • Availability and management users • Features • basic and advanced features that are usually available in VIMs 31 January 2013 • Management is a challenge Cloud Computing CLOUD INFRASTRUCTURE MANAGEMENT • Case Studies • The most popular VI managers available 25 Presented by Majid Hajibaba
  • 26.
    Virtualization Support Self-Service, On-DemandResource Provisioning Multiple Backend Hypervisors Storage Virtualization • SAN • Interface to Public Clouds • Virtual Networking • Dynamic Resource Allocation • Green computing 31 January 2013 • • • • Cloud Computing Features • Virtual Clusters • Reservation and Negotiation Mechanism • Advance reservation and best-effort request • High Availability and Data Recovery • FailOver Mechanism, redundancy, backup Presented by Majid Hajibaba 26
  • 27.
    • Apache VCL •AppLogic 31 January 2013 Case studies • • • • • • • • Citrix Essentials Enomaly ECP .. OpenPEX .. .. .. VMWare vSphere and vCloud Presented by Majid Hajibaba Cloud Computing • Grid Operating System 27
  • 28.
    • Features geographic presence •To improve availability and responsiveness, Availability Zones ii. user interfaces and access the system • GUI, CLI, WS iii. Advance reservation of capacity • Amazon, long period iv. v. Automatic scaling and load balancing Service Level Agreement Cloud Computing i. 31 January 2013 IaaS PROVIDERS • Availability and performance guarantee, QoS vi. Hypervisor and operation system choice 28 Presented by Majid Hajibaba
  • 29.
    • Case studies •Amazon Web Services • S3, EC2, RDS, … 31 January 2013 IaaS PROVIDERS • 100% SLA • Joyent • Automatic scaling of cpu cores • GoGrid • Pre-made windows and linux images Cloud Computing • Flexiscale • Rackspace Cloud Servers • Fixed size instance 29 Presented by Majid Hajibaba
  • 30.
    • Features • ProgrammingModels, Languages, and Frameworks • MapReduce, WebService, Workflow, computational task 31 January 2013 PaaS Providers • Persistence Options • Case studies • Aneka • .NET, amazon EC2, threads • AppEngine • python-java, Google • Microsoft Azure Cloud Computing • Record state and recover, relational DB, distributed storage • .NET, Microsoft • Force.com • Apex, own dc • Heroku • Ruby, automatic scaling Presented by Majid Hajibaba 30
  • 31.
    • Security, privacyand trust • Third party services • Countries laws 31 January 2013 Challenges and Risks • Portable user data • CCIF • Availability, Fault tolerance, disaster Recovery • SLA Cloud Computing • Data lock-in and standardization • Resource Management and Energy efficiency • Migration • Performance • Green 31 Presented by Majid Hajibaba
  • 32.

Editor's Notes

  • #6Ā Technologies such as cluster, grid, and now, cloud computing, have all aimed at allowing access to large amounts of computing power in a fully virtualized manner, by aggregating resources and offering a single system view.
  • #7Ā Buyya : ā€œCloud is a parallel and distributed computing system consisting of a collection of inter-connected and virtualised computers that are dynamically provisioned and presented as one or more unified computing resources based on service-level agreements (SLA) established through negotiation between the service provider and consumers.ā€Vaquero :ā€œclouds are a large pool of easily usable and accessible virtualized resources (such as hardware, development platforms and/or services). These resources can be dynamically reconfigured to adjust to a variable load (scale), allowing also for an optimum resource utilization.
  • #8Ā McKinsey : ā€œClouds are hardware based services offering compute, network, and storage capacity where: Hardware management is highly abstracted from the buyer, buyers incur infrastructure costs as variable OPEX, and infrastructure capacity is highly elastic.ā€Berkeley : summarized the key characteristics of cloud computing as: ā€œ(1) the illusion of infinite computing resources; (2) the elimination of an up-front commitment by cloud users; and (3) the ability to pay for use . . . as needed . . .ā€
  • #9Ā (NIST) characterizes cloud computing as ā€œ. . . a pay-per-use model for enabling available, convenient, on-demand network access to a shared pool of configurable computing resources (e.g. networks, servers, storage, applications, services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.ā€In a more generic definition, Armbrust define cloud as the ā€œdata center hardware and software that provide services.ā€ Similarly, Sotomayoret al. [7] point out that ā€œcloudā€ is more often used to refer to the IT infrastructure deployed on an Infrastructure as a Service provider data center.
  • #10Ā While there are countless other definitions, there seems to be common characteristics between the most notable ones listed above, which a cloudshould have: (i) pay-per-use (no ongoing commitment, utility prices); (ii) elastic capacity and the illusion of infinite resources; (iii) self-service interface; and(iv) resources that are abstracted or virtualised.The ultimate goal is allowing customers to run their everyday IT infrastructure ā€œin the cloud.ā€
  • #11Ā We can track the roots of clouds computing by observing the advancement of several technologies, especially in hardware (virtualization, multi-core chips),Internet technologies (Web services, service-oriented architectures, Web 2.0), distributed computing (clusters, grids), and systems management (autonomiccomputing, data center automation).
  • #12Ā Web services can glue together applications running on different messaging product platforms enabling information from one application to be made available to others, and enabling internal applications to be made available over the Internet.WS standards have been created on top of existing ubiquitous technologies such as HTTP and XML, thus providing a common mechanism for deliveringservices, making them ideal for implementing a service-oriented architecture (SOA). The purpose of a SOA is to address requirements of loosely coupled,standards-based, and protocol-independent distributed computing. In a SOA, software resources are packaged as ā€œservices,ā€ whichAn enterprise application that follows the SOA paradigm is a collection of services that together perform complex business logic
  • #13Ā Grid computing enables aggregation of distributed resources and transparently access to them.ensuring QoS in grids has been perceived as a difficult endeavor [19]. Lack of performance isolation has prevented grids adoption in a variety of scenarios, especially on environments where resources are oversubscribed or users are uncooperative.Another issue that has lead to frustration when using grids is the availability of resources with diverse software configurationsIn utility computing environments, users assign a ā€œutilityā€ value to their jobs, where utility is a fixed or time-varying valuation that captures variousQoS constraints (deadline, importance, satisfaction).
  • #14Ā hardware virtualization can be considered as a perfect fit to overcome most operational issues of data center building and maintenance.As depicted in Figure 1.2, a software layer, the virtual machine monitor (VMM), also called a hypervisor, mediates access to the physical hardware presenting to each guest operating system a virtual machine (VM), which is a set of virtual platform interfaces [22].
  • #16Ā Workload isolation is achieved since all program instructions are fully confined inside a VM, which leads to improvements in security. Betterreliability is also achieved because software failures inside one VM do not affect others [22]. Moreover, better performance control is attained sinceexecution of one VM should not affect the performance of another VM [23]. The consolidation of several individual and heterogeneous workloads onto asingle physical platform leads to better system utilization.
  • #17Ā The increasing complexity of computing systems has motivated research on autonomic computing, which seeks to improve systems by decreasing humaninvolvement in their operation. In other words, systems should manage themselves, with high-level guidance from humans [34].
  • #19Ā offering VMs with a software stack that can be customized similar to how an ordinary physical server would be customized.
  • #20Ā make a cloud easily programmable, known as Platform as a Service (PaaS). A cloud platform offers an environment on which developers create and deployapplications and do not necessarily need to know how many processors or how much memory that applications will be using. In addition, multiple programming models and specialized services (e.g., data access, authentication, and payments) are offered as building blocks to new applications [40].Google AppEngine
  • #21Ā Applications reside on the top of the cloud stack. Services provided by this layer can be accessed by end users through Web portals. Therefore, consumersare increasingly shifting from locally installed computer programs to on-line software services that offer the same functionally.
  • #22Ā The oldest and the simplest form of service in the cloud is a Collocation. It requires renting a server space, electricity, air conditioning and access to the Internet
  • #23Ā In this sense, regardless of its service class, a cloud can be classified as public, private, community, or hybrid [6]
  • #24Ā propose definitions for public cloud as a ā€œcloud made available in a pay-as-you-go manner to the general publicā€ and private cloud asā€œinternal data center of a business or other organization, not made available to the general public.ā€In most cases, establishing a private cloud means restructuring an existing infrastructure by adding virtualization and cloud-like interfacesA community cloud is ā€œshared by several organizations and supports a specific community that has shared concerns (e.g., mission, security requirements,policy, and compliance considerations) [6].ā€A hybrid cloud takes shape when a private cloud is supplemented with computing capacity from public clouds [7].
  • #25Ā must be (i) self-service, (ii) per-usage metered and billed, (iii) elastic, and (iv) customizable.To support this expectation, clouds must allow self-service access so that customers can request, customize, pay, and use services without intervention of human operators [6].Cloud computing eliminates up-front commitment by users, allowing them to request and use only the necessary amount. Services must be priced on a short term basis (e.g., by the hour), allowing users to release (and not pay for) resources as soon as they are not needed [5]. For these reasons, clouds must implement features to allow efficient trading of service such as pricing, accounting, and billing [2]. Metering should be done accordingly for differenttypes of service (e.g., storage, processing, and bandwidth) and usage promptly reported, thus providing greater transparency [6].Therefore users expect clouds to rapidly provide resources in any quantity at any time. In particular, it is expected that the additional resources can be (a) provisioned, possibly automatically, when an application load increases and (b) released when load decreases (scale up and down) [6]
  • #26Ā The term ā€œcloud operating systemā€ is also used to refer to it [43]. Other terms include ā€œinfrastructure sharing software [44]ā€ and ā€œvirtual infrastructureengine [45].
  • #27Ā Virtualizing storage means abstracting logical storage from physical storage.Storage devices are commonly organized in a storage area network (SAN) and attached to servers via protocols such as Fibre Channel, iSCSI, andNFS; a storage controller provides the layer of abstraction between virtual and physical storage [48].A few VI managers accomplish this by providing a failover mechanism, which detects failure of both physical and virtual servers and restarts VMs on healthy physical servers. This style of HA protects from host, but not VM, failures [57, 58].
  • #29Ā Service-level agreements (SLAs) are offered by IaaS providers to express their commitment to delivery of a certain QoS.
  • #31Ā In the cloud computing domain, the most common activities that require specialized models are: processing of large dataset in clusters of computers(MapReduce model), development of request-based Web services and applications; definition and orchestration of business processes in the form of workflows (Workflow model); and high-performance distributed execution of various computational tasks.
  • #32Ā Security and privacy affect the entire cloud computing stack, since there is a massive use of third-party services and infrastructures that are used to hostimportant data or to perform critical operations.Legal and regulatory issues also need attention