Chapter 4: Cloud Concepts
By:
Er. Raj Kiran Chhatkuli
Assistant Professor
Department of Electronics & Computer Engineering
IOE Pashchimanchal Campus, TU
Imagine you need computing resources – like servers, storage, or
software – to run your business or personal projects. Traditionally, you
had to buy all this yourself, set it up, maintain it, and upgrade it. This
is like buying your own power generator, water well, and
manufacturing tools.
• Cloud Computing changes this model. Instead of owning and
managing everything yourself, you access these computing resources
over the internet, typically from a large provider who manages the
underlying physical infrastructure.
• It's like plugging into the public utility grid for electricity and water –
you use what you need, pay for what you use, and don't worry about
the power plant or reservoir.
Characteristics of Cloud computing(NIST Model)
• The National Institute of Standards and Technology (NIST) developed
a widely accepted definition to standardize what "Cloud Computing"
actually means. It's defined by five essential characteristics.
• Five essential characteristics (NIST model) of cloud computing:
❑ On demand self-service
❑ Broad network access
❑ Resource pooling
❑ Rapid Elasticity
❑ Measured service
NIST Essential Characteristics:
1. On-Demand Self-Service:
• You can get computing resources (like launching a server)
whenever you need them, automatically, without requiring human
interaction from the service provider.
Example: Logging into your Amazon Web Services (AWS) account
and launching a new virtual server instance through a web portal or
API in minutes, without calling anyone at AWS.
2. Broad Network Access:
• Resources are available over the network (internet) and can be accessed using
standard devices (laptops, phones, tablets).
Example: Accessing your company's cloud-based email (like Gmail or Outlook 365)
from your office computer, home laptop, or smartphone using a web browser or app.
3. Resource Pooling:
• The provider's computing resources (servers, storage, network) are pooled together to
serve multiple customers (multi-tenancy). Customers share the same physical
infrastructure, but their data and applications are kept separate and secure.
Resources are dynamically assigned and reassigned as needed.
Example: Thousands of different companies and individuals using virtual servers
(VMs) that are all running on the same large physical servers in a cloud provider's data
center. The provider's software manages and isolates each customer's VM and data.
4. Rapid Elasticity:
• Resources can be quickly scaled up or down automatically to meet
fluctuating demand. It feels infinite to the user.
Example: An e-commerce website hosted on the cloud automatically
spinning up dozens of extra servers to handle a surge in traffic during a
Black Friday sale, and then shutting them down afterward to save costs.
5. Measured Service:
• Resource usage is monitored, measured, and reported transparently. You
pay based on your consumption (like electricity or water bills).
Example: Receiving a monthly bill from your cloud provider that details
exactly how many hours your servers ran, how much data you stored, how
much network bandwidth you used, etc.
Characteristics lead to Benefits:
These characteristics collectively provide significant benefits:
• Cost Savings: Pay-as-you-go reduces upfront investment (no need to buy lots of
hardware). Often cheaper due to economies of scale at the provider.
• Scalability & Elasticity: Easily handle fluctuating workloads. Avoid buying
hardware for peak capacity that sits idle most of the time.
• Reliability & Availability: Cloud providers build highly redundant infrastructure,
often more robust than a single company can afford for its own data center.
• Global Reach: Deploy applications closer to users around the world easily.
• Agility & Speed: Deploy new applications and services much faster. Experiment
easily.
• Focus on Core Business: Offload IT infrastructure management to the provider,
allowing your team to focus on building applications and innovating.
National Institute of Standards and Technology (NIST)
• NIST:- ”Cloud computing is a model for enabling ubiquitous, convenient,
on-demand network access to a shared pool of configurable computing
resources (e.g., networks, servers, storage, applications and services) that
can be rapidly provisioned and released with minimal management effort
or service provider interaction”
Cloud
• The word cloud (also phrased as "the cloud") is used as a
metaphor for "the Internet.
Cloud Computing
• Cloud Computing is a general term used to describe a new class of network
based computing that takes place over the Internet,
• basically, a step on from Utility Computing
• a collection/group of integrated and networked hardware, software and
Internet infrastructure (called a platform).
• Using the Internet for communication and transport provides hardware,
software and networking services to clients
• In addition, the platform provides on demand services, that are
always on, anywhere, anytime and any place.
• Pay for use and as needed, elastic scale up and down in capacity and
functionalities
Pros and Cons
Evolution of Cloud Computing
Type of cloud computing
Service Models: IaaS, PaaS, SaaS
These models define the level of service provided by the cloud
vendor – essentially, how much of the IT stack they manage
versus how much you manage.
1. Infrastructure as a service (Iaas)
2. Platform as a service (Pass)
3. Software as a service (Saas)
1. IaaS (Infrastructure as a Service):
• The provider gives you the basic building blocks: raw compute
(virtual servers), storage, and networking. You are responsible for
installing and managing the operating system, applications, and
data.
• What the provider manages: Networking, Storage, Servers,
Virtualization.
• What you manage: Operating System, Middleware, Runtime,
Data, Applications.
Example: Renting a virtual machine (VM) on AWS EC2 or Azure
Virtual Machines. You install the operating system (Windows, Linux),
database software, web server, and your application code on that VM.
• Infrastructure as a Service - IaaS
• The capability provided to the consumer is to provision
processing, storage, networks, and other fundamental computing
resources where the consumer is able to deploy and run arbitrary
software, which can include operating systems and applications.
• The consumer does not manage or control the underlying cloud
infrastructure but has control over operating systems, storage,
deployed applications, and possibly limited control of select
networking components .
• Examples :
• Amazon EC2
• OpenNebula
• Rack Space cloud
Infrastructure as a Service
• System architecture :
Infrastructure as a Service
• Enabling technique - Virtualization
• Virtualization is an abstraction of logical resources, away from
underlying physical resources.
• Virtualization technique shift OS onto hypervisor.
• Multiple OS share the physical hardware and provide different
services.
• Improve utilization, availability, security and convenience.
VM VM VM
1 2 3
Infrastructure as a Service
• Properties supported by virtualization technique :
• Manageability and Interoperability
• Availability and Reliability
• Scalability and Elasticity
Infrastructure as a Service
• Provide service –Resource Management Interface
• Several types of virtualized resource :
• Virtual Machine –As an IaaS provider, we should be able to provide the
basic virtual machine operations, such as creation, suspension, resumption
and termination, …etc.
• Virtual Storage – As an IaaS provider, we should be able to
provide the basic virtual storage operations,such as space allocation,
space release, data writing and data reading, …etc.
• Virtual Network – As an IaaS provider, we should be able to
provide the basic virtual network operations, such as IP address
allocation, domain name register, connection establishment and
bandwidth provision, …etc.
IaaS - Summary
• IaaS is the deployment platform that abstract the infrastructure.
• IaaS enabling technique
• Virtualization
• Server Virtualization
• Storage Virtualization
• Network Virtualization
• IaaS provided services
• Resource Management Interface
• System Monitoring Interface
2. PaaS (Platform as a Service):
• The provider gives you a platform for developing, running, and
managing applications. They manage the underlying infrastructure,
operating systems, and middleware. You just focus on writing and
deploying your code and managing your data.
• What the provider manages: Networking, Storage, Servers,
Virtualization, Operating System, Middleware, Runtime.
• What you manage: Data, Applications.
Example: Using Google App Engine, AWS Elastic Beanstalk, or Heroku
to deploy a web application. You upload your code, and the platform
automatically handles the servers, operating system, web server software,
etc.
Platform as a Service (PAAS)
• The capability provided to the consumer is to deploy onto the
cloud infrastructure consumer-created or acquired
applications created using programming languages and tools
supported by the provider.
• The consumer does not manage or control the underlying cloud
infrastructure including network, servers, operating systems, or
storage, but has control over the deployed applications and possibly
application hosting environment configurations.
Examples :
• Microsoft Windows Azure
• Google App Engine
• Hadoop
• [Link]
Platform as a Service
• System architecture :
Platform as a Service
• Enabling technique – Runtime Environment Design
• Runtime environment refers to collection of software services
available. Usually implemented by a collection of program libraries.
• Common properties in Runtime Environment :
• Manageability and Interoperability
• Performance and Optimization
• Availability and Reliability
• Scalability and Elasticity
Platform as a Service
• Provide service – Programming IDE
• Users make use of programming IDE to develop their service among
PaaS.
• This IDE should integrate the full functionalities which supported
from the underling runtime environment.
• This IDE should also provide some development tools, such as
profiler, debugger and testing environment.
• The programming APIs supported from runtime environment may be
various between different cloud providers, but there are still some
common operating functions.
• Computation, storage and communication resource operation
Platform as a Service
• Provide service – System Control Interface
• Policy-Based Control
• Typically described as a principle or rule to guide decisions and
achieve rational outcome(s)
• Make the decision according to some requirements
• Workflow Control
• Describe the flow of installation and configuration of resources
• Workflow processing daemon delivers speedy and efficient
construction and management of cloud resources
PaaS - Summary
• PaaS is the development platform that abstract the infrastructure,
OS, and middleware to drive developer productivity.
• PaaS enabling technique
• Runtime Environment
• PaaS provide services
• Programming IDE
• Programming APIs
• Development tools
• System Control Interface
• Policy based approach
• Workflow based approach
3. SaaS (Software as a Service):
• The provider gives you a complete, ready-to-use application over the
internet. You just use the software; the provider manages everything else
-infrastructure, platform, and the application itself.
• What the provider manages: Networking, Storage, Servers,
Virtualization, Operating System, Middleware, Runtime, Data,
Applications. (Everything)
• What you manage: Nothing technical, perhaps just user configuration
or data within the application.
Example: Using web-based email like Gmail, online productivity suites
like Google Workspace or Microsoft 365, or CRM systems like Salesforce.
You just log in and use the software.
Software as a Service - SaaS
• The capability provided to the consumer is to use the provider’s
applications running on acloud infrastructure.
• The applications are accessible from various client devices through a
thin client interface such as a web browser (e.g., web-based email).
• The consumer does not manage or control the underlying cloud
infrastructure including network, servers, operating systems, storage,
or even individual application capabilities, with the possible
exception of limited user-specific application configuration settings.
Examples :
• Google Apps (e.g., Gmail, Google Docs, Google sites, …etc)
• [Link]
• EyeOS
Software as a Service
Software as a Service
• Enabling Technique - Web Service
• Web 2.0 is the trend of using the full potential of the
web
• Viewing the Internet as a computing platform
• Running interactive applications through a web
browser
• Leveraging interconnectivity and mobility of
devices
• Enhanced effectiveness with greater
human participation
• Properties provided by Internet :
• Accessibility and Portability
Software as a Service
• Provide service – Web-based Applications
• Conventional applications should translate their access interface onto
web- based platform.
• Applications in different domains
• General Applications – Applications whichare designed for
general propose, such as office suit, multimedia and instant message,
…etc.
• Business Applications – Application which aredesigned for business
propose, such as ERP, CRM and market trading system, …etc.
• Scientific Applications – Application which are designed for
scientific propose, such as aerospace simulation and biochemistry
simulation, …etc.
• Government Applications – Applications which are designed
for government propose, such as national medical system and
public transportation system service, …etc.
Software as a Service
• Provide service – Web Portal
• Apart from the standard search engine feature, web portals
offer other services such as e-mail, news, stock prices, information,
databases and entertainment.
• Portals provide a way for enterprises to provide a consistent look and
feel with access control and procedures for multiple applications and
databases, which otherwise would have been different entities
altogether.
• Some examples :
• iGoogle
• MSNBC
• Netvibes
• Yahoo!
SaaS - Summary
• SaaS is the finished applications that you rent and
customize.
• SaaS enabling technique
• Web Service
• SaaS provide services
• Web-based Applications
• General applications
• Business applications
• Scientific applications
• Government applications
• Web Portal
Cloud computing Types contd.
• Based on Cloud location or Deployment model
• These types describe where the cloud infrastructure resides and
who manages it.
• Private Cloud
• Public Cloud
• Hybrid Cloud
• Community Cloud
Cloud Computing Deployment models
1. Public Cloud
•Cloud infrastructure is owned and operated by a third-party cloud
service provider (like AWS, Microsoft Azure, Google Cloud).
Resources are offered over the public internet and are shared
among many customers (multi-tenancy).
•Analogy:
Public transportation (buses, trains) or public parks. Available to
anyone, managed by a public entity/company, shared resources.
Example:
Hosting your company website on servers rented from AWS, using
Google Drive for file storage, or using Salesforce CRM.
• Public cloud definition
• The cloud infrastructure is made available to the general public or a
large industry group and is owned by an organization selling cloud
services.
• Also known as external cloud or multi-tenant cloud, this
model essentially represents a cloud environment that is
openly accessible.
• Basic characteristics :
• Homogeneous infrastructure
• Common policies
• Shared resources and multi-tenant
• Leased or rented infrastructure
2. Private Cloud
• Cloud infrastructure is provisioned for exclusive use by a
single organization. It can be managed by the organization
itself or by a third party, and can be located on-premises or
off-premises.
• The key is that the resources are not shared with other
organizations.
Analogy:
Owning your own car or having a private garden. Dedicated
resources for your exclusive use.
Example:
A large bank or government agency building and managing its
own data center with virtualization and automation software to
provide cloud-like services internally to its departments.
• Private cloud
• The cloud infrastructure is operated solely for an organization.
• Also referred to as internal cloud or on-premise cloud, a private cloud
intentionally limits access to its resources to service consumers that
belong to the same organization that owns the cloud.
• Basic characteristics :
• Heterogeneous infrastructure
• Customized and tailored policies
• Dedicated resources
• In-house infrastructure
• End-to-end control
Public vs. Private
Comparison :
Public Cloud Private Cloud
Infrastructure Homogeneous Heterogeneous
Policy Model Common defined Customized & Tailored
Resource Model Shared & Multi-tenant Dedicated
Cost Model Operational expenditure Capital expenditure
Economy Model Large economy of scale End-to-end control
Community Cloud
• The cloud infrastructure is shared by several organizations and supports
a specific community that has shared concerns (e.g., mission, security
requirements, policy, and compliance considerations).
Hybrid Cloud
• A combination of two or more distinct cloud infrastructures (private,
public, or community) that remain unique entities but are bound together by
standardized technology that enables data and application portability.
• Analogy:
Using your own car for daily commute (private) but taking a taxi or public
transport for trips to the airport or out of town (public). Combining different
modes of transport as needed.
Example:
A company uses its on-premises private cloud to store sensitive customer
data for regulatory reasons, while using the public cloud to run its customer-
facing website and process less sensitive data. Data and applications can
potentially move between the two environments.
• Hybrid cloud definition
• The cloud infrastructure is a composition of two or more
clouds (private, community, or public) that remain unique entities but
are bound together by standardized or proprietary technology that enables
data and application portability(e.g., cloud bursting for load
balancing between clouds).
Cloud Ecosystem
Components of Cloud computing
• Basic Components of Cloud Computing
• Clients
• Data center
• Distributed servers
Components of Cloud computing
Clients : End Users
• Mobile : Mobile includes PDA, Smartphones, or any other portable
devices which can access internet.
• Thin Clients : Now thin computers are that do not have internal hard
drives or very low internal configuration, but rather the server do all
the work and then display the information.
• Thick Client: Regular computers, Devices that has own
capabilities to do some computing.
Components of Cloud computing
Data Center
• Now datacentre is collection of server where application to which you
subscribe is housed,
• It could be a large room in basement, or room full of server which you
access through internet.
Components of Cloud computing
Distributed Severs
• Server don't have to be housed in same location
• often server are dispersed in geographically location but to you the cloud
subscriber, these server acts if they are humming right away next to each
other.
• This gives the service provider more flexibility in option and
security.
Role of Virtualization in Enabling the Cloud
• Virtualization is a foundational technology that makes cloud computing
possible, especially the Public Cloud and Private Cloud models.
• Virtualization is the technology that allows one physical piece of hardware
(like a server) to be shared among multiple users or applications by creating
multiple isolated "virtual" instances on it (like Virtual Machines).
• How it works: Special software (hypervisor) sits on the physical hardware
and allows it to run multiple operating systems and applications
simultaneously, each behaving as if it has dedicated resources (CPU,
memory, storage, network). A hypervisor Provides a uniform abstraction
of the underlying physical machine
• Virtualization is the enabling technology allowing the creation of an
intelligent abstraction layer which hides the complexity of underlying
hardware or software.
Analogy: A single large physical room (the server) is divided into multiple
smaller, separate office cubicles
or rooms (the virtual machines
or containers) using temporary
walls (virtualization software).
Each cubicle acts like a private
office, even though they share
the same floor and ceiling.
Example: A cloud provider has large, powerful physical servers. Using
virtualization software, they can create hundreds or thousands of smaller
Virtual Machines on each physical server. These VMs are then rented out to
different customers as IaaS. Virtualization allows the provider to maximize
the use of their physical hardware (Resource Pooling) and quickly create
new virtual servers when a customer requests them (On-Demand Self-
Service, Rapid Elasticity). It also provides isolation between different
customers sharing the same hardware.
• Without virtualization, cloud providers would need to dedicate a separate
physical server to every customer, or even every application, which would
be incredibly inefficient, expensive, and slow to provision – making the
core benefits of cloud computing impossible to deliver economically.
What Virtual Machines provide
(characteristics)
Hardware Independence
• VM sees the same hardware regardless of the host hardware
Isolation
• VM’s operating system is isolated from the host operating system
Encapsulation
• Entire VM encapsulated into a single file
Types of virtualization in Cloud
Hardware Virtualization:- With the help of Hypervisor one can divide processor, memory
and other hardware resources. VMM (Virtual Machine Manager) installed on the hardware
OS Virtualization:- Multiple guest OS can be run over a single host OS. VMM installed on Host
OS. Quicker than Server Virtualization
Server Virtualization:- One physical server divided into multiple servers. VMM installed on
the server system.
Storage Virtualization:- Multiple physical storage is grouped to act as single large storage. One
server sees multiple storages as one (due to virtualization) and storages see the server they are
attached to.
Network Virtualization:- Combine the available resources in a network by splitting up the
bandwidth into separate channels.
Software Virtualization:- Under the SaaS model instances of the same software installed are
provided to multiple users.
Cloud Computing Characteristics
Common Characteristics:
Massive Scale Resilient Computing
Homogeneity Geographic Distribution
Virtualization Service Orientation
Low Cost Software Advanced Security
Essential Characteristics:
On Demand Self-Service
Broad Network Access Rapid Elasticity
Resource Pooling Measured Service
Challenges of Cloud Computing
• Security and Privacy
• Data security and privacy has been always the challenge in cloud
computing.
• there may be some data or applications that your organization will
never feel comfortable letting out of sight.
• Lack of Standards
• There is no standard associated with cloud computing.
• The Open Grid Forum is developing an Open Cloud Computing
Interface to resolve this issue and the Open Cloud Consortium is
working on cloud computing standards and practices
Challenges of Cloud Computing
• Continuously Evolving
• User requirements are continuously evolving, as are the
requirements for interfaces, networking, and storage. So Cloud has to
grow accordingly to meet all the requirements for interfaces,
networking, storages etc.
• Integration with Existing Infrastructure:
• This is a difficult yet essential piece of maximizing the value of cloud
services.
• Vendor Transparency:
• “Trust me” is not what you want to hear from your service
provider.
Application Availability, Performance, Security
and Disaster
Application Availability
➢ A measure used to evaluate if an application is functioning properly and meets the business
requirements
➢ Cloud provides high availability with a high degree of performance.
➢ Available 24/7 with nodes in major parts of the world
➢ Determined based on:
▪ Application uptime/downtime
▪ Number of complete transactions
▪ Timeouts, errors, missing resources
➢ Uses different techniques to guarantee high availability:-
▪ Load balancer
▪ Concept of availability zones
▪ Health checks
Performance
Security
▪ Consists of a set of policies, controls, procedures that work together to
protect the cloud-based system
▪ Configured to protect cloud data and customer privacy under SLA
▪ CSP is responsible for the physical security of the server and provides
various measures to clients to implement on their end. like Firewall,
Virtual Private Cloud (VPC), Multi-Factor Authentication (MFA),
Access Control List (ACL), Identity Access Management (IAM),
Server and client-side Encryption
▪ Data backup
Disaster
▪ An unpredictable event that causes an interruption in services
▪ Cloud provide an effective and cheap Disaster recovery plan (DRP) facility
▪ If the current functioning server fails then it is the responsibility of CSP to
spin another server within a certain time frame and continue its operation.
CSP employs features like :
❑Data backup
❑Automation in server deployment and recovery
❑Rapid elasticity to minimize downtime
❑Availability zone to redirect traffic to other AZ in the region in case of a
disaster in one.