0% found this document useful (0 votes)
4 views85 pages

Unit 1 - Introduction

The document provides an overview of cloud computing, detailing its architecture, benefits, and historical development. It covers key concepts such as service models (IaaS, PaaS, SaaS), deployment models (public, private, hybrid), and characteristics like scalability, accessibility, and security. Additionally, it discusses the evolution of cloud computing from client-server architecture to modern cloud services offered by major providers.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views85 pages

Unit 1 - Introduction

The document provides an overview of cloud computing, detailing its architecture, benefits, and historical development. It covers key concepts such as service models (IaaS, PaaS, SaaS), deployment models (public, private, hybrid), and characteristics like scalability, accessibility, and security. Additionally, it discusses the evolution of cloud computing from client-server architecture to modern cloud services offered by major providers.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Department of CSE

CS23633 CLOUD COMPUTING

UNIT 1 INTRODUCTION
Cloud Computing
• Cloud Computing is a technology that allows you to store and access data and
applications over the internet instead of using your computer’s hard drive or a
local server.
Cloud Computing Architecture

Cloud computing architecture refers to the components and sub-components


required for cloud computing.

These components typically refer to:

1. Front end ( Fat client, Thin client)

2. Back-end platforms ( Servers, Storage )

3. Cloud-based delivery and a network ( Internet, Intranet, Intercloud )


1. Front End (User Interaction Enhancement)

•Represents the user-facing layer of cloud computing.


•Enables interaction between end users and cloud services.
•Consists of Thin Clients and Fat Clients.
•Thin clients use web browsers and require minimal local resources.
•Provides lightweight, portable, and platform-independent access.
•Fat clients are installed applications with advanced functionalities.
•Delivers a rich and responsive user experience.
•Ensures ease of access, usability, and efficient service control.
2. Back-End Platforms (Cloud Computing Engine)

•Acts as the core infrastructure of cloud computing.


•Comprises high-performance servers and virtual machines.
•Handles application logic and service execution.
•Provides large-scale data storage and processing capabilities.
•Manages resource allocation and workload distribution.
•Supports scalability through virtualization technologies.
•Ensures data reliability, security, and fault tolerance.
•Enables efficient management of cloud services.
3. Cloud-Based Delivery and Network

•Facilitates on-demand delivery of cloud resources.


•Uses Internet for global accessibility of services.
•Uses Intranet for secure internal organizational communication.
•Uses Intercloud to enable interoperability across cloud providers.
•Supports seamless data transfer and remote access.
•Ensures high availability and low latency connectivity.
•Plays a critical role in cloud service performance.
•Enables flexible and efficient cloud resource utilization.
Why Cloud Computing?
Scalability
Cloud computing enables organizations to easily scale computing resources up or down
based on demand. This flexibility is particularly beneficial for applications with
fluctuating workloads or seasonal usage, as it eliminates the need to invest in and
maintain excess infrastructure.
Accessibility
Cloud services can be accessed from anywhere through an internet connection. This
supports remote work and collaboration by allowing users to access shared applications,
data, and resources regardless of their physical location.
Why Cloud Computing?

Security
Cloud computing offers strong security mechanisms to safeguard data and
applications. These include encryption, authentication, access control, and regular
security updates, which help protect against unauthorized access and data breaches.
Cost-Effectiveness
Cloud services operate on a pay-as-you-use or pay-per-user pricing model. This
reduces capital expenditure on hardware and maintenance, allowing organizations
to optimize costs by paying only for the resources they consume.
History of Cloud Computing
History of Cloud Computing

