Post on 25-Sep-2020
transcript
Cloud computing
Antonio Corradi
April 2015
Department of Computer Science and Engineering
(DCSE)
Dipartimento di Informatica –
Scienza e Ingegneria
(DISI)
University of Bologna, ITALY
antonio.corradi@unibo.it
2/19
What is cloud computing?
“The architecture and
terminology of cloud
computing is as
clearly and precisely
defined as, well,
a cloud.”
Source:
www.opencloudmanifesto.org
Cloud Computing Problem Space
Fast growth of connected mobile devices
Skyrocketing costs of power, space,
maintenance, etc.
Advances in multi-core computer architecture
Explosion of data intensive applications
on the Internet
The Cloud data center
“It starts with the premise that the data services and architecture should be on
servers. We call it cloud computing – they should be in a ‘cloud’ somewhere.
And that if you have the right kind of browser or the right kind of access, it
doesn’t matter whether you have a PC or a Mac or a mobile phone or a
BlackBerry or what have you – or new devices still to be developed – you can
get access to the cloud…”
Dr. Eric Schmidt, Google CEO, August 2006
Some … Clouds 3
Cloud Concepts
IT on demand pricing
Best benefits in a reliable context
Pool of virtualized computer resources
Rapid live providing while demanding
Systems on scaling architecture
on demand,
reliability,
virtualization,
provisioning,
scalability
Cloud keywords
Some … Clouds 4
What is a Cloud
One Cloud is capable of providing IT
resources ‘as a service’
One Cloud is an IT service delivered to
users that have:
• a user interface that makes the infrastructure
underlying the service transparent to the user
• reduced incremental management costs when
additional IT resources are added
• services oriented management architecture
• massive scalability Some … Clouds 5
6
A bit of history
• Solving large problems with parallel computing
• Network-based subscriptions to applications
• Offering computing resources as a service
• Anytime, anywhere access to IT resources delivered dynamically as a service.
Software as a Service
Utility Computing
Cloud Computing
Grid Computing
Some … Clouds 6
Grid computing Sharing of heterogeneous resources (computer, software,
data, memory, computational power,, …) in highly distributed environments with the goal of creating a virtual organization scalable (by need!)
Interfaces (for management), often too fine grained, with low level of abstraction, and non self-contained
Application areas very limited and specific (parallel computation for scientific, engineering scenarios, …)
Before Cloud computing: GRID
Some … Clouds 7
Virtualization Technologies for virtualization (either system-based or
hosted), as in a server farm: Vmware, Xen, … Isolation & personalized infrastructure and/or SW
platform (O.S. and some additional applications) Tool for the efficient management of computing
infrastructures (IBM Tivoli suite, Xen monitoring tools, …)
Before the Cloud: Virtualization
Some … Clouds 8
Web 2.0 Usage of asynchronous protocols not visible to users to
ask only really required info and not the whole web pages: Asynchronous Javascript And XML (AJAX)
New ways of using Web services coupled with new applications easier to use, collaboration based and openly available, without requiring any installation by interested users: new business model, very, very cooperative (Software as a Service )
Office
https://www.google.com/hosted http://smallbusiness.yahoo.com/email/
www.zimbra.com
many others…
Word
www.writely.com
www.writeboard.com
www.inetword.com
many others…
www.pxn8.com
www.pixoh.com
many others…
Graphics Database
www.dabbledb.com
www.Lazybase.com
www.quickbase.com
many others…
www.linkedin.com
www.plaxo.com
many others…
Contacts
Before Cloud computing: Web 2.0
Some … Clouds 9
Huge computational and storage capabilities
available from utilities, the same as for energy and
electricity, and on pay-per-use base.
“Computing may someday be organized as a
public utility” - John McCarthy, MIT Centennial in
1961
Metered billing (pay for what you use)
Simple to use interface to access the capability
(e.g., plugging into an outlet)
Before Cloud computing: Utility computing
Software as a Service (SaaS)
Traditional Software On-Demand Utility
Build Your Own
Plug In, Subscribe
Pay-per-Use
Some … Clouds 11
Software as a Service (SaaS)
Built for one-to-many delivery over Web
Applications not deployed in-house
Shared public infrastructure
Little customization
Subscription fee or advertising-supported
Perpetual license
One-to-few One-to-many
Subscription
Private infrastructure Public infrastructure
Source: IDC, 2006
Time
Software as a Service
Hosted Application
Management
Software on Demand
(ASP)
Built for one-to-one delivery or management
Applications deployed in-house
Dedicated infrastructure/ environments
Highly customized
One-time license and recurring maintenance or support fee
Some … Clouds 12
13
Evolution of Cloud Computing
Grid Computing Utility Computing
Software as a Service
Cloud Computing
Some … Clouds 13
Hidden Cost of IT
Some … Clouds 14
SaaS - Software as a Service
Software ownership costs pushed to vendor - hardware, software,
system security, disaster recovery, maintenance, monitoring
Return to core competency - organizations shift resources to core
competencies, vendors focus on managing their SaaS
More efficient deployment - instant evaluation, more collaboration
between vendor and IT organization, much faster deployments
Eliminate shelfware & maintenance - pay for what you use
Always on current version - version-free software means the latest for
the customer
Modern, Web 2.0 interface - drive technician usage and better customer
interaction with IT
SaaS homogeneity costs less - one version for the vendor to support
means lower costs for everybody
Some … Clouds 15
Application areas suitable for SaaS
• ERP vertical business applications, both specialized and very specific
• General-purpose applications without any adaptation (potentially sharable)
– self-service provisioning and ad-hoc personalization
– applications available to several different users
• Business B2B applications domain specific – no need of third party hosting and involvement
• Customer/Supplier applications – applications where most of users and access is
externally to the organization and where ubiquitous access via Web is critical and intrinsic
• Business applications even critical, but not the core business ones
Some … Clouds 16
Traditional on-premise Deployment
at the client site
Details
Full ownership
Significant implementation
Customizable
Difficult to upgrade / maintain
Examples
HP Service Manager
BMC Remedy
CA Service Desk
EMC Infra
Software publisher
Customer Data Center
Application
Database
Some … Clouds 17
SaaS multi-tenant
Details
Hosted by software
publisher
Many customers to one
application set
Thought to be inflexible
Examples
Salesforce.com
Workday
Innotas
Customer
C
Software publisher
Customer
B
Customer
A
Application
Database
Some … Clouds 18
Customer
C
Software publisher
Customer
B
Customer
A
Application Application Application
Database Database Database
Management
automation
SaaS single-tenant
Details
Hosted by software publisher
Customers receive their own
app and database
Auto-upgrades
Extensive customization
Examples
Service-now.com
InteQ
Eloqua
Some … Clouds 19
SaaS Models
Some increasing resources models for providing some
resources as a service, XaaS
SaaS Software as a Service
• Resources are simple applications available via remote
Web access
PaaS Platform as a Service
• Resources are whole software platforms available for
remote execution, i.e., several programs capable of
interacting with each other
Iaas Infrastructure as a Service
• Resources are intended in a wider and complete way,
from hardware platforms, to operating systems, to
support to final applications: usually via virtualization up to Cloud Computing Some … Clouds 20
Hardware
Server Server Server
■ Below the real
architecture:
hardware components
&
software products
Layered Architecture: IaaS, PaaS & SaaS
Some … Clouds 21
Hardware
Infrastructure as a Service (IaaS)
Storage Network Computer
Server Server Server
■ Infrastructure: layer to
enable the distribution of
Cloud services,
typically realized by a
virtualization platform
Layered Architecture: IaaS, PaaS & SaaS
Some … Clouds 22
Hardware
Platform as a Service (PaaS)
Components Services
Infrastructure as a Service (IaaS)
Storage Network Computer
Server Server Server
■ Platform: layer to provide
to upper layers a set of
services and components
remotely available
Layered Architecture: IaaS, PaaS & SaaS
Some … Clouds 23
Hardware
Platform as a Service (PaaS)
Components Services
Infrastructure as a Service (IaaS)
Storage Network Computer
Server Server Server
Software as a Service (SaaS)
Machine Interface User Interface ■ Application: layer to
install applications,
to be available via Web
and Internet via Cloud
Layered Architecture: IaaS, PaaS & SaaS
Some … Clouds 24
Hardware
■ Client software to get access to
the system.
Those applications execute on
the client physical platforms
(remote computers) owned by
the final remote user
they can communicate with the
Cloud via the available
interfaces
Platform as a Service (PaaS)
Components Services
Client Client Client
Infrastructure as a Service (IaaS)
Storage Network Computer
Server Server Server
Software as a Service (SaaS)
Machine Interface User Interface
Layered Architecture: IaaS, PaaS & SaaS
Some … Clouds 25
Layered Architecture: Actors
Some … Clouds 26
27/19
Some SaaS and *-aaS examples
SaaS
From desktop applications: Google Apps (Gmail, Google
calendar & docs), Microsoft Window live (Hotmail,
Messenger, …) to search engines, Google, Yahoo,
Several social networks (Facebook, LinkedIn, Twitter, …)
PaaS typically accessed via Web service
Services available internally to and interacting with other
applications, as Google App Engine (GAE), Google Maps,
Microsoft Azure
Iaas some experimental infrastructures
Several examples, with virtualization services, Amazon Web
Services (S3), Elastic Computing Cloud (EC2), to several
management and monitoring desktops to control execution
(Sun global desktop, Zimdesk, …)
28/19
Google docs, salesForce, … widespread and very used Web applications (Web 2.0)
Google App Engine Google App Engine, sandbox for management e security, several languages(Python e Java)
HP/Yahoo/Intel Open Cirrus Test Bed: virtualized images, Xen, simple SLA console
Amazon Elastic Computing – EC2: Amazon WS (SLA), Amazon Machine Image (DB+Software and middleware+OS) e Xen, Dynamo
Openstack: virtualized images (DB+Software e middleware+OS), Xen, Swift (object storage), Cinder (block storage), Neutron(virtualized network)
IBM Cloud: virtualized images (DB+Software and middleware+OS), Xen, Tivoli (monitoring and management), simple SLA console
Microsoft Azure: Microsoft solution
Cloud computing: reality check
Some … Clouds 28
Cloud Key Goals
Infrastructure Perspective
How can we provide flexible compute resources
quickly to promote rapid prototyping?
How do we deploy applications that scale up to meet
increasing demands over time?
How do we manage 100,000’s of machines with
minimal human intervention?
How can we make the most efficient use of all the
compute resources in a data center?
Some … Clouds 29
Reliability and availability
■ We rely on external resources (public Clouds) owned by third-party companies
■ Amazon US outage (2124 April 2011), some papers… ■ “Amazon EC2 Outage Hobbles Websites: Worst Cloud Computing
Disaster”
■ “Amazon's lengthy cloud outage shows the danger of complexity”
Security and legislative issues
■ Data outsourcing in Cloud
■ Dematerialization where are my data???
(with emerging partial solutions…)
Service management and integration
■ Possibility to recreate SaaS silos
■ Integration of different Cloud systems standard APIs, VMs migration protocols, etc.
Cloud… introduces new problems
Some … Clouds 30
Cloud Deployment Models
Typically three models
Private cloud – enterprise owned or leased
Community cloud
– shared infrastructure for specific community
Public cloud – sold to the public, mega-scale infrastructure
Hybrid cloud – composition of two or more clouds
Some … Clouds 31
Some … Clouds 32 32/19
The NIST Cloud Definition Framework
Community
Cloud Private
Cloud
Public
Cloud
Hybrid Clouds
Deployment
Models
Service
Models
Essential
Characteristics
Common
Characteristics
Software as a
Service (SaaS)
Platform as a
Service (PaaS)
Infrastructure as a
Service (IaaS)
Resource Pooling
Broad Network Access Rapid Elasticity
Measured Service
On Demand Self-Service
Low Cost Software
Virtualization Service Orientation
Advanced Security
Homogeneity
Massive Scale Resilient Computing
Geographic Distribution
33/19
Cloud components
Some … Clouds 33
Four main components: one Cloud platform, with an externally available interface
accessed via web to cooperate with the real or virtual internal infrastructure
one virtualization infrastructure and the management system for the control, monitoring, and billing for client requests
one internal memory system typically via a database
one internal manager to handle external requests (management, queuing, and controlling)
Cloud Computing software systems have a typical structure based on components that can communicate with each other via well defined interfaces (often Web Services)
Goal and requirements – Cost reduction (to minimize deployment cost, energy,
storage, computing power, …) – Scalability on demand (resources handled in an “elastic
way”, all system resources are virtualized as for virtual machine, agreed and granted in SLA (Service Level Agreement
– Automated provisioning and ease of use (utility computing + infrastructure, platform, and SaaS)
Technical areas of intervention – Management (system resources, power-saving, …) – Interoperability & portability (data, applications, and
virtual machine images) – Measurement and monitoring (dynamic on line
monitoring, accounting control, …) – Security (privacy/data control, reputation, …)
Cloud computing …
Some … Clouds 34
35/19
Cloud for everything
Not exactly
for everything
Some … Clouds 35
36/19
Cloud computing today
The Cloud term and its related technologies have
become very common also for non technical users
- Advertising
- Humor
- Buzzword
Cloud has provided have not only very advanced technologies
also very widespread solutions, but also has stimulated a some
directions as guidelines for Global and Local Politics toward the
necessity and the unavoidably of the adoption
• G Cloud in UK
• USA: Federal Cloud (1/4 of total IT expenses)
• UE pushing toward European Cloud
Some … Clouds 36
Complete model of service
Some roles and offerings are still not so widely available
Some significant aspects
Some … Clouds 38
A taxonomy
Some … Clouds 39
Many aspects have been solved, not all of them are, some still hard to tackle • Virtualization
• New forms of resource virtualization
• Differentiated and global resource localization
• Federation and coordination of global resources
• Security, Privacy and SLA adherence
• Verifiable and trusted assurance policies
• Easy Control, handling and management by user
• Easy-to-use and user friendly actions and tools
• Data and QoS management
• self-* and automated system capable of adaptation
• API and platform enhancements
• New platforms e new interaction modes
Some open technological probems
Some … Clouds 40
Several directions and guidelines can be applied coming from neighbor areas
• Mobility
• Green e sustainability
• Novel business models
• Open-source and globally-available resources
• Peculiar legal aspects
Related Issues and Areas
Le Tecnologie Cloud: … 41 Some … Clouds 41
Cloud computing: pros and cons
Some … Clouds 42
Integration
Cloud : perception and challenges
Security
Some … Clouds 43
Cloud as a new sector, unavoidable in expansion and spreading, but acceleration can be favored by standard acceptation
• Clarity about new roles and responsibility
• Open source standard and implementations
• Integration with existing protocols (mobile …)
• Supports for sustainability
• Global and local legal clarity
• Ties with other areas:
Big Data, Open Data, and Smart City
Standard: a necessity
Some … Clouds 44
45/19
The fog has gone…
… and clouds
are disclosed
into the sky!
Thanks for
your
attention!
Some … Clouds 45