Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
4 views

Unit1_a

Uploaded by

Yashaswini M
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Unit1_a

Uploaded by

Yashaswini M
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 57

Fundamental of Cloud

computing
Cloud computing
: technologies, concepts, and ideas
The Next Revolution in IT
The Big Switch in IT
• Classical Computing • Cloud Computing
• Buy & Own • Subscribe
• Hardware, System Software, • Use
Applications often to meet peak
Every 18 months?

needs.
• Install, Configure, Test, Verify
• Manage
• ..
• Finally, use it
• $$$$....$(High CapEx)
• $ - pay for what you use, based on
QoS
Cloud computing
• users access services based on their requirements without regard to
where the services are hosted. This model has been referred to as
utility computing or, recently (since 2007), as cloud computing.
• Cloud computing allows renting infrastructure, runtime
environments, and services on a payper-use basis.
• End users leveraging cloud computing services can access their
documents and data anytime, anywhere, and from any device
connected to the Internet.
• One of the most diffuse views of cloud computing can be summarized
as follows:
• I don’t care where my servers are, who manages them, where my
documents are stored, or where my applications are hosted. I just
want them always available and access them from any device
connected through Internet. And I am willing to pay for this service for
as a long as I need it
vision of cloud computing
• According to Reese [29], we can define three criteria to discriminate whether a service is
delivered in the cloud computing style:
• The service is accessible via a Web browser (nonproprietary) or a Web services application programming
interface (API).
• Zero capital expenditure is necessary to get started.
• You pay only for what you use as you use it.
• Even though many cloud computing services are freely available for single users,
enterprise- class services are delivered according a specific pricing scheme. In this case
users subscribe to the service and establish with the service provider a service-level
agreement (SLA) defining the quality-of-service parameters under which the service is
delivered.
• The utility-oriented nature of cloud computing is clearly expressed by
Buyya et al. [30]:
• A cloud is a type of parallel and distributed system consisting of a collection of interconnected
and virtualized computers that are dynamically provisioned and presented as one or more
unified computing resources based on service-level agreements established through
negotiation between the service provider and consumers.
• The three major models for deploying and accessing cloud computing environments are
public clouds, private/enterprise clouds, and hybrid clouds
Types of cloud computing
• Public cloud
• Private cloud
• Hybrid cloud
Public clouds
• Public clouds are the most common deployment models in
which necessary IT infrastructure (e.g., virtualized datacenters)
• it is established by a third-party service provider that makes it
available to any consumer on a subscription basis.
• Such clouds are appealing to users because they allow users to
quickly leverage compute, storage, and application services.
• In this environment, users’ data and applications are deployed on cloud
datacenters on the vendor’s premises.
private clouds
• Large organizations that own massive computing infrastructures can still benefit
from cloud computing by replicating the cloud IT service delivery model in-house.
• This idea has given birth to the concept of private clouds as opposed to public
clouds.
• In 2010, for example, the U.S. federal government, one of the world’s largest
consumers of IT spending (around $76 billion on more than 10,000 systems)
started a cloud computing initiative aimed at providing government agencies with
a more efficient use of their computing facilities.
• The use of cloud-based in-house solutions is also driven by the need to keep
confidential information within an organization’s premises.
• Institutions such as governments and banks that have high security, privacy, and
regulatory concerns prefer to build and use their own private or enterprise
clouds.
hybrid clouds

• Whenever private cloud resources are unable to meet users’ quality-


of-service requirements, hybrid computing systems, partially
composed of public cloud resources and privately owned infra-
structures, are created to serve the organization’s needs. These are
often referred as hybrid clouds
Cloud Deployment Models

Public/Internet Private/Enterprise Hybrid/Inter


Clouds Clouds Clouds

3rd party, Mixed usage of


Cloud model run
multi-tenant Cloud private and public
within a company’s
infrastructure Clouds: Leasing public
own Data Center /
& services: cloud services
infrastructure for
when private cloud
internal and/or
* available on capacity is
partners use.
subscription basis insufficient
The cloud computing reference model
A fundamental characteristic of cloud computing is the capability to deliver, on demand, a variety of IT
services that are quite diverse from each other.

This variety creates different perceptions of what cloud computing is among users.