•Early computing relied on Client–Server Architecture, where all data and control
resided on the server.
•Users had to connect to a central server to access data and services.
•Client–server computing had limitations such as high dependency on a single server
and limited scalability.
•To overcome these issues, Distributed Computing emerged.
•In distributed computing, multiple computers are connected through a network.
History of Cloud Computing
•Resources such as processing power and storage can be shared among systems.
•Despite improvements, distributed systems faced challenges related to management,
scalability, and complexity.
•To address the limitations of distributed computing, Cloud Computing was introduced.
•Cloud computing provides on-demand access to computing resources over the internet.
•In 1961, John McCarthy proposed the idea that computing could be sold as a utility like
electricity or water.
•Initially, this concept was not widely accepted due to technological limitations and user
resistance.
History of Cloud Computing
•In 1999, [Link] became the first company to deliver enterprise applications
over the internet.
•This marked the beginning of modern cloud computing.
•In 2002, Amazon launched Amazon Web Services (AWS), offering storage and
computation services online.
•In 2006, Amazon introduced Elastic Compute Cloud (EC2) as a commercial service.
•In 2009, Google started offering cloud-based enterprise applications.
•In the same year, Microsoft launched Microsoft Azure.
•Other major providers such as IBM, Oracle, Alibaba, and HP also introduced cloud
services.
Basic Concepts and Terminology
Cloud computing delivers on-demand IT resources
(like storage, servers, software) over the internet,
defined by key concepts: Service
Models (SaaS, PaaS, IaaS, Serverless), Deployment
Models (Public, Private, Hybrid), and core
characteristics like On-Demand Self-Service, Broad
Network Access, Resource Pooling, Rapid
Elasticity, and Measured Service (Pay-as-you-go),
all managed remotely via a network of virtualized
servers instead of local hardware
Basic Concepts and Terminology

Core Concepts

• The "Cloud": A network of remote servers hosted on the internet, providing


scalable resources, storage, and applications.

• On-Demand Self-Service: Users can provision resources automatically, without


human intervention.

• Broad Network Access: Accessible from various devices (laptops, phones, etc.)
via standard internet protocols.
Basic Concepts and Terminology

Core Concepts

• Resource Pooling: Provider's resources are pooled to serve many


customers (multi-tenant), dynamically assigned as needed.

• Rapid Elasticity/Scalability: Resources can be quickly scaled up or down


to match demand.

• Measured Service: Usage is monitored, controlled, and reported, enabling


pay-per-use billing.
Basic Concepts and Terminology
Service Models (The "Stack")

• Infrastructure as a Service (IaaS): Offers fundamental computing resources (servers,


storage, networks). (e.g., AWS EC2, Azure VMs).

• Platform as a Service (PaaS): Provides a platform for developing, running, and


managing applications (OS, middleware, databases). (e.g., Heroku, Google App Engine).

• Software as a Service (SaaS): Delivers ready-to-use software over the internet (email,
CRM). (e.g., Gmail, Salesforce).

• Serverless Computing: Runs code without managing servers; the provider handles
infrastructure. (e.g., AWS Lambda, Azure Functions).
Basic Concepts and Terminology
Deployment Models (Where it Lives)

• Public Cloud: Resources owned and operated by a third-party provider, shared


among many users (e.g., AWS, Azure, GCP).

• Private Cloud: Resources dedicated to a single organization, offering more


control and security (on-premise or hosted).

• Hybrid Cloud: Combines public and private clouds, allowing data/apps to move
between them.
Basic Concepts and Terminology
Key Terminology

• Virtual Machine (VM): A virtualized environment (OS, CPU, memory) running on


physical hardware (host).

• Cloud Provider: A company offering cloud services (e.g., Amazon, Microsoft, Google).

• Cloud Migration: Moving data/apps from on-premise to the cloud.

• Multi-Cloud: Using multiple public cloud services.

• Cloud Outage: A rare event where cloud services become temporarily unavailable.
Basic Concepts and Terminology
1. Virtual Desktop Infrastructure

• Virtual Desktop Infrastructure is a technology that takes the responsibility to host the
desktop operating system on a virtual machine. It is also popularly known as
Server-based computing.

2. Virtual Machine

• Virtual Machine, also known as VM, is the software that reproduces a computer that can
run an operating system or applications.

3. User Interface

• User Interface is the process of how a client and system communicate.


Basic Concepts and Terminology
4. Software Stack

• Basically, Software Stack is a set of applications that combine and work together to
achieve a common goal. The components work in a particular process in this framework.

