cloud computing
DESCRIPTION
Cloud ComputingTRANSCRIPT
Cloud Computing
Chapter 10
Introduction
Cloud Computing
• Result of evolution and adoption of existing technologies and paradigms
• “The interesting thing about Cloud Computing is that we’ve redefined Cloud Computing to include everything that we already do. . . . I don’t understand what we would do differently in the light of Cloud Computing other than change the wording of some of our ads.”
• Larry Ellison (Oracle CEO), quoted in the Wall Street Journal, September 26, 2008
2
Introduction
Goals of cloud computing
• to allow users to take benefit from all of these technologies, without the need for deep knowledge about or expertise with each one of them
• to cut costs, and help the users focus on their core business instead of being blocked by IT obstacles
Main enabling technology for cloud computing is virtualization:
• It generalizes the physical infrastructure, which is the most rigid component, and makes it available as a soft component that is easy to use and manage
3
Introduction • Cloud computing adopts concepts from Service-oriented
Architecture (SOA) that can help the user break problems into services that can be integrated to provide a solution
• Cloud computing provides all of its resources as services, and makes use of the well-established standards and best practices gained in the domain of SOA to allow global and easy access to cloud services in a standardized way
• Cloud computing is a kind of grid computing; it has evolved by addressing the QoS (quality of service) and reliability problems
• Cloud computing provides the tools and technologies to build data/compute intensive parallel applications with much more affordable prices compared to traditional parallel computing techniques
4
Definition
“A large-scale distributed computing paradigm, in which a pool of abstracted, virtualized, dynamically-scalable, managed computing power, storage, platforms, and services are delivered on demand to external customers over the Internet.”
(According to Foster, Zhao, Raicu and Lu, Cloud Computing and Grid Computing 360-Degree Compared, 2008)
5
Cloud: just a new name for Grid?
Nevertheless YES:
• Problems are the same in clouds and grids
• Common need to manage large facilities
• Define methods to discover, request and use resources
• Implement highly parallel computations
6
Clouds: relation with other paradigms
7
Clouds: relation with other paradigms
8
Cloud computing shares characteristics with:
• Client/server model — Client–server computing refers broadly to any distributed application that distinguishes between service providers (servers) and service requestors (clients)
• Grid computing — "A form of distributed and parallel computing, whereby a 'super and virtual computer' is composed of a cluster of networked, loosely coupled computers acting in concert to perform very large tasks."
Clouds: relation with other paradigms
9
Cloud computing shares characteristics with:
• Mainframe computer — Powerful computers used mainly by large organizations for critical applications, typically bulk data processing such as: industry and consumer statistics; police and secret intelligence services; enterprise resource planning; and financial transaction processing
• Utility computing — The "packaging of computing resources, such as computation and storage, as a metered service similar to a traditional public utility, such as electricity."
• Peer-to-peer — A distributed architecture without the need for central coordination. Participants are both suppliers and consumers of resources (in contrast to the traditional client–server model).
Clouds: yet about definition… From a hardware point of view, three aspects are new in Cloud Computing:
• The illusion of infinite computing resources available on demand, thereby eliminating the need for Cloud Computing users to plan far ahead for provisioning;
• The elimination of an up-front commitment by Cloud users, thereby allowing companies to start small and increase hardware resources only when there is an increase in their needs; and
• The ability to pay for use of computing resources on a short-term basis as needed (e.g., processors by the hour and storage by the day) and release them as needed, thereby rewarding conservation by letting machines and storage go when they are no longer useful.
10
Clouds: side-by-side comparison with grids Business model
• Traditional: one-time payment for unlimited use of software
• Clouds: pay the provider on a comsumption basis, computing and storage (like electricity, gas etc)
• Grids: project-oriented, trading, negotiation, provisioning, and allocation of resources based on the level of services provided
11
Clouds: side-by-side comparison with grids
12
Architecture
Clouds: side-by-side comparison with grids
Architecture
• Fabric Layer: same as grid fabric layer (resources)
• Unified Resource Layer: resources that have been abstracted/encapsulated (usually by virtualization) – virtual computer or cluster, logical file system, database, etc.
• Platform Layer: web hosting environment, scheduling service etc.
13
Clouds: side-by-side comparison with grids
Compute model
• Grids: batch-scheduled (queueing systems)
• Clouds: resources shared by all users at the same time (??!) in contrast to dedicated resources in queueing systems
• Maybe one of the major challenges in clouds: QoS!
14
Clouds: services Cloud computing providers offer their services according to several fundamental models:
• Infrastructure as a Service (IaaS) • Platform as a Service (PaaS) • Software as a Service (SaaS)
IaaS is the most basic and each higher model abstracts from the details of the lower models! Other key components in anything as a service (XaaS) are:
• Strategy-as-a-Service • Collaboration-as-a-Service • Business Process-as-a-Service • Database-as-a-Service, etc.
In 2012, Network as a Service (NaaS) and Communication as a service (CaaS) were officially included by ITU (International Telecommunication Union) as part of the basic cloud computing models, recognized service categories of a telecommunication-centric cloud ecosystem(!)
15
Clouds: services Infrastructure as a service (IaaS)
• In the most basic cloud-service model, providers of IaaS offer computers – physical or (more often) virtual machines – and other resources
• IaaS-cloud providers supply these resources on-demand from their large pools installed in data centers. For wide-area connectivity, customers can use either the Internet or carrier clouds (dedicated virtual private networks).
• To deploy their applications, cloud users install operating-system images and their application software on the cloud infrastructure.
• Cloud providers typically bill IaaS services on a utility computing basis: cost reflects the amount of resources allocated and consumed.
16
Clouds: services
Platform as a service (PaaS)
• In the PaaS model, cloud providers deliver a computing platform, typically including operating system, programming language execution environment, database, and web server.
• Application developers can develop and run their software solutions on a cloud platform without the cost and complexity of buying and managing the underlying hardware and software layers.
• With some PaaS offers like Windows Azure, the underlying computer and storage resources scale automatically to match application demand so that the cloud user does not have to allocate resources manually.
17
Clouds: services Software as a service (SaaS) • Users are provided access to application software and databases • SaaS is sometimes referred to as "on-demand software" and is usually
priced on a pay-per-use basis • Cloud users do not manage the cloud infrastructure and platform where
the application runs • Cloud applications are different from other applications in their
scalability—which can be achieved by cloning tasks onto multiple virtual machines at run-time to meet changing work demand. Load balancers distribute the work over the set of virtual machines. This process is transparent to the cloud user, who sees only a single access point.
• The pricing model for SaaS applications is typically a monthly or yearly flat fee per user
• SaaS allows a business the potential to reduce IT operational costs by outsourcing hardware and software maintenance and support to the cloud provider
• One drawback of SaaS is that the users' data are stored on the cloud provider's server…
18
Clouds: services
Network as a service (NaaS)
• A category of cloud services where the capability provided to the cloud service user is to use network/transport connectivity services and/or inter-cloud network connectivity services
• Traditional NaaS services include flexible and extended VPN, and bandwidth on demand
19
Clouds: services
20
Clouds: deployment models
21
Cloud Computing Types
Clouds: deployment models
Private cloud
• Private cloud is cloud infrastructure operated solely for a single organization, whether managed internally or by a third-party and hosted internally or externally
• Undertaking a private cloud project requires a significant level and degree of engagement to virtualize the business environment
• They have attracted criticism because users "still have to buy, build, and manage them" and thus do not benefit from less hands-on management
22
Clouds: deployment models
Public cloud
• A cloud is called a "public cloud" when the services are rendered over a network that is open for public use
• Generally, public cloud service providers like Amazon AWS, Microsoft and Google own and operate the infrastructure and offer access only via Internet (direct connectivity is not offered)
23
Clouds: deployment models
Community cloud
• Community cloud shares infrastructure between several organizations from a specific community with common concerns (security, compliance, jurisdiction, etc.)
• The costs are spread over fewer users than a public cloud (but more than a private cloud), so only some of the cost savings potential of cloud computing are realized.
24
Clouds: deployment models
Hybrid cloud
• Hybrid cloud is a composition of two or more clouds (private, community or public)
• An organization may store sensitive client data in house on a private cloud application, but interconnect that application to a billing application provided on a public cloud as a software service
• Or, IT organizations use public cloud computing resources to meet temporary capacity needs that can not be met by the private cloud
• Hybrid cloud architecture requires both on-premises resources and off-site (remote) server-based cloud infrastructure
25
Clouds: deployment models
Distributed cloud
• Cloud computing can also be provided by a distributed set of machines that are running at different locations, while still connected to a single network or hub service
26
Clouds: side-by-side comparison with grids (continued…) Application model
• Clouds: because of the use of virtualization may have difficulties in successfully running HPC applications that need fast and low latency networks
• Both grids and clouds have the capability to run any kind of application
27
Clouds: side-by-side comparison with grids (continued…) Security model
• Clouds: seem to have a relatively simpler and less secure model than in grids, but virtualization gives a level of security
• Grids impose a stricter security model
28
Available to try
29
Available to try
30
Available to try
31
Available to try
32
Hands-on...
33
Hands-on...
34
Hands-on...
35