Cloud Computing
Module 1
1
Module 1
Cloud Computing definition – Evolution of Cloud
Computing – Benefits and challenges of cloud
computing – Cloud services – Cloud deployment –
Cloud architecture – NIST architecture - Business
models.
2
Introduction
Cloud computing is a process that entails
accessing of services, including, storage,
applications and servers through the Internet,
making use of another company's remote
services for a fee.
Enables a company to store and access data or
programs virtuall y, i.e. in a cloud, rather than
on local hard drives or servers.
History and Evolution of Cloud
Computing
Roots as far back in 1950s
• Cloud computing - roots as far back in 1950s - when
mainframe computers came into existence.
• At that time, several users accessed the central
computer via dummy terminals. These terminals
- enable users access the mainframe computer.
• Costs of these mainframe devices - economically
infeasible for organizations to buy them.
• That was the time when the idea of provision of shared
access to a single computer occurred to the companies
to save costs.
In 1970s
• In 1970s, IBM came out with an operating system
(OS) named VM.
• This allowed for simultaneous operation of
more than one OS.
• Guest OS could be run on every VM, with their
own memory and other infrastructure, making it
possible to share these resources.
• This caused the concept of virtualization
in computing to gain popularity.
In 1990s
• Telecom operators – offer - virtualized private network
connections, whose quality of service was as good as those of
point-to-point (dedicated) services at a lesser cost.
• This paved way for telecom companies' to offer many users
shared access to a single physical infrastructure.
•Timeline
• Mainframe Era (1950s-1970s): Centralized computing with large
machines.
• Client-Server Era (1980s-1990s): Emergence of distributed computing
with client-server systems.
• Virtualization (2000s): Virtual machines allow better resource
utilization.
• Cloud Era (2010s-Present): Scalable and flexible cloud solutions
dominate the tech landscape.
7
Types of cloud computing
• Software-as-a-Service (SaaS) - requires a
company to subscribe to it and access
services over the Internet
• Infrastructure-as-a-Service (IaaS) - is a solution
where large cloud computing companies deliver
virtual infrastructure
• Platform-as-a-Service (PaaS) - gives the company
the freedom to make its own custom
applications that will be used by all its entire
workforce.
Infrastructure-as-a-Service
It provides access to fundamental resources such as
physical machines, virtual machines, virtual storage, etc.
Apart from these resources, the IaaS also offers:
• Virtual machine disk storage
• Virtual local area network (VLANs)
• Load balancers
• IP addresses
• Software bundles
All of the above resources are made available to end user
via server virtualization. Moreover, these resources are
accessed by the customers as if they own them.
Platform-as-a-Service
It offers the runtime environment for applications. It also
offers development and deployment tools required to develop
applications.
PaaS has a feature of point-and-click tools that enables non-
developers to create web applications.
• App Engine of Google and Force.com are examples of PaaS
offering vendors. Developer may log on to these websites
and use the built-in API to create web-based applications.
• But the disadvantage of using PaaS is that, the developer
locks-in with a particular vendor. For example, an
application written in Python against API of Google, and
using App Engine of Google is likely to work only in that
environment.
Software-as–a-Service (SaaS)
This model allows to provide software
application as a service to the end users. There
are several SaaS applications listed below:
• Billing and invoicing system
• Customer Relationship Management (CRM)
applications
• Help desk applications
• Human Resource (HR) solutions
11
Types of cloud computing
Types of Clouds
1 - public
2 - private
3- community and
4 - hybrid.
Characteristics of Cloud Computing:
• On-demand self-service
• Broad network access
• Resource pooling
• Rapid elasticity
• Measured service (pay-as-you-go)
14
Cloud Deployment Models
• Deployment Types:
• Public Cloud: Services provided by third-party vendors accessible over the
internet (e.g., AWS, Microsoft Azure).
• Private Cloud: Dedicated infrastructure used by one organization.
• Hybrid Cloud: Combines both private and public clouds to optimize
workloads.
• Community Cloud: Shared infrastructure for specific organizations or a
community of users.
15
Cloud Computing architecture
• This comprises of many cloud components,
which are loosely coupled. We can broadly
divide the cloud architecture into two parts -
Front End & Back End
• Each of the ends is connected through a
network, usually Internet. The following
diagram shows the graphical view of cloud
computing architecture:
• The front end refers to the client part of cloud
computing system. It consists of interfaces and
applications that are required to access the cloud
computing platforms, Example - Web Browser.
• The back End refers to the cloud itself. It consists
of all the resources required to provide cloud
computing services. It comprises of huge data
storage, virtual machines, security mechanism,
services, deployment models, servers, etc.
•Key Components:
• Frontend (Client-side): Devices and interfaces used
by consumers to access cloud services.
• Backend (Server-side): Cloud data centers,
including databases, storage, and services.
• Cloud Storage: Centralized storage that can be
accessed remotely.
• Networking: Connects the frontend and backend
securely.
19
NIST Cloud Computing Architecture
•NIST (National Institute of Standards and
Technology) Framework:
• Five Essential Characteristics:
• On-demand self-service
• Broad network access
• Resource pooling
• Rapid elasticity
• Measured service
• Cloud Architecture Layers:
• Cloud Consumer Layer
• Cloud Provider Layer
• Cloud Service Layer (IaaS, PaaS, SaaS)
• Cloud Application Layer
20
Business Models in Cloud Computing
•Popular Business Models:
• Pay-as-you-go (Consumption-Based): Pay for what
you use (e.g., AWS).
• Subscription-Based: Regular recurring fees for
service access (e.g., Microsoft Office 365, Salesforce).
• Freemium Model: Free basic services, with premium
features available for a fee (e.g., Dropbox).
• Enterprise Licensing: Bulk licensing for large
organizations (e.g., Oracle, SAP).
21
Benefits of Cloud Computing
•Key Benefits:
• Cost Efficiency: No need for large investments in hardware or
infrastructure.
• Scalability: Easily scale resources up or down based on demand.
• Flexibility & Mobility: Access services from anywhere with internet
access.
• Disaster Recovery: Built-in backups and data redundancy ensure
business continuity.
• Speed & Innovation: Quick deployment of services and faster product
development.
22
Benefits of Cloud computing
• One can access applications as utilities (services), over the Internet.
• One can manipulate and configure the applications online at any
time.
• It does not require installing a software to access or use cloud
application.
• Cloud Computing offers online development and deployment
tools, programming runtime environment through PaaS
model.
• Cloud resources are available over the network in a manner that
provide platform independent access to any type of clients.
• Cloud Computing offers on-demand self-service. The resources
can be used without interaction with cloud service provider.
• Cloud Computing is highly cost effective because it operates at high
efficiency with optimum utilization. It just requires an Internet
connection
• Cloud Computing offers load balancing that makes it more reliable.
Benefits of cloud computing
Cloud Computing Challenges
Challenges of Cloud Computing
•Key Challenges:
• Security & Privacy: Managing data security and ensuring compliance with
regulations.
• Downtime and Reliability: Risk of service interruptions from cloud
providers.
• Cost Management: Potentially unpredictable costs as usage scales.
• Vendor Lock-in: Difficulty in switching providers due to proprietary
services.
• Limited Control: Loss of direct control over infrastructure and security.
26
Challenges
Security and Privacy
• Security and Privacy of information is the biggest challenge to cloud computing.
Security and privacy issues can be overcome by employing encryption, security
hardware and security applications.
Portability
• This is another challenge to cloud computing that applications should easily be
migrated from one cloud provider to another. There must not be vendor lock-in.
However, it is not yet made possible because each of the cloud provider uses
different standard languages for their platforms.
Interoperability
• It means the application on one platform should be able to incorporate services
from the other platforms. It is made possible via web services, but developing such
web services is very complex.
Computing Performance
• Data intensive applications on cloud requires high network bandwidth, which
results in high cost. Low bandwidth does not meet the desired computing
performance of cloud application.
Reliability and Availability
• It is necessary for cloud systems to be reliable and robust because most of the
businesses are now becoming dependent on services provided by third-party.