5. SaaS

• SaaS stands for Software-as-a-Service, and it represents the software applications that a
vendor hosts, and it will sell on the basis of subscription to the users.

6. Service Level Agreement (SLA)

• It is the documented based agreement done between the customer and the Cloud Service
Provider. It will have contractual terms like availability, service level, and performance.
Basic Concepts and Terminology
7. Public Cloud

• Public Cloud is an infrastructure that a cloud vendor hosts and any user worldwide can access.

[Link] Cloud

• Private Cloud is the infrastructure system that specific users in the zone use. The organization
itself mainly hosts it. But sometimes, a third-party Cloud provider can also host it.

9. Personal Cloud

• It is the classic term for rebranding. In Cloud, the term “Personal Cloud” is a secondary method
to describe NAS devices. A NAS is a system that is connected to the network for clients’
dedicated data storage tasks.
Basic Concepts and Terminology
10. Pay-as-you-go

• In the following teams, the user will be charged depending on the consumption.

11. PaaS

• PaaS stands for Platform-as-a-Service. Here the cloud service provider will offer the required
environment for creating, managing, and deploying the applications with the Internet.

12. On-Premise

• The following term refers to infrastructure or stands for the software that runs on the user
premises.

13. Middleware

• It means the software that serves as a connection between applications and their components.
Basic Concepts and Terminology
14. Load Balancing

• Load Balancing is the equal distribution of workloads over the resources, such as
servers, to ensure that no server will fail.

15. Internal Cloud

• If an IT department of an organization offers the creation of a private cloud model,


then it is termed as Internal Cloud, and it is strictly used for in-house activities.

16. Infrastructure

• This term describes all IT Resources, both physical and virtual, that support an IT
Government.
Basic Concepts and Terminology
17. IaaS

• IaaS stands for Infrastructure-as-a-Service. It has a virtual environment that is offered to the users by
the cloud vendor.

18. External Cloud

• It is a popular Cloud Service where the bills are heavily charged, and thus it offers customization as per
the requirements.

19. Elasticity

• The cloud storage system’s capability to adapt to users fluctuating workload demands.

20. Google Cloud Platform

• It also is popularly known as GCP, and it is offered by tech Giant Google who is in the Cloud
Computing Market.
Basic Concepts and Terminology
21. Data Migration

• Shifting the data between various formats, servers, storage systems, or warehouses.
The following term is used chiefly for delivering the data off to the Cloud.

22. Consumption Model

• The cloud pricing model gives the user bills on how much service they utilize rather
than the block of time.

23. Cloud Provider

• An organization that offers access to use cloud computing services by paying the
fee. Example Azure, GCP, and AWS
Basic Concepts and Terminology
24. Cloud Computing

• It is the delivery of IT services on-demand on a shared network of computing resources.


Currently, the top 3 offerings are

• IaaS

• PaaS

• SaaS

25. Cloud Backup

• It describes backing up the data on a remote cloud server. The stored information can be
accessed from a network of interconnected resources that raises to form an introductory
cloud.
Basic Concepts and Terminology
26. Big Data

• Big Data holds a massive amount of structured and unstructured data that arises
from a wide range of sources.

27. BaaS

• BaaS stands for Backend-as-a-Service, and it offers tools and services for mobile
developers and Web developers to build their cloud backend for the applications.

28. Azure

• Azure is a cloud platform developed by Microsoft, and it is considered a competitor


for AWS.
Basic Concepts and Terminology
29. Application Programming Interface (API)

• It is popularly termed API, and it is a tool that permits the user to gain access
to the information or functionality from an offered service and incorporate it
into their applications.

30. AWS

