Unit-1
Introduction: Cloud Computing at a Glance
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.
In cloud computing, you can store different types of data such as files, images, videos, and documents on
remote servers, and access them anytime from any device connected to the internet.
Infrastructure: Cloud computing depends on remote network servers hosted on the Internet to
store, manage, and process data.
On-Demand Access: Users can access cloud services and resources on demand, scaling up or
down without having to invest in physical hardware.
Types of Services: Cloud computing offers various benefits such as cost saving, scalability,
reliability, and accessibility.
Historical Developments in Cloud Computing :
1960s–1990s:
Concept of network computing (J.C.R. Licklider).
IBM virtual machines, client-server computing.
Rise of SaaS (Salesforce, 1999).
2000s:
Amazon Web Services (2002), EC2 (2006) → IaaS.
Google App Engine (2008) → PaaS.
Microsoft Azure (2010).
2010s:
Cloud adoption grows rapidly.
Apple iCloud (2011).
Containers (Docker, Kubernetes), DevOps, multi-cloud.
2020s–Present:
Serverless, edge, AI + IoT integration.
Hybrid and multi-cloud strategies.
Leaders: AWS, Azure, Google Cloud.
Building Cloud Computing Environments:
A cloud computing environment is created by combining hardware, software, networking, and
virtualization technologies to deliver computing resources as services.
Components in Building a Cloud Environment
1. Infrastructure Setup
Servers (powerful physical machines in data centers).
Storage systems (SAN, NAS, distributed storage).
Networking (routers, switches, firewalls for connectivity).
2. Virtualization Layer
Hypervisors (VMware, Hyper-V, KVM) create virtual machines.
Enables multiple users to share the same physical resources.
3. Cloud Service Models
IaaS – Virtual machines, storage, networking (e.g., AWS EC2).
PaaS – Development platforms and tools (e.g., Google App Engine).
SaaS – Applications delivered over the internet (e.g., Gmail, Salesforce).
4. Management & Orchestration
Tools to monitor, automate, and scale resources (e.g., Kubernetes, OpenStack).
Handles provisioning, billing, and security.
5. Security & Compliance
Identity management, encryption, firewalls.
Compliance with standards (GDPR, HIPAA, ISO).
6. User Access (Front-End)
Cloud is accessed through web browsers, APIs, or mobile apps.
Provides a simple interface for complex back-end infrastructure.
Computing Platforms and Technologies:
A computing platform is the environment in which applications run. In cloud computing, it includes
hardware, software, and tools that support delivering services over the internet.
1. Types of Computing Platforms
Hardware Platforms: Physical servers, storage devices, and networking systems in data
centers.
Virtual Platforms: Virtual machines (VMware, Hyper-V, KVM), containers (Docker,
Kubernetes).
Cloud Platforms: AWS, Microsoft Azure, Google Cloud, IBM Cloud – providing IaaS, PaaS,
SaaS.
Mobile & Web Platforms: Android, iOS, browsers for accessing cloud services.
2. Technologies in Cloud Computing
Virtualization – Enables multiple VMs on a single server.
Containerization – Lightweight, portable environments (e.g., Docker, Kubernetes).
Serverless Computing – Runs code without managing servers (e.g., AWS Lambda).
Big Data Technologies – Hadoop, Spark for large-scale data processing.
Artificial Intelligence & Machine Learning – Cloud-based AI/ML tools (e.g., Google AI, Azure
ML).
Edge & Fog Computing – Processing closer to data sources (IoT devices).
Networking & APIs – REST APIs, SDN for connectivity and integration.
Virtualization in Cloud Computing and Types
Virtualization is a way to use one computer as if it were many. Before virtualization, most computers were
only doing one job at a time, and a lot of their power was wasted. Virtualization lets you run several virtual
computers on one real computer, so you can use its full power and do more tasks at once.
Cloud providers use virtualization to split one big server into many smaller virtual ones, so businesses can
use just what they need, no extra hardware, no extra cost.
Working of Virtualization
Virtualizations uses special software known as hypervisor, to create many virtual computers (cloud
instances) on one physical computer. The Virtual Machines behave like actual computers but use the same
physical machine.
Virtual Machines (Cloud Instances)
After installing virtualization software, you can create one or more virtual machines on your
computer.
Virtual machines (VMs) behave like regular applications on your system.
The real physical computer is called the Host, while the virtual machines are called Guests.
A single host can run multiple guest virtual machines.
Each guest can have its own operating system, which may be the same or different from the host
OS.
Every virtual machine functions like a standalone computer, with its own settings, programs, and
configuration.
VMs access system resources such as CPU, RAM, and storage, but they work as if they are using
their own hardware.
Hypervisors
A hypervisor is the software that gets virtualization to work. It serves as an intermediary between
the physical computer and the virtual machines. The hypervisor controls the virtual machines'
use of the physical resources (such as the CPU and memory) of the host computer.
There exist two categories of hypervisors:
Type 1 Hypervisor (Bare-Metal Hypervisor):
The hypervisor is installed directly onto the computer hardware, without an operating system sitting
in between.
It is highly efficient as it has a direct access to the resources of the computer.
Type 2 Hypervisor:
It is run over an installed operating system (such as Windows or macOS).
It's employed when you need to execute more than one operating system on one machine.
Compare Type-1 and Type-2 hypervisors with examples.
Type-1 Hypervisor Type-2 Hypervisor
A hypervisor that runs directly on A hypervisor that runs on top of a
physical hardware (bare-metal). host operating system.
Hardware → Hypervisor → Guest Hardware → Host OS →
OS Hypervisor → Guest OS
High performance, low latency Lower performance due to host OS
(direct access to hardware). overhead.
Enterprise environments, data Personal use, testing, and
centers, cloud servers. development
More secure; smaller attack Less secure due to dependency on
surface since no host OS. host OS.
Example: VMware ESXi Example: VMware Workstation
- Microsoft Hyper-V (bare-metal -OracleVirtualBox
version) - Parallels Desktop
- Xen
Types of Virtualization:
1. Application Virtualization
2. Network Virtualization
3. Desktop Virtualization
4. Storage Virtualization
5. Server Virtualization
6. Data virtualization
Characteristics of Virtualized Environments:
1. Isolation– Each virtual machine (VM) runs independently, so failure in one VM does not affect others.
2. Encapsulation– A VM is stored as a single file, making it portable and easy to back up or move.
3. Hardware Independence – Virtual machines are independent of the underlying hardware; they can run
on any physical server with a hypervisor.
4. Resource Sharing – Multiple VMs share the same physical resources (CPU, memory, storage)
efficiently.
5. Flexibility & Scalability– Resources can be easily allocated, resized, or migrated between systems.
6. Centralized Management – Administrators can manage multiple VMs from a single interface.
Pros of Virtualization
1. Cost Efficiency – Reduces need for physical hardware.
2. Resource Utilization – Maximizes use of CPU, memory, and storage.
3. Flexibility & Scalability – Easily create, resize, or delete virtual machines.
4. Isolation – Each VM runs independently; issues in one don’t affect others.
5. Disaster Recovery – Quick backup and migration of VMs.
6. Testing & Development – Safe environment for software testing.
Cons of Virtualization
1. Performance Overhead – VMs may be slower than physical machines.
2. Complex Management – Requires skilled admins and monitoring tools.
3. Security Risks – Vulnerabilities in hypervisors can affect all VMs.
4. High Initial Setup Cost – Investment in servers and virtualization software.
5. Licensing Issues – Extra costs for virtualized environments.
6. Single Point of Failure – If host server crashes, all VMs may go down.
Technology Examples of Virtualization:
1. VMware vSphere/ESXi – Industry-leading virtualization platform.
2. Microsoft Hyper-V – Windows-based hypervisor.
3. Oracle VM VirtualBox – Open-source desktop virtualization.
4. KVM (Kernel-based Virtual Machine) – Linux-based virtualization.
5. Citrix XenServer – Enterprise server virtualization.
6. Red Hat Virtualization (RHV) – Open-source virtualization for enterprises.
UNIT-2
Cloud Computing Architecture:
Architecture of cloud computing is the combination of both SOA (Service Oriented
Architecture) and EDA (Event Driven Architecture). Client infrastructure, application, service,
runtime cloud, storage, infrastructure, management and security all these are the components
of cloud computing architecture.
The cloud architecture is divided into 2 parts:
1. Frontend
2. Backend
1. Frontend
Frontend of the cloud architecture refers to the client side of cloud computing system. Means it contains all
the user interfaces and applications which are used by the client to access the cloud computing
services/resources. For example, use of a web browser to access the cloud platform.
2. Backend
Backend refers to the cloud itself which is used by the service provider. It contains the resources as well as
manages the resources and provides security mechanisms. Along with this, it includes huge storage, virtual
applications, virtual machines, traffic control mechanisms, deployment models, etc.
Components of Cloud Computing Architecture
Following are the components of Cloud Computing Architecture
1. Client Infrastructure: Client Infrastructure is a part of the frontend component. It contains the
applications and user interfaces which are required to access the cloud platform. In other words, it
provides a GUI( Graphical User Interface ) to interact with the cloud.
2. Application : Application is a part of backend component that refers to a software or platform to
which client accesses. Means it provides the service in backend as per the client requirement.
3. Service: Service in backend refers to the major three types of cloud based services
like SaaS, PaaS and IaaS. Also manages which type of service the user accesses.
4. Runtime Cloud: Runtime cloud in backend provides the execution and Runtime
platform/environment to the Virtual machine.
5. Storage: Storage in backend provides flexible and scalable storage service and management of
stored data.
6. Infrastructure: Cloud Infrastructure in backend refers to the hardware and software components
of cloud like it includes servers, storage, network devices, virtualization software etc.
7. Management: Management in backend refers to management of backend components like
application, service, runtime cloud, storage, infrastructure, and other security mechanisms etc.
8. Security: Security in backend refers to implementation of different security mechanisms in the
backend for secure cloud resources, systems, files, and infrastructure to end-users.
9. Internet: Internet connection acts as the medium or a bridge between frontend and backend and
establishes the interaction and communication between frontend and backend.
10. Database: Database in backend refers to provide database for storing structured data, such as
SQL and NOSQL databases. Example of Databases services include Amazon RDS, Microsoft
Azure SQL database and Google CLoud SQL.
11. Networking: Networking in backend services that provide networking infrastructure for application
in the cloud, such as load balancing, DNS and virtual private networks.
12. Analytics: Analytics in backend service that provides analytics capabilities for data in the cloud,
such as warehousing, business intelligence and machine learning.
Cloud Reference Model:
The Cloud Reference Model is a conceptual framework that explains how cloud computing is structured.
It describes layers (like a stack) showing how cloud services are built and delivered to users.
Layers of Cloud Reference Model:
1. Physical Layer
o Servers, storage devices, and networking hardware in data centers.
2. Virtualization Layer
o Hypervisors, containers → abstract hardware into virtual resources.
3. Cloud Service Layer
o IaaS (Infrastructure as a Service) – Virtual machines, storage, networks.
o PaaS (Platform as a Service) – Development platforms, databases.
o SaaS (Software as a Service) – Applications delivered over the web.
4. Management & Orchestration Layer
o Tools for monitoring, automation, scaling, billing, and security.
o Examples: Kubernetes, OpenStack.
5. Access Layer (Front-End)
o Interfaces (web browsers, APIs, mobile apps) that users interact with.