CloudComputingx

chirpskulkInternet και Εφαρμογές Web

3 Νοε 2013 (πριν από 3 χρόνια και 10 μήνες)

64 εμφανίσεις

Cloud Computing


By
S.Bayasgalan
, M.
Eng
, MCSE, SCSA, NCA

Rationale for Cloud Computing:

Application Developer Perspective


Capital Expenditure (
CapEx
) for development environ. could
be high

-
Acquisition of hardware, software, necessary services, etc.

-
HW, SW upgrades, back up/restore of development
environ., etc.


Operational Expenditure (
OpEx
) for support, etc.


Development environ. utilization low



Wouldn't it be nice if the developer has a basic desktop/laptop
and someone else hosts the entire development
environment/service for a fee based on usage?


CapEx

≈ 0;
OpEx

constant for the duration of use



Rationale for Cloud Computing:

IT Perspective


CapEx

for the data center (DC) is very high

-
Scalability, availability, and DR require redundant HW + SW


OpEx

can also be high

-
App administrators, DBA, storage administrators are
expensive

-
Data center power usage and cooling has also become a big
issue


Data center resource utilization is typically low

-
Primary system utilization is typically low at non
-
peak hours

-
Redundant HW + SW usually sit idle for a long time


Wouldn't it be nice if the resources can be shared among
different applications and/or different functions and/or different
departments and/or different tenants to more efficiently use the
resources and reduce the HW, space, and power cost?


Rationale for Cloud Computing:

Enterprise Perspective

Source: “An SME perspective on Cloud Computing, a Survey”, The European
Network and Information Security Agency, Nov, 2009

ISP evolution

Hosting Alone is Not Cloud Computing

NIST Definition of Cloud Computing


Cloud computing is a model for enabling ubiquitous,
convenient, on
-
demand network access to a shared pool
of configurable computing resources (e.g., networks,
servers, storage, applications, and services) that can be
rapidly provisioned and released with minimal
management effort or service provider interaction. This
cloud model promotes availability and is composed of five
essential characteristics
,
three service models, and four
deployment models.

3 Service Models


SaaS


PaaS


IaaS

4 Deployment
Models


Public Cloud


Private Cloud


Community
Cloud


Hybrid Cloud

5 Essential
Characteristics


On
-
demand
self
-
service


Broad network access


Resource pooling


Rapid elasticity


Measured
service

Cloud Computing Characteristics:

On
-
Demand Self
-
Service


A consumer can unilaterally provision computing
capabilities, such as server time and network storage, as
needed automatically without requiring human interaction
with each service’s provider.



Cloud Computing Characteristics:

Broad Network Access


Capabilities are available over the network and accessed
through standard mechanisms that promote use by
heterogeneous thin or thick client platforms (e.g., mobile
phones, laptops, and PDAs).




Wireless

WAN

LAN

Etc.

HTTP

TCP/IP

UDP

Etc.

REST

Web
Service

DAV

IMAP

Etc.

Cloud Computing Characteristics:

Resource Pooling


The provider’s computing resources are pooled to
serve multiple consumers using a multi
-
tenant model,
with different physical and virtual resources
dynamically assigned and reassigned according to
consumer demand... Examples of resources include
storage, processing, memory, network bandwidth,
and virtual machines.



Cloud Computing Characteristics:

Rapid Elasticity


Capabilities can be rapidly and elastically provisioned, in some
cases automatically, to quickly scale out, and rapidly released to
quickly scale in. To the consumer, the capabilities available for
provisioning often appear to be unlimited and can be purchased
in any quantity at any time.



Enterprise 1

Cluster 1

Enterprise 2

Cluster 2

Cloud Computing Characteristics:

Measured Service


Cloud systems automatically control and optimize resource use
by leveraging a metering capability at some level of abstraction
appropriate to the type of service (e.g., storage, processing,
bandwidth, and active user accounts). Resource usage can be
monitored, controlled, and reported, providing transparency for
both the provider and consumer of the utilized service.



Cloud Computing Service Models:

Software
-
as
-
a
-
Service (
SaaS
)


Consumer uses the provider’s applications running on
a cloud.




Examples

Cloud Computing Service Models:

Platform
-
as
-
a
-
Service (
PaaS
)


Consumer uses the programming languages and tools
supported by the provider to create and deploy
applications or deploy acquired applications




Examples

Elastic Beanstalk (beta)

Cloud Computing Service Models:

Infrastructure
-
as
-
a
-
Service (
IaaS
)


Consumer uses provider’s processing, storage,
networks, and other fundamental computing
resources to deploy and run arbitrary software, which
can include operating systems and applications.




Examples

Elastic Compute Cloud (EC2)

Cloud Computing Deployment Models