• AWS stands for Amazon Web Services, and it is Amazon’s cloud computing
platform. It offers more than three dozen cloud services to users. AWS is the
most popular, and number one ranked cloud service provider.
Characteristics of Cloud Computing
On-demand self-services: The Cloud computing services does not require any human
administrators, user themselves are able to provision, monitor and manage computing
resources as needed.
Broad network access: The Computing services are generally provided over standard
networks and heterogeneous devices.
Rapid elasticity: The Computing services should have IT resources that are able to scale out
and in quickly and on a need basis. Whenever the user require services it is provided to him
and it is scale out as soon as its requirement gets over.
Resource pooling: The IT resource (e.g., networks, servers, storage, applications, and
services) present are shared across multiple applications and occupant in an uncommitted
manner. Multiple clients are provided service from a same physical resource.
Characteristics of Cloud Computing
Measured service: The resource utilization is tracked for each application and occupant, it
will provide both the user and the resource provider with an account of what has been used.
This is done for various reasons like monitoring billing and effective use of resource.
Multi-tenancy: Cloud computing providers can support multiple tenants (users or
organizations) on a single set of shared resources.
Virtualization: Cloud computing providers use virtualization technology to abstract
underlying hardware resources and present them as logical resources to users.
Resilient computing: Cloud computing services are typically designed with redundancy and
fault tolerance in mind, which ensures high availability and reliability.
Characteristics of Cloud Computing
Flexible pricing models: Cloud providers offer a variety of pricing models, including
pay-per-use, subscription-based, and spot pricing, allowing users to choose the option that
best suits their needs.
Security: Cloud providers invest heavily in security measures to protect their users' data and
ensure the privacy of sensitive information.
Automation: Cloud computing services are often highly automated, allowing users to deploy
and manage resources with minimal manual intervention.
Sustainability: Cloud providers are increasingly focused on sustainable practices, such as
energy-efficient data centers and the use of renewable energy sources, to reduce their
environmental impact.
Cloud Deployment Model

A cloud deployment model defines where the cloud infrastructure is hosted and who
owns and manages it. Understanding the available deployment models is essential for
organizations, as each model offers different trade-offs in terms of governance,
scalability, security, flexibility, cost, and management, enabling businesses to choose the
most suitable option for their needs.
A cloud deployment model defines the type of cloud environment based on ownership,
access, and control, determining where servers are hosted, who manages them, and how
users interact with the infrastructure. The main cloud deployment models are Public
Cloud, Private Cloud, Hybrid Cloud, Community Cloud, and Multi-Cloud.
Public Cloud
Public Cloud

The public cloud provides systems and services over the internet to the general public.
The infrastructure is owned and managed by the cloud service provider, not the user,
making it easily accessible and cost-effective.
However, it may offer lower security compared to private models.
Services are typically provided free, on subscription, or on a pay-per-use basis.
Google App Engine is a common example.
Public Cloud

Advantages:
Public cloud requires minimal investment with no setup or maintenance costs, as
infrastructure is managed by the service provider.
It offers dynamic, on-demand scalability and eliminates the need for infrastructure
management.
Disadvantages:
Public cloud is less secure due to shared resources and provides limited customization to
meet specific user requirements.
Private Cloud
Private Cloud

A private cloud is a dedicated cloud environment used by a single organization, with no


resource sharing.
Also known as an internal cloud, it operates within organizational boundaries, is
secured by strong firewalls, and managed by the organization’s IT team, offering
greater control, security, and flexibility over cloud resources.
Private Cloud

A private cloud is a dedicated cloud environment used by a single organization, with no


