Introduction to Cloud Computing Basics
Introduction to Cloud Computing Basics
Computing
(Module 1)
Dr. Hemangi Goswami
Assistant Professor, School of Computer Engineering
Manipal Institute of Technology Bengaluru
Manipal Academy of Higher Education, Manipal, INDIA
E-mail: [Link]@[Link]
Outline
2
Cloud computing in a Nutshell
3
Cont.
•Cloud Computing as the Fifth Utility:
•Revolutionized the computing paradigm.
•Recognized as the fifth utility after water, electricity, gas, and telephony.
•Comparison with Cluster and Grid Computing:
•Unlike Cluster and Grid computing, Cloud is an amalgamation of Parallel and
Distributed computing.
•Tasks are broken down and shared among heterogeneous resources/processors.
•Enables concurrent scheduling of tasks.
•Cloud as a Milestone in Computational Advancements:
•Focuses on:
•Designing computing systems.
•Developing scalable applications.
4
•Provisioning existing resources on demand.
Core Principles of Cloud Computing
[Link] Provisioning:
•Automatically expands or contracts resource capacity based on real-time demand.
[Link]:
•Provides:
•Resource isolation.
•Emulation of hardware/software.
•Customization and security.
•Enables on-demand delivery of computing services.
•Economic and Service-Oriented Nature:
•Functions as a milestone in the global economy.
•Offers membership-based services, accessible anytime and anywhere.
•Pricing Model:
•Follows a "pay-per-use" strategy.
5
Roadmap of
Computing
Paradigm
6
Fig. 1: Computing paradigm evolution
Parallel
Computing
Type of computation in
which many calculations
or processes are carried
out simultaneously.
Divides a large problem
into smaller sub-
problems, solving them
concurrently using
multiple processing
units (such as CPUs,
GPUs, or a cluster of
computers), and
combining the results to
Fig. 2: Parallel Computing produce the final output.
[1]
7
8
Parallel Computing (contd.)
Features:
Concurrency: Multipletasks or processes are
executed at the same time.
Task Division: A problem is divided into smaller
independent or interdependent tasks.
Multiple Processing Units: Tasks are distributed
among different processors or cores.
Faster Computation: Parallelism reduces
execution time for large-scale computations.
9
Parallel Computing (contd.)
Benefits:
Improved Performance: Reduces time required for
complex computations.
Scalability: Can handle larger datasets by adding
more processing units.
Efficiency:Makes better use of available
resources, especially in multi-core and
distributed systems.
10
Cluster Computing
A cluster is a type of parallel or distributed computer
system, which consists of a collection of inter-
connected stand-alone computers working together
as a single integrated computing resource.
Cluster Components:
Basic building blocks of
clusters are broken down
into multiple categories:
Cluster Nodes
15
Distributed Computing
(contd.)
Features:
Multiple Nodes: Tasks are distributed across a
network of independent computers.
Decentralization: There is no single centralized
control; instead, the system relies on
cooperation among nodes.
Scalability: Systems can scale horizontally by
adding more nodes to handle increasing
workloads.
Fault Tolerance: The failure of one or more nodes 16
Distributed Computing
(contd.)
Benefits:
Resource Sharing: Efficient utilization of
resources, including processors, storage, and
network bandwidth.
Scalability: Accommodates large datasets and
computations by adding more nodes.
High Availability: Redundancy in nodes ensures
that the system remains operational even if
some nodes fail.
Reduced Latency: Processing tasks closer to 17
Distributed
Computing
vs.
Centralized
Computing
Early computing were
performed on a single
processor
Uni-processor
computing can be
called as centralized
computing.
Tightly coupled
(Centralized
Computing)
Loosely coupled
(Distributed Computing)
Cluster
Computing
vs.
Grid Computing
vs.
Cloud Computing
23
The Next Revolution in IT
24
Cloud Computing
26
Defining Clouds: There are many views for
what is cloud computing?
According to NIST (National Institute of Standards and Technology):
SLA = {negotiated and agreed QoS parameters + rewards + penalties for violation of
agreement....}
27
Desired Features of a Cloud (When
Should I say service is a Cloud?)
28
Cont.
Rapid elasticity and Scalability: These are the ability to
expand or scale-down and up the IT resources for the time
required and then release in order to meet the on-demand
requests. The resources can be scaled either horizontally or
vertically to optimize the effectiveness of the cloud datacenter
and avoid the consumers’ bottlenecks.
On-demand computing and Self-service: This
characteristic allows the users to access the resources of
Cloud on-demand to provision, monitor and manage without
service provider intervention.
Resource pooling: Cloud computing enables users to access
its services from a reservoir of commoditized resources (e.g.,
servers, storage, networks, applications, and services)
ubiquitously.
29
Cont.
Broad network access. All the cloud services are made
available to its consumers through a vast network and
heterogeneous resources. The most important feature of Cloud
computing is its ubiquity nature. That means consumers can
access services at any time and from anywhere through the
internet.
Metering (Pricing policy). All its services are offered based on
a pricing policy or metered way called “Pay-as-you-go” or “Pay-
per-use” subscription model. It is more like other utilities such as
water, electricity, telephony, gas, etc., where users are charged
based on their usage.
Dynamic provisioning. This concept is as analogous as that of
scalability. The cloud resources or infrastructure is provisioned
when there is a spike in demand and then de-provisioned. It is
like leasing the services or resources for the time required and
then released. 30
Elasticity vs Scalability
Elasticity in Cloud Computing
Definition:
Elasticity refers to the ability of a cloud system to automatically grow or
shrink computing resources (CPU, memory, storage, etc.) based on real-time
demand.
Key Idea: Automatic and real-time adjustment of resources.
Goal: Handle workload spikes efficiently and release resources when no longer
needed, optimizing cost and performance.
Real-life Example:
Electricity Usage in a House:
During the day, you might use more electricity (ACs, lights, appliances). At night, the
usage drops. You don’t buy a new power plant; the electricity supply adjusts
automatically to your needs—that’s elasticity.
E-commerce Website During Sale:
During events like a Diwali or Black Friday sale, the website receives a spike in user
traffic. Cloud infrastructure automatically scales up to handle the load, and then
scales down when traffic returns to normal.
31
Cont.
Scalability in Cloud Computing
Definition:
Scalability is the ability of a system to handle increased workloads by adding
more resources — either manually or automatically.
Key Idea: System can grow over time (vertically or horizontally) to meet future
demand.
Types:
Vertical Scaling (Scale-Up): Add more power (CPU, RAM) to an existing server.
Horizontal Scaling (Scale-Out): Add more servers to the system.
Real-life Example:
Hiring More Employees in a Growing Business:
As your company grows, you hire more employees to handle the increasing
workload — similar to horizontal scalability.
Upgrading to a Bigger Laptop:
If your current laptop is slow for your tasks, you buy one with a faster processor
and more RAM — this is vertical scalability. 32
Aspect Elasticity Scalability
34
Cont.
Bottom Layer: System Infrastructure
Cloud Resources: Physical hardware such as servers, disks, and networking
components.
Acts as the foundation for cloud services.
Managed by Core Middleware to enable virtualization and abstraction.
36
Cont.
User-level Middleware through PaaS:
Supports application developers with platforms for Web 2.0 and Distributed
Programming (e.g., workflows, scripting)
Cloud Programming Environment and Tools:
Provides APIs, frameworks, and development environments.
Developers can build and run their applications without managing underlying
infrastructure.
Examples: Google App Engine, Microsoft Azure PaaS, Aneka
38
Manjrasoft
Infrastructure/Hardware as a
Service (IaaS)
39
Cont.
Top Layer: Web-Based Management Interface
Interfaces: Web services, portals, REST APIs
Purpose: Provides access to cloud resources via user interfaces or
programmable endpoints.
Technology: Based on Web 2.0 for full-featured management consoles.
Users: Can be humans (admin portals) or programs (automated scripts).
Pricing / Billing:
Calculates costs based on resource usage.
Enables pay-per-use billing models for customers.
Monitoring:
Tracks VM execution and system performance.
Helps detect failures and performance bottlenecks.
41
Cont.
•
Reservation:
•Stores future and past VM execution schedules.
•Allows for advance booking of computing capacity.
•VM Image Repository:
•Contains pre-configured VM templates (e.g., LAMP stacks).
•Users can also upload custom VM images.
•VM Pool Management:
•Maintains the status and availability of all running VM instances.
•Supports load balancing and instance health checking.
•Provisioning:
•Interfaces with third-party IaaS or physical resources.
•Deploys and manages VMs on external infrastructures when needed.
Interaction Flow
Users or applications use web-based interfaces to interact with the cloud.
43
Cont.
Web-Based Interface
Technologies: Web Services, Portals, REST API.
Purpose: Provides users (developers/admins) access to the cloud platform.
Use Case: Enables application deployment, configuration, and monitoring through
browser-based dashboards or APIs.
Infrastructure Layer
Physical Infrastructure: Data centers, clusters, and bare-metal servers managed
internally or externally.
IaaS Providers:
Underlying virtualized infrastructure (e.g., Amazon EC2, Microsoft Azure IaaS).
PaaS platforms use APIs to deploy and manage workloads on IaaS layers. 44
Cont.
PaaS Core Middleware
This is the heart of the PaaS platform, supporting essential platform
services:
Application Management:
Core function of the middleware.
Automates deployment, scaling, and configuration of applications.
Includes provisioning of databases, load balancers, and services.
Runtime:
Provides the execution environment for applications.
Abstracts away infrastructure concerns like OS and VM configuration.
Resources Management:
Tracks, allocates, and monitors computing resources such as CPU, memory, and
I/O.
45
Ensures fair distribution among multiple applications.
Cont.
User Management:
Handles user roles, permissions, and access control.
46
Software as a service (SaaS)
SaaS is a software delivery model where applications are hosted centrally and delivered over the Internet.
•Access Model:
•Users access applications via web browsers—no need to install or maintain software locally.
•Access is typically granted via subscription or rental (recurring fee).
•Deployment:
•Applications are deployed from centralized datacenters.
•Supports delivery over Internet, Intranet, LAN, or VPN.
•Key Characteristics:
•Centrally managed applications
•One-to-many model (shared across multiple users)
•Multitenancy: Enables efficient resource utilization by serving many customers with a single instance.
•Configurable and often customizable based on user needs.
User Benefits:
No up-front costs for software or hardware.
Pay-as-you-go (PAYG) pricing.
Rapid implementation and ease of access.
Reduced total cost of ownership (TCO).
Automatic updates and maintenance by the provider.
47
Cont.
•Examples of SaaS Applications:
•CRM (e.g., [Link])
•ERP (e.g., NetSuite)
•Office Automation (e.g., Google Docs, Zoho Office)
•Social Networking (e.g., Facebook, LinkedIn)
•SaaS 2.0:
•Focused more on business objectives and robust infrastructure.
•Emphasizes service integration, custom component injection, and workflow design.
•Powered by Web 2.0 technologies, turning browsers into full-featured application environments.
48
Aspect SaaS 1.0 SaaS 2.0
Business outcomes and
Focus Basic application delivery
extensibility
Scalable, secure, cloud-
Infrastructure Basic hosting
native
Open APIs, flexible
Integration Limited or rigid
integrations
Custom components, logic
Customization One-size-fits-all
injection
Dynamic, visual workflow
Workflow Static
design
Web 2.0 (AJAX, JS
Tech Base Web 1.0 (HTML/CSS)
frameworks, REST)
49
Responsibilities of each stake holder
50
Cont.
51
Cloud Deployment Models
52
Model Hosted By Used By Key Benefit
Cost-effective,
Public Cloud 3rd Party General Public
scalable
Secure,
Private Cloud Organization Internal Use
controlled
Flexible,
Internal +
Hybrid Cloud Combination scalable +
Public
secure
53
Cont.
54
Public Cloud
Definition: Cloud infrastructure and services are owned and operated by
third-party providers and shared among multiple users (tenants) over the
internet.
Examples: Amazon Web Services (AWS), Microsoft Azure, Google Cloud
Platform (GCP)
Pros:
Low cost (pay-as-you-go)
High scalability and elasticity
No maintenance (provider handles infrastructure)
Easy setup and access
Cons:
Less control over data and infrastructure
Data security and compliance concerns
Shared resources can pose performance risks
55
Private Cloud
Definition: Cloud infrastructure is operated exclusively for a single
organization—either on-premises or hosted by a third party.
Examples: VMware vSphere, OpenStack private deployments
Pros:
Greater control and customization
Enhanced security and data privacy
Better compliance with regulatory standards
Cons:
High cost of setup and maintenance
Limited scalability compared to public cloud
Requires in-house expertise
56
Cont.
57
Hybrid Cloud
Definition: Combines public and private clouds, enabling data and
applications to move between them for better flexibility and optimization.
Examples: AWS Outposts, Azure Stack, Google Anthos
Pros:
Flexibility to run workloads in the best environment
Improved disaster recovery and business continuity
Cost-effective for variable workloads
Cons:
Complex to manage and integrate
Requires robust network connectivity
Potential security loopholes during data transfer
58
Cont.
59
Community Cloud
Definition: The infrastructure is shared by several organizations and
supports a specific community that has shared concerns (e.g., mission,
security requirements, policy, and compliance considerations). It may be
managed by the organizations or a third party and may exist on premise or
off premise.
Examples: Government agencies, healthcare research consortiums
Pros:
Shared infrastructure reduces costs
Collaboration among organizations
Tailored security and compliance
Cons:
Limited availability and customization
Potential for resource contention
Governance complexity
60
61
Cont.
62
Pros of Cloud Computing
How Cloud computing addressed the limitations of
Cluster computing and Grid Computing?
Fault
Tolerance: Built-in redundancy and failover
mechanisms ensure high reliability and availability.
69
Cloud Computing Platforms
70
Research
Challenges in
Cloud
Computing
71