Cloud computing services offerings into three major categories:


Infrastructure-as-a-Service (IaaS)
Platform-as-a-Service (PaaS)
Software-as-a-Service (SaaS).
Infrastructure-as-a-Service
Infrastructure-as-a-Service solutions deliver infrastructure on demand in the
form of virtual hardware, storage, and networking.

Virtual hardware is utilized to provide compute on demand in the form of


virtual machine instances.

These are created at users’ request on the provider’s infrastructure, and


users are given tools and interfaces to configure the software stack installed
in the virtual machine.

The pricing model is usually defined in terms of dollars per hour, where the
hourly cost is influenced by the characteristics of the virtual hardware.
Virtual storage is delivered in the form of raw disk space or object store.
The former complements a virtual hardware offering that requires persistent
storage.

The latter is a more high-level abstraction for storing entities rather than files.

Virtual networking identifies the collection of services that manage the


networking among virtual instances and their connectivity to the Internet or
private networks.
Platform-as-a-Service
They deliver scalable and elastic runtime environments on demand and
host the execution of applications.

These services are backed by a core middleware platform that is


responsible for creating the abstract environment where applications are
deployed and executed.

It is the responsibility of the service provider to provide scalability and to


manage fault tolerance, while users are requested to focus on the logic of
the application developed by leveraging the provider’s APIs and libraries.

This approach increases the level of abstraction at which cloud computing


is leveraged but also constrains the user in a more controlled environment.
Software-as-a-Service solutions
Software-as-a-Service solutions provide applications and services on
demand.

Most of the common functionalities of desktop applications—such as


office automation, document management, photo editing, and customer
relationship management (CRM) software—are replicated on the
provider’s infrastructure and made more scalable and accessible through
a browser on demand.

These applications are shared across multiple users whose interaction is


isolated from the other users.

The SaaS layer is also the area of social networking Websites, which
leverage cloud-based infrastructures to sustain the load generated by their
popularity.
Summary

IaaS solutions are sought by users who want to leverage cloud


computing from building dynamically scalable computing systems
requiring a specific software stack.

IaaS services are therefore used to develop scalable Websites or


for back- ground processing.

.
PaaS
PaaS solutions provide scalable programming platforms for developing
applications and are more appropriate when new systems have to be
developed.

SaaS solutions target mostly end users who want to benefit from the
elastic scalability of the cloud without doing any software development,
installation, configuration, and maintenance.

This solution is appropriate when there are existing SaaS services that fit
users needs (such as email, document management, CRM, etc.) and a
minimum level of customization is needed
Characteristics and benefits
Cloud computing has some interesting characteristics that bring benefits to
both cloud service consumers (CSCs) and cloud service providers (CSPs).

These characteristics are:


•No up-front commitments
•On-demand access
•Nice pricing
•Simplified application acceleration and scalability
•Efficient resource allocation
•Energy efficiency
•Seamless creation and use of third-party services
Challenges

• Data Security and Privacy


• Cost Management
• Multi-Cloud Environments
• Performance Challenges
• Interoperability and Flexibility
• High Dependence on Network
• Lack of Knowledge and Expertise
Historical developments
Overview of the evolution of the distributed computing technologies that
have influenced cloud computing.

In tracking the historical evolution, we briefly review five core


technologies that played an important role in the realization of cloud
computing.

These technologies are distributed systems, virtualization, Web 2.0,