resource sharing.
Also known as an internal cloud, it operates within organizational boundaries, is
secured by strong firewalls, and managed by the organization’s IT team, offering
greater control, security, and flexibility over cloud resources.
Advantages: Private cloud offers better control, high data security and privacy, supports
legacy systems, and allows extensive customization to meet organizational needs.
Disadvantages: It has limited scalability and is more costly due to dedicated
infrastructure and personalized services.
Hybrid Cloud
Hybrid Cloud
Hybrid cloud combines public and private clouds, allowing organizations to securely host
critical applications while leveraging the cost efficiency and scalability of the public
cloud.
It enables flexible movement of data and applications across multiple cloud environments
based on business needs.
Advantages: Hybrid cloud provides flexibility and control, reduces costs by using public
cloud scalability on demand, and enhances security through proper data separation.
Disadvantages: It is complex to manage due to integration of multiple clouds and may
experience latency because data transmission often occurs over the public cloud.
Community Cloud
Community Cloud
A community cloud enables shared access to systems and services for a group of
organizations with common goals or requirements.
Its infrastructure is jointly used and managed by participating organizations or a
third party to meet specific community or industry needs.
Advantages: Community cloud is cost-effective, offers better security, enables shared
resources, and supports collaboration and data sharing among organizations.
Disadvantages: It has limited scalability and provides restricted customization due to
shared infrastructure and common requirements.
Multi Cloud
Multi Cloud
Multi-cloud refers to using multiple public cloud providers simultaneously.
By distributing workloads across different clouds, it increases service availability
and reliability, as failures are unlikely to occur across multiple providers at the
same time.
Advantages: Multi-cloud allows organizations to choose the best services from
different providers, reduce latency by selecting nearby regions, and improve service
availability through provider redundancy.
Disadvantages: It increases system complexity and may introduce security challenges
due to managing multiple cloud environments.
Cloud Deployment Models Comparison
Cloud Computing Models
Cloud Computing means using the internet to store, manage, and process data
instead of using your own computer or local server.
The data is stored on remote servers, that are owned by companies called cloud
providers such as Amazon, Google, Microsoft).
These companies charge you based on how much you have used their services.
Types of Cloud Computing
▪ Software as a service (SaaS)
▪ Platform as a service (PaaS)
▪ Infrastructure as a service (IaaS)
▪ Anything/Everything as a service (XaaS)
▪ Function as a Service (FaaS)
Software-as-a-Service (SaaS)
Software-as-a-Service (SaaS) means using software over the internet instead of installing in
on your computer. You don't have to worry about downloading, updating, or maintaining
anything- the company that provides the software handles all of that.
Example:
Think of Google Docs. You don't need to install it. You just open your browser, log in, and
start using it. Google stores your work and keeps the software updated. You just use it when
you need it.
SaaS is usually offered on pay-as-you-go basis, and you can access it from any device with
internet. It's also called web-based-software or on-demand software because you can use it
anytime, anywhere, without setup.
Software-as-a-Service (SaaS)
Advantages of SaaS
Cost-effective with pay-as-you-use pricing
No installation required; faster deployment
Accessible from anywhere via the internet
Automatic updates handled by the provider
Scalable with on-demand features
Disadvantages of SaaS
Limited customization options
Requires reliable internet connectivity
Potential security risks
Limited control over data
Platform as a Service (Paas)
PaaS is a type of cloud service that gives developers the tools they need to build and launch apps
online without setting up any hardware and software themselves.
With PaaS, everything runs on the provider's server and is accessed through a web browser. The
provider takes care of things like servers, storage, and operating systems. Developers just focus on
writing and managing the app.
Example:
Imagine you're planning a school's annual day event. You have two options.
Build the Venue yourself (buy land, set up a stage, arrange lighting, etc.).
Or rent a ready-to-use venue and just focus on the actual event.
PaaS is like renting the venue- it saves time, efforts, and setup costs, so you can completely focus on
what matters: building your app.
You don't control the back-end (like servers), but you do control the app you create and how it
Platform as a Service (Paas)
Advantages of PaaS
Easy and convenient access via web browser
Cost-effective, pay-per-use model
Supports full application lifecycle management
Improves development efficiency with reduced complexity
Disadvantages of PaaS
Limited control over underlying infrastructure
Dependence on the service provider
Restricted flexibility for certain workloads
Infrastructure as a Service (Iaas)
Infrastructure as a service (IaaS) is a cloud service where companies rent IT resources like servers,
storage, and networks instead of buying and managing them.
It's like outsourcing your computer hardware. The cloud provider gives you the basic building blocks
(like virtual machines, storage, and internet access), and you use them to run your apps and services.
You pay based on how much you use - by the hour, week, or month. The way, you don't need to spend
a lot of money on buying hardware.
Example:
Imagine you want to start a website. Instead of buying you own server, you rent on a cloud provider's
server. You use their storage and networking, but you control what runs on it-like your website or app.
That's IaaS, You get the flexibility and power of your own setup, without the cost and trouble of
maintaining hardware.
Infrastructure as a Service (Iaas)
Advantages of IaaS
Cost-effective with pay-as-you-use pricing
Cheaper website hosting compared to traditional methods
Improved security from cloud providers
No infrastructure maintenance required
Disadvantages of IaaS
Limited control over underlying infrastructure
Users are responsible for data and application security
Limited availability in some regions due to regulations
Anything as a Service (Iaas)
It is also known as Everything as a Service.
Most of the cloud service providers nowadays offer anything as a service that is a
compilation of all of the above services including some additional services.
Advantages:
Scalability: Easily scaled up or down as needed.
Flexibility: Offers a wide range of customizable services (storage, databases,
networking, software).
Cost-effectiveness: Pay only for what is used; cheaper than on-premises solutions.
Disadvantages:
Dependence on provider: Service reliability depends on the provider.
Limited flexibility: May not support all workloads or applications.
Anything as a Service (Iaas)
Disadvantages:
Dependence on provider: Service reliability depends on the provider.
Limited flexibility: May not support all workloads or applications.
Limited integration: May not integrate smoothly with existing systems.
Function as a Service (Iaas)
FaaS is a cloud service that lets you run small pieces of code - called functions- without
managing any servers. You just write your code, upload it, and it runs only when
triggered by an event, like a button click or a file upload.
FaaS is event-driven, meaning the code runs only when something specific happens.
You don't need to keep a sever running in the background - it starts automatically when
needed and stops when the job is done. That's why it is also called serverless (even
though servers are still used, they' re managed entirely by the provider).
Example:
Imagine an online photo app that resizes images whenever a user uploads a photo. With
FaaS, you write a small functions to resize the image. The Function only runs when a
photo is uploaded- and you only pay for the execution.
Function as a Service (Iaas)
Advantages:
Highly Scalable: Auto-scaling based on demand.
Cost-Effective: Pay only for executed events.
Code Simplification: Upload entire app or write independent functions.
Minimal Maintenance: No need to manage servers.
Language Flexibility: Functions can be written in any language.
Disadvantages:
Cold Start Latency: Initial requests may be slow.
Limited Control: Less control over infrastructure and environment.
Security Responsibility: Users must secure their own data and apps.
Limited Scalability: May struggle with very high traffic.
Comparison of Iaas, Paas & SaaS
Comparison of Iaas, Paas & SaaS
When to use Iaas?
What it is: Provides virtualized computing resources (servers, storage,
networking) over the internet.
•Examples: AWS EC2, Microsoft Azure, Google Compute Engine.
When to use:
•You need full control over infrastructure.
•Hosting custom applications or operating systems.
•Running legacy applications that require specific environments.
•Key Point: You manage OS, applications, and middleware; provider manages
hardware.
When to use PaaS ?

What it is: Provides a platform to develop, run, and manage applications without
managing infrastructure.
•Examples: Google App Engine, Microsoft Azure App Service, Heroku.
When to use:
•You want to focus on application development.
•Need pre-configured development environments and tools.
•Rapid development and deployment of web/mobile apps.
•Key Point: You manage apps and data; provider manages OS, runtime, and
infrastructure.
When to use SaaS ?

What it is: Delivers software applications over the internet on a subscription basis.
•Examples: Google Workspace, Microsoft 365, Salesforce.
When to use:
•You need ready-to-use applications without setup.
•Minimal IT management or maintenance is desired.
•Access software from anywhere on any device.
•Key Point: Provider manages everything; users just use the software.
Comparison based on features

Feature IaaS PaaS SaaS


Control High (OS, apps, data) Medium (apps, data) Low (just use app)
User manages apps;
User manages OS and Provider manages
Management provider handles
apps everything
platform
Custom apps, legacy App development and Ready-to-use
Use Case
systems deployment software
AWS EC2, Azure Heroku, Google App Google Workspace,
Examples
VM Engine Salesforce

You might also like