Lecture 1
Lecture 1
Risala T. Khan
Professor
IIT, JU
1
• Computing is being transformed into a model
consisting of services that are commoditized
and delivered in a manner similar to utilities
such as water, electricity, gas, and telephony.
• In such a model, users access services based on
Introducti their requirements, regardless of where the
services are hosted.
on • Several computing paradigms, such as grid
computing, have promised to deliver this utility
computing vision.
• Cloud computing is the most recent emerging
paradigm promising to turn the vision of
“computing utilities” into a reality
2
• Cloud computing is a technological advancement that focuses
on the way we design computing systems, develop
applications, and leverage existing services for building
software.
• It is based on the concept of dynamic provisioning, which is
applied not only to services but also to compute capability,
Introducti storage, networking, and information technology (IT)
infrastructure in general.
on (Cont..) • Resources are made available through the Internet and
offered on a pay-per-use basis from cloud computing vendors.
• Today, anyone with a credit card can subscribe to cloud
services and deploy and configure servers for an application in
hours, growing and shrinking the infrastructure serving its
application according to the demand, and paying only for the
time these resources have been used
3
• This vision of computing utilities based on a
service-provisioning model made the massive
transformation of the entire computing industry
in the 21st century, whereby computing services
Cloud will be readily available on demand, just as
other utility services such as water, electricity,
computing telephone, and gas are available in today’s
society.
at a • Similarly, users (consumers) need to pay
glance providers only when they access the computing
services.
• In addition, consumers no longer need to invest
heavily or encounter difficulties in building and
maintaining complex IT infrastructure.
4
• In such a model, 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.
• The latter term often denotes the infrastructure as a
Continue “cloud” from which businesses and users can access
applications as services from anywhere in the world and
… on demand.
• Hence, cloud computing can be classified as a new
paradigm for the dynamic provisioning of computing
services supported by state-of-the-art data centers
employing virtualization technologies for consolidation
and effective utilization of resources.
• Cloud computing allows renting infrastructure, runtime
environments, and services on a pay-per-use basis.
5
• Cloud computing allows anyone with a credit card
to rent virtual hardware, runtime environments,
and services.
• These are used for as long as needed, with no up-
front commitments required.
The vision
• The entire stack of a computing system is
transformed into a collection of utilities, which can
be rented and composed together to deploy
of cloud systems in hours rather than days and with virtually
no maintenance costs.
6
7
• Different stakeholders use clouds for a variety
of services.
• The need for ubiquitous storage and compute
power on demand is the most common reason
to consider cloud computing.
Cloud infrastructure.
• The capability for Web based access to
documents and their processing using
sophisticated applications is one of the
appealing factors for end users
8
What to expect from Cloud??
What next??
9
What is Cloud??
• Cloud computing has become a popular buzzword; it has
been widely used to refer to different technologies,
services, and concepts.
• It is often associated with virtualized infrastructure or
hardware on demand, utility computing, IT outsourcing,
platform and software as a service, and many other things
that now are the focus of the IT industry.
• Figure 1.2 depicts the plethora of different notions included
in current definitions of cloud computing.
10
11
• The term cloud has historically been used in the telecommunications industry as an
abstraction of the network in system diagrams.
• It then became the symbol of the most popular computer network: the Internet. This
meaning also applies to cloud computing, which refers to an Internet-centric way of
computing.
• The Internet plays a fundamental role in cloud computing, since it represents either the
medium or the platform through which many cloud computing services are delivered and
made accessible.
12
Formal Definition of Cloud
Computing
• “Cloud computing refers to both the applications delivered as services over the Internet and
the hardware and system software in the data centers that provide those services.”
• This definition describes cloud computing as a phenomenon touching on the entire stack:
from the underlying hardware to the high-level software services and applications.
• It introduces the concept of everything as a service, mostly referred as XaaS, where the
different components of a system—IT infrastructure, development platforms, databases, and
so on—can be delivered, measured, and consequently priced as a service.
• This new approach significantly influences not only the way that we build software but also
the way we deploy it, make it accessible, and design our IT infrastructure, and even the way
companies allocate the costs for IT needs.
• The approach fostered by cloud computing is global: it covers both the needs of a single user
hosting documents in the cloud or one of the large companies deciding to deploy part of or
the entire corporate IT infrastructure in the public cloud.
13
Continue..
• Another important aspect of cloud computing is its utility-oriented approach.
• Cloud computing focuses on delivering services with a given pricing model, in most cases a “pay-per-
use” strategy.
• It makes it possible to access online storage, rent virtual hardware, or use development platforms and
pay only for their effective usage, with no or minimal up-front costs.
• All these operations can be performed and billed simply by entering the credit card details and
accessing the exposed services through a Web browser.
• This helps us provide a different and more practical characterization of cloud computing.
14
• According to Reese , 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,
enterpriseclass services are delivered according a specific pricing scheme.
15
A closer look on Cloud Computing
• Cloud computing is helping enterprises, governments, public and private institutions, and research organizations shape more
effective and demand-driven computing systems.
• Practical examples of such systems exist across all market segments:
• Large enterprises can offload some of their activities to cloud-based systems.
Recently, the New York Times has converted its digital library of past editions into a Web-friendly format. This required a
considerable amount of computing power for a short period of time. By renting Amazon EC2 and S3 Cloud resources, the
Times performed this task in 36 hours and relinquished these resources, with no additional costs.
• Small enterprises and start-ups can afford to translate their ideas into business results more quickly, without excessive up-
front costs.
Animoto is a company that creates videos out of images, music, and video fragments submitted by users. The process
involves a considerable amount of storage and backend processing required for producing the video, which is finally made
available to the user. Animoto does not own a single server and bases its computing infrastructure entirely on Amazon
Web Services, which are sized on demand according to the overall workload to be processed.
16
Cont…
• System developers can concentrate on the business logic rather than dealing
with the complexity of infrastructure management and scalability.
• Little Fluffy Toys is a company in London that has developed a widget providing users with
information about nearby bicycle rental services. The company has managed to back the
widget’s computing needs on Google AppEngine and be on the market in only one week.
• End users can have their documents accessible from everywhere and any
device.
• Apple iCloud is a service that allows users to have their documents stored in the Cloud and
access them from any device users connect to it. This makes it possible to take a picture
while traveling with a smartphone, go back home and edit the same picture on your
laptop, and have it show as updated on your tablet computer. This process is completely
transparent to the user, who does not have to set up cables and connect these devices
with each other.
17
• The three major models for deploying and
accessing cloud computing environments are
Cloud
public clouds, private/enterprise clouds, and
hybrid clouds (see Figure 1.4).
• Public clouds are the most common deployment
ce
any consumer on a subscription basis.
• Such clouds are appealing to users because they
allow users to quickly leverage compute, storage,
18
• 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.
Continu
• 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
e.. •
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.
19
• Whenever private cloud resources are
unable to meet users’ quality-of-
service requirements, hybrid
computing systems, partially
composed of public cloud resources
Continue and privately owned infrastructures,
are created to serve the organization’s
… needs.
• These are often referred as hybrid
clouds, which are becoming a
common way for many stakeholders
to start exploring the possibilities
offered by cloud computing
20
21
Characteristics & Benefits of Cloud
• 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
22
Cont…
• The most evident benefit from the use of cloud computing systems and technologies is the increased
economical return due to the reduced maintenance costs and operational costs related to IT software
and infrastructure.
• This is mainly because IT assets, namely software and infrastructure, are turned into utility costs, which
are paid for as long as they are used, not paid for up front.
• Capital costs are costs associated with assets that need to be paid in advance to start a business
activity.
• Before cloud computing, IT infrastructure and software generated capital costs, since they were paid in
advance so that business start-ups could afford a computing infrastructure, enabling the business
activities of the organization.
• The revenue of the business is then utilized to compensate over time for these costs.
• Organizations always minimize capital costs, since they are often associated with depreciable values.
23
Cont..
• This is the case of hardware: a server bought today for $1,000 will have a market value less than its
original price when it is eventually replaced by new hardware.
• To make profit, organizations have to compensate for this depreciation created by time, thus reducing
the net gain obtained from revenue.
• Minimizing capital costs, then, is fundamental.
• Cloud computing transforms IT infrastructure and software into utilities, thus significantly contributing
to increasing a company’s net gain.
• Moreover, cloud computing also provides an opportunity for small organizations and start-ups: these
do not need large investments to start their business, but they can comfortably grow with it.
• Finally, maintenance costs are significantly reduced: by renting the infrastructure and the application
services, organizations are no longer responsible for their maintenance. This task is the responsibility of
the cloud service provider, who can bear the maintenance costs
24
Cont..
• End users can benefit from cloud computing by having their data and the capability of
operating on it always available, from anywhere, at any time, and through multiple
devices.
• Information and services stored in the cloud are exposed to users by Web-based
interfaces that make them accessible from portable devices as well as desktops at home.
• Since the processing capabilities (that is, office automation features, photo editing,
information management, and so on) also reside in the cloud, end users can perform the
same tasks that previously were carried out through considerable software investments.
• The cost for such opportunities is generally very low, since the cloud service provider
shares its costs across all the tenants that he is servicing.
• Multitenancy allows for better utilization of the shared infrastructure that is kept
operational and fully active.
25
Challenges of Cloud Computing
• As any new technology develops and becomes popular, new issues have to be faced.
• Cloud computing is not an exception.
• New, interesting problems and challenges are regularly being posed to the cloud community,
including IT practitioners, managers, governments, and regulators.
• Besides the practical aspects, which are related to configuration, networking, and sizing of cloud
computing systems, a new set of challenges concerning the dynamic provisioning of cloud
computing services and resources arises.
• For example, in the Infrastructure-as-a-Service domain, how many resources need to be
provisioned, and for how long should they be used, in order to maximize the benefit?
• Technical challenges also arise for cloud service providers for the management of large
computing infrastructures and the use of virtualization technologies on top of them.
• In addition, issues and challenges concerning the integration of real and virtual infrastructure
need to be taken into account from different perspectives, such as security.
26
Cont..
• Security in terms of confidentiality, secrecy, and protection of data in a cloud environment is
another important challenge.
• Organizations do not own the infrastructure they use to process data and store information.
• This condition poses challenges for confidential data, which organizations cannot afford to reveal.
• Therefore, assurance on the confidentiality of data and compliance to security standards, which
give a minimum guarantee on the treatment of information on cloud computing systems, are
sought.
• The problem is not as evident as it seems: even though cryptography can help secure the transit
of data from the private premises to the cloud infrastructure, in order to be processed the
information needs to be decrypted in memory.
• This is the weak point of the chain: since virtualization allows capturing almost transparently the
memory pages of an instance, these data could easily be obtained by a malicious provider.
27
Cont…
• Legal issues may also arise.
• These are specifically tied to the ubiquitous nature of cloud computing, which spreads computing
infrastructure across diverse geographical locations.
• Different constrain about privacy in different countries may potentially create disputes as to the
rights that third parties (including government agencies) have to your data.
• U.S. legislation is known to give extreme powers to government agencies to acquire confidential
data when there is the suspicion of operations leading to a threat to national security.
• European countries are more restrictive and protect the right of privacy.
• An interesting scenario comes up when a U.S. organization uses cloud services that store their
data in Europe. In this case, should this organization be suspected by the government, it would
become difficult or even impossible for the U.S. government to take control of the data stored in a
cloud datacenter located in Europe.
28
• 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
Virtualizati interface that is expected by a guest.
• The most common example of virtualization is hardware
on virtualization.
• 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.
• 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.
29
What are the component of H/W
Virtualization
• The hardware layer, or virtualization host, contains the physical server
components such as CPU, memory, network, and disk drives. This is the
physical hardware on which virtualization takes place. It requires an x86-
based system with one or more CPUs to run all supported guest operating
systems.
• The hypervisor creates a virtualization layer that runs between the OS and
the server hardware, allowing many instances of an operating system or
different operating systems to run in parallel on a single machine.
Hypervisors isolate operating systems and applications from the underlying
computer hardware, or the host machine, from the virtual machines that use
its resources.
• Virtual machines are software emulations of a computing hardware
environment and provide the functionalities of a physical computer. Virtual
machines themselves consist of virtual hardware, a guest operating system,
and guest software or applications.
30
How does H/W Virtualization Work
• Hardware virtualization enables a single physical machine to
function as multiple machines by creating simulated
environments.
• The physical host uses software called a hypervisor that creates
an abstraction layer between the software and hardware and
manages the shared physical hardware resources between the
guest and host operating systems.
• The hypervisor connects directly to the hardware and enables it
to be split into multiple distinct environments or virtual machines.
• These VMs use the resources of the physical host, including CPU,
memory, and storage, which are allocated to the guests as
needed.
31
• 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.
• This term captures a new way in which developers architect
applications and deliver services through the Internet and provides
Web 2.0 new experience for users of these applications and services
• Web 2.0 applications are extremely dynamic: they improve
continuously, and new updates and features are integrated at a
constant rate by following the usage trend of the community.
• There is no need to deploy new software releases on the installed
base at the client side. Users can take advantage of the new software
features simply by interacting with cloud application.
• Examples of Web 2.0 applications are Google Documents, Google
Maps, Flickr, Facebook, Twitter, YouTube, de.li.cious, Blogger, and
Wikipedia.
32
• 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.
• Service-oriented computing (SOC) supports the development of rapid, low-cost,
Service-
flexible, interoperable, and evolvable application.
• A service is an abstraction representing a self-describing component that can
perform any function—anything from a simple function to a complex business
oriented •
process.
Virtually any piece of code that performs a task can be turned into a service and
Computin •
expose its functionalities through a network-accessible protocol.
A service is supposed to be loosely coupled, reusable, programming language
g
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.
• Thus, a wider range of clients, which can look up services in global registries and
consume them in a location-transparent manner, can be served.
33
• 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 services as a utility like natural gas, water, power,
and telephone connection has a long history but has become a reality today with
Utility-
the advent of cloud computing.
• The first traces of this service-provisioning model can be found in the mainframe
era. IBM and other mainframe providers offered mainframe power to organizations
oriented such as banks and government agencies.
• The idea of computing as utility remained and extended from the business domain
g
computing and service-oriented architectures (SOAs) introduced the idea of
leveraging external services for performing a specific task within a software system.
• Applications were not only distributed, they started to be composed as a mesh of
services provided by different entities. [for example payment gateway service
integrated in e-commerce site]
• These services, accessible through the Internet, were made available by charging
according to usage
34