service orientation, and utility computing.
Distributed systems
• A distributed system is a collection of independent computers that
appears to its users as a single coherent system.
• it is composed of multiple independent components and that these
components are perceived as a single entity by users.
• The primary purpose of distributed systems is to share resources
and utilize them better. This is true in the case of cloud computing,
where this concept is taken to the extreme and resources
(infrastructure, runtime environments, and services) are rented to
users.
• Distributed systems often exhibit other properties such as
heterogeneity, openness, scalability, transparency, concurrency,
continuous availability, and independent failures.
• Three major milestones have led to cloud computing: mainframe
computing, cluster computing, and grid computing.
Virtualization
• Virtualization is another core technology for cloud computing.
• It encompasses a collection of solutions allowing the abstraction of
some of the fundamental elements for computing, such as
hardware, runtime environments, storage, and networking.
• Virtualization is essentially a technology that allows creation of
different computing environments. These environments are called
virtual because they simulate the interface that is expected by a
guest.
• The most common example of virtualization is hardware
virtualization.
• This technology allows simulating the hardware interface expected
by an operating system. Hardware virtualization allows the
coexistence of different software stacks on top of the same
hardware.
• These stacks are contained inside virtual machine instances, which
operate in complete isolation from each other.
• High-performance servers can host several virtual machine
instances, thus creating the opportunity to have a customized
software stack on demand.
• This is the base technology that enables cloud computing solutions
to deliver virtual servers on demand, such as Amazon EC2,
RightScale, VMware vCloud, and others.
• Together with hardware virtualization, storage and network
virtualization complete the range of technologies for the emulation
of IT infrastructure.
Web 2.0
• The Web is the primary interface through which cloud computing
delivers its services.
• At present, the Web encompasses a set of technologies and services
that facilitate interactive information sharing, collaboration, user-
centered design, and application composition
• This evolution has transformed the Web into a rich platform for
application development and is known as Web 2.0.
• It captures a new way in which developers architect applications and
deliver services through the Internet and provides new experience for
users of these applications and services.
• Web 2.0 brings interactivity and flexibility into Web pages, providing
enhanced user experience by gaining Web-based access to all the
functions that are normally found in desktop applications.
• These capabilities are obtained by integrating a collection of
standards and technologies such as XML, Asynchronous JavaScript
and XML (AJAX), Web Services, and others.
• Web 2.0 applications are extremely dynamic: they improve
continuously, and new updates and features are integrated at a
constant rate
• Users can take advantage of the new software features simply by
interacting with cloud applications
• Examples of Web 2.0 applications are Google Documents, Google
Maps, Flickr, Facebook, Twitter, YouTube, de.li.cious, Blogger, and
Wikipedia.
Service-oriented computing
• A service is an abstraction representing a self-describing and
platform-agnostic component that can perform any function—
anything from a simple function to a complex business process.
• Service orientation is the core reference model for cloud computing
systems.
• This approach adopts the concept of services as the main building
blocks of application and system development.
• It supports the development of rapid, low-cost, flexible,
interoperable, and evolvable applications and systems
• Virtually any piece of code that performs a task can be turned into a
service and expose its functionalities through a network-accessible
protocol.
• A service is supposed to be loosely coupled, reusable, programming
language independent, and location transparent.
• Loose coupling allows services to serve different scenarios more
easily and makes them reusable. Independence from a specific
platform increases services accessibility
• Services are composed and aggregated into a service-oriented
architecture which is a logical way of organizing software systems to
provide end users or other entities distributed over the network with
services through published and discoverable interfaces.
• Service-oriented computing introduces and diffuses two important
concepts, which are also fundamental to cloud computing:
• quality of service (QoS)
• Software-as-a-Service (SaaS).
Quality of service (QoS)
• It identifies a set of functional and nonfunctional attributes that can
be used to evaluate the behavior of a service from different
perspectives.
• These could be performance metrics such as response time, or
security attributes, transactional integrity, reliability, scalability, and
availability.
• QoS requirements are established between the client and the
provider via an SLA
Software-as-a-Service
• The term has been inherited from the world of application service
providers (ASPs), which deliver software services-based solutions
across the wide area network from a central datacenter and make
them available on a subscription or rental basis.
• The ASP is responsible for maintaining the infrastructure and making
available the application
• Web services are software components that expose functionalities
accessible using a method invocation pattern that goes over the
HyperText Transfer Protocol (HTTP).
Utility-oriented computing

• Utility computing is a vision of computing that defines a service-


provisioning model for compute services in which resources such as
storage, compute power, applications, and infrastructure are
packaged and offered on a pay-per-use basis.
• The idea of providing computing as a utility like natural gas, water,
power, and telephone connection
• Utility computing is defined as a service provisioning model that
offers computing resources to clients as and when they require
them on an on-demand basis. The charges are exactly as per the
consumption of the services provided, rather than a fixed charge or a
flat rate.
Cloud Applications

•Scientific/Tech Applications
•Business Applications
•Consumer/Social Applications

Science and Technical Applications

Business Applications

Consumer/Social Applications

You might also like