Private cloud.
The cloud infrastructure is operated solely for an
organization. It may be managed by the organization or a third
party and may exist on premise or off premise.



Community cloud.

The cloud infrastructure is shared by
several organizations and supports a specific community that
has shared concerns.



Public cloud.
The cloud infrastructure is made available to the
general public or a large industry group and is owned by an
organization selling cloud services.



Hybrid cloud
. The cloud infrastructure is a composition of two
or more clouds that remain unique entities but are bound
together by standardized or proprietary technology that enables
data and application portability.

Cloud Computing Deployment Models:
Public Clouds and Private Clouds


Used by
multiple
tenants on a
shared basis


Hosted and
managed by
cloud service
provider


Exclusively
used by a
single
organization


Usually
managed
by

in
-
house IT

Lower
upfront

costs

Outsourced management

OpEx

Lower
total

costs

Greater control over security, compliance,
QoS

CapEx

&
OpEx

Trade
-
offs

Public Clouds

IaaS

PaaS

SaaS

I

N

T

R

A

N

E

T

Private Cloud

IaaS

PaaS

SaaS

I

N

T

E

R

N

E

T

IaaS

PaaS

IaaS

PaaS

Apps

SaaS

Enterprises will adopt a mix of public and private clouds

Private Cloud


Self
-
service


Policy
-
based
resource
management


Chargeback


Capacity planning

App2

App3

Private
IaaS

Private
PaaS

App1

Silo’
d


Physical


Dedicated


Static


Heterogeneous

App1

App2

App3

Grid


Virtual


Shared services


Dynamic


Standardized
appliances

App1

App2

App3

Private
IaaS

Private PaaS

Consolidate

Standardize

Datacenter Evolution

From Consolidation to Private Cloud

Evolution of Private and Public Clouds

Private Cloud Evolution

Hybrid


Federation with
public clouds


Interoperability


Cloud bursting

App1

App2

App3

Private IaaS

Private PaaS

Virtual Private Cloud

Hybrid

PaaS

SaaS

IaaS

Private Cloud


Self
-
service


Policy
-
based
resource mgmt


Chargeback


Capacity planning

App2

App3

Private IaaS

Private PaaS

App1

Silo’d

Grid


Physical


Dedicated


Static


Heterogeneous


Virtual


Shared services


Dynamic


Standardized
appliances

App1

App2

App3

App1

App2

App3

Private IaaS

Private PaaS

Consolidate

Standardize

Public Clouds

PaaS

SaaS

IaaS

Public Cloud Evolution

ASP

ISP

MSP

ISV

CSP/

Telcos

Do You Provide or Use Internal or
Private Clouds?

Yes, in production at scale

11.3%

Yes, in limited use

12.8%

Yes, in pilot stage

4.5%

Preliminary planning

4.9%

Under consideration

10.5%

No

47.4%

Don

t know/unsure

8.7%

28.6%

28.6% of respondents have internal or private clouds today

What Type of Private Platform and
Infrastructure Cloud Services Is Your
Company Providing?

Application server platform as a service

24.7%

Database platform as a service

21.4%

Identity as a service

4.7%

Compute as a service

10.2%

Storage as a service

18.1%

Software development and test as a service

14.9%

Don

t know/unsure

20.5%

None

37.2%

Most popular:

App Server as a service

Database as a service

PaaS

IaaS

Technologies Behind the Cloud:

Resource Pooling/
Rapid elasticity



Virtualization


Clustering


Grid

Technologies Behind the Cloud:

Server Virtualization and Clustering Deliver
Resource Pooling and Elastic Scalability

Both server virtualization and clustering are key technologies for cloud

Single Physical Resource

Consumers

Multiple Virtual Resources

Server Virtualization

Make one physical resource look like many

Virtualization Software

Clustering Software

Consumers

Multiple Physical Resources

Clustering

Make many physical resource look like one

Single Virtual Resource

Technologies Behind the Cloud
:

GRID
computing


Grid computing is a term referring to the combination of
computer resources from multiple administrative domains
to reach a common
goal.


The grid can be thought of as a distributed system with
non
-
interactive workloads that involve a large number of
files. What distinguishes grid computing from
conventional high performance computing systems such
as cluster computing is that grids tend to be more loosely
coupled, heterogeneous, and geographically
dispersed.

Complete Cloud Lifecycle Management

Setup Cloud
Infrastructure

Build App &
Package as
Appliance

Setup Cloud
Policies

Deploy

Scale Up/Down

Decommission

Monitor

Patch

Cloud Computing Challenges


Security

-
Consumers don’t necessarily know who has access to their
data and how it is managed

-
Records management and compliance


Service Level Agreement

-
May not be good enough for some mission critical
applications


Payment

-
Metering is not mature yet. Not easy for consumers to verify
his/her usage easily