Cloud Computing Notes Prof.
Sekhar Anasani
Faculty of Computer Applications
Cloud Computing Notes Prof. Sekhar Anasani
Cloud Computing
UNIT-1 to 5
II Semester MCA
Prepared By
Prof. Sekhar Anasani
Head, Faculty of Computer Applications
Cloud Computing
Preface:
The world is rapidly shifting towards cloud computing. From personal photo storage to enterprise-level data analytics, the
cloud has become an integral part of our digital lives. This book provides a comprehensive overview of cloud computing,
from its historical roots to its cutting-edge advancements. We will explore its architecture, deployment models, security
considerations, and practical applications through case studies. This book aims to equip readers with the knowledge and
skills necessary to understand, utilize, and even build upon the future of cloud technology.
Target Audience:
This book is designed for a broad audience, including:
Cloud Computing Notes Prof. Sekhar Anasani
Students pursuing degrees in computer science, information technology, and related fields.
IT professionals seeking to expand their knowledge of cloud computing.
Business leaders and entrepreneurs interested in leveraging cloud solutions.
Anyone curious about the potential and impact of cloud technology.
Table of Contents:
Unit 1: Introduction to Cloud Computing
1.1 Cloud Computing at a Glance
o Definition and characteristics of cloud computing
o Key advantages and disadvantages
1.2 Historical Developments
o Tracing the evolution of computing: Mainframes, client-server architecture, and the rise of the internet
o The development of virtualization technologies
o Key milestones in cloud computing history
1.3 Building Cloud Computing Environments
o Understanding the underlying infrastructure requirements
o Essential components: Servers, networking, and storage
o Orchestration and management layers
1.4 Computing Platforms and Technologies
o An overview of popular cloud platforms (e.g., AWS, Azure, GCP)
o Key technologies that enable cloud computing: APIs, web services, and distributed systems
1.5 Virtualization
o What is virtualization?
o Types of virtualization: Hardware, software, and containerization
1.6 Characteristics of Virtualized Environments
Cloud Computing Notes Prof. Sekhar Anasani
o Resource pooling and dynamic allocation
o Isolation and security
o Scalability and elasticity
1.7 Taxonomy of Virtualization
o Hardware Virtualization(Full and Para Virtualization)
o OS Virtualization(Containerization)
o Application Virtualization
1.8 Virtualization and Cloud Computing
o The relationship between virtualization and cloud computing
o Virtualization as the foundation for cloud infrastructure
1.9 Pros and Cons of Virtualization
o Reduced costs and increased efficiency
o Improved resource utilization
o Potential security risks and performance overhead
Unit 2: Cloud Architecture and Models
2.1 Introduction to Cloud Architecture
o Defining cloud architecture and its significance
o Key principles of sound cloud architecture
2.2 Cloud Reference Model and Architecture
o Understanding the NIST Cloud Computing Reference Architecture
o Components of a cloud architecture: Front end, back end, management plane
2.3 Types of Clouds
o Exploring various cloud deployment models
o Infrastructure as a Service (IaaS)
Cloud Computing Notes Prof. Sekhar Anasani
o Platform as a Service (PaaS)
o Software as a Service (SaaS)
2.4 Economics of the Cloud
o Cost benefits of cloud computing
o Pay-as-you-go pricing models
o Total Cost of Ownership (TCO) analysis
2.5 Open Challenges
o Security and compliance concerns
o Vendor lock-in and interoperability issues
o Performance and reliability considerations
2.6 Cloud Application Platform
o Overview of Platform as a Service (PaaS)
o Application development and deployment frameworks
o Tools and services for managing cloud applications
2.7 Cloud Deployment Models: Public, Private, Community, and Hybrid Clouds
o Defining each deployment model and its characteristics
o Pros and cons of each model
o Use cases and examples of each model
2.8 Advantages of Cloud Computing
o Scalability and flexibility
o Cost savings and operational efficiency
o Increased agility and innovation
Unit 3: Cloud Solutions
3.1 Global Cloud Infrastructure
Cloud Computing Notes Prof. Sekhar Anasani
o Understanding the global distribution of cloud data centers
o Geographic regions and availability zones
o Content Delivery Networks (CDNs)
3.2 Storage in the Cloud
o Object storage
o Block storage
o File Storage
3.3 Compute Services
o Virtual machines
o Container services
o Functions as a Service (FaaS)
3.4 Database Services
o Relational databases
o NoSQL databases
o Data warehousing
3.5 Networking in the Cloud
o Virtual networks and subnets
o Load balancing
o Firewalls and security groups
3.6 Implementing Elasticity, High Availability, and Monitoring
o Auto-scaling and load balancing techniques
o Replication and redundancy strategies
o Monitoring tools and metrics for tracking performance
3.7 Building Microservices and Serverless Architectures
Cloud Computing Notes Prof. Sekhar Anasani
o Designing and deploying microservices in the cloud
o Understanding serverless computing and its benefits
o Utilizing FaaS platforms for event-driven applications
Unit 4: Cloud Security
4.1 Shared Responsibility Model in the Cloud
o Understanding the division of security responsibilities between the cloud provider and the customer
o Defining the boundaries of responsibility for different cloud services
4.2 Security Design Principles
o Least privilege
o Defense in depth
o Zero trust
4.3 Securing Access to Cloud Resources
o Identity and Access Management (IAM) policies
o Multi-factor authentication (MFA)
o Role-based access control (RBAC)
4.4 Securing Access to Infrastructure
o Virtual machine security
o Network security
o Container Security
4.5 Protecting Data
o Encryption at rest and in transit
o Data loss prevention (DLP)
o Data masking and anonymization
4.6 Logging and Monitoring
Cloud Computing Notes Prof. Sekhar Anasani
o Collecting and analyzing logs for security insights
o Implementing real-time monitoring and alerting
o Compliance and audit logging
Unit 5: Case Study: AWS Cloud Services
5.1 Networking and Content Delivery in AWS
o Amazon Virtual Private Cloud (VPC)
o Amazon Route 53
o Amazon CloudFront
5.2 Auto Scaling in AWS
o Configuring and managing auto scaling groups
o Scaling based on demand and performance metrics
5.3 Load Balancing in AWS
o Elastic Load Balancing (ELB)
o Application Load Balancer (ALB)
o Network Load Balancer (NLB)
5.4 Storage Services in AWS
o Amazon Simple Storage Service (S3)
o Amazon Elastic Block Storage (EBS)
o Amazon Elastic File System (EFS)
5.5 Database Services in AWS
o Amazon Relational Database Service (RDS)
o Amazon DynamoDB
o Amazon Aurora
Appendix:
Cloud Computing Notes Prof. Sekhar Anasani
Glossary of Cloud Computing Terms
Further Reading and Resources
Index
About the Author(s): Prof Sekhar Anasani
📘 Unit 1: Introduction to Cloud Computing
Chapter 1.1 – Cloud Computing at a Glance
1.1.1 What is Cloud Computing?
Cloud Computing is a modern computing paradigm that allows users to access and utilize computing resources
—such as servers, storage, databases, networking, software, and analytics—over the internet on a pay-as-you-
go basis. Rather than owning the infrastructure, users rent it from cloud providers like Amazon Web Services
(AWS), Microsoft Azure, and Google Cloud Platform (GCP).
Definition:
Cloud computing is the delivery of computing services over the internet ("the cloud") to offer faster innovation,
flexible resources, and economies of scale.
1.1.2 Characteristics of Cloud Computing
The key features that define cloud computing include:
On-Demand Self-Service: Users can provision resources like storage and compute power without
human intervention.
Broad Network Access: Services are accessible over the internet via standard devices (laptops,
smartphones, tablets).
Resource Pooling: Providers use multi-tenant models to serve multiple customers using shared
resources.
Cloud Computing Notes Prof. Sekhar Anasani
Rapid Elasticity: Resources can be scaled up or down automatically based on demand.
Measured Service: Usage is monitored and billed based on actual consumption.
1.1.3 Benefits of Cloud Computing
Cost Efficiency: Reduces the need for capital investment in hardware/software.
Scalability: Easily scale resources up or down.
Flexibility: Work from anywhere with internet access.
Security: Most providers offer advanced security features and compliance.
Disaster Recovery: Cloud-based backup and recovery solutions are faster and more cost-effective.
1.1.4 Real-World Examples
Use Case Cloud Service Example
Website Hosting AWS EC2 / Google App Engine
Data Backup Google Drive / Dropbox / AWS S3
Online Collaboration Microsoft 365 / Google Workspace
Streaming Services Netflix (uses AWS)
1.1.5 Why Cloud, Why Now?
The explosion in internet users, mobile devices, big data, and global connectivity has made it imperative for
businesses to move to cloud computing. Organizations now prefer operational expenditure (OPEX) over
capital expenditure (CAPEX), making cloud an ideal choice.
1.1.6 Evolution of Cloud Computing (Brief Overview)
1960s – Mainframes with remote terminals (early time-sharing)
Cloud Computing Notes Prof. Sekhar Anasani
1990s – Virtual Private Networks and early distributed systems
2000s – Emergence of Software as a Service (SaaS)
2006 – Amazon launches AWS; the cloud era begins
Present – Widespread adoption in all domains: AI, IoT, ML, DevOps
1.1.7 Review Questions
1. Define cloud computing in your own words.
2. List any four characteristics of cloud computing.
3. What are the benefits of using cloud services over traditional IT infrastructure?
4. Name any two companies that provide cloud services and mention their key offerings.
5. Explain the difference between CAPEX and OPEX in the context of cloud computing.
Chapter 1.2 – Historical Developments in Cloud Computing
1.2.1 Early Concepts: Time-Sharing Systems
The idea of cloud computing dates back to the 1960s, when John McCarthy predicted that "computation may
someday be organized as a public utility."
In those early days, mainframe computers were too expensive for individual use. Organizations used time-
sharing systems, allowing multiple users to access computing resources through terminals.
Key Idea: Early cloud-like concepts focused on shared computing power to optimize expensive resources.
1.2.2 Evolution of the Internet and Networking (1980s – 1990s)
In the 1980s and 1990s, the development of networking technologies and the World Wide Web laid
the groundwork for remote computing.
Cloud Computing Notes Prof. Sekhar Anasani
Organizations began using Virtual Private Networks (VPNs) and distributed computing systems,
paving the way for what we now know as cloud infrastructure.
1.2.3 Grid and Utility Computing (Late 1990s)
Grid Computing allowed multiple computers to work together to complete large tasks.
Utility Computing introduced a billing model similar to electricity—users paid based on usage.
These models emphasized resource pooling, scalability, and cost-efficiency, core ideas in cloud
computing.
1.2.4 SaaS Emergence and Web 2.0 (Early 2000s)
[Link] (launched in 1999) is considered the first company to deliver applications entirely over
the internet using a Software as a Service (SaaS) model.
The rise of Web 2.0 enabled dynamic web apps, social media, and collaborative platforms, which
increased the need for scalable infrastructure.
1.2.5 Major Milestone: Launch of Amazon Web Services (2006)
In 2006, Amazon introduced Amazon Web Services (AWS), offering compute (EC2) and storage (S3)
services on a pay-as-you-go basis.
This marked the official beginning of the modern public cloud era.
Soon after:
Google launched App Engine.
Microsoft introduced Azure.
IBM, Oracle, and others followed.
Cloud Computing Notes Prof. Sekhar Anasani
1.2.6 Cloud Maturity and Multi-Cloud Era (2010s – Present)
Cloud matured rapidly with the introduction of:
o Containers and Kubernetes
o Serverless computing
o Artificial Intelligence and Machine Learning in the cloud
o Multi-cloud and hybrid cloud strategies
Now, cloud is the backbone of digital transformation across industries: banking, education, e-
commerce, healthcare, etc.
1.2.7 Timeline Summary
Year Milestone
1960s Time-sharing, utility computing vision
1990s Grid computing, VPNs, early web apps
1999 Salesforce launches SaaS model
2006 Amazon launches AWS (EC2 & S3)
2010s Rise of Azure, Google Cloud, hybrid/multi-cloud
2020s AI/ML, serverless, edge computing, cloud-native apps
1.2.8 Review Questions
1. What is the significance of time-sharing systems in cloud history?
2. How did Web 2.0 impact the development of cloud services?
3. Explain the role of [Link] in cloud computing.
4. What major event happened in 2006 that transformed cloud computing?
5. List any two recent trends that are shaping the current cloud landscape.
Chapter 1.4 – Computing Platforms and Technologies
Cloud Computing Notes Prof. Sekhar Anasani
1.4.1 Introduction
Cloud computing platforms and technologies are the foundational elements that enable cloud services to
be delivered efficiently, securely, and at scale. These platforms abstract the complexity of hardware and
allow users to access computing resources on demand via the internet. They are categorized by service
models like IaaS, PaaS, and SaaS and powered by enabling technologies such as virtualization,
containerization, and orchestration.
1.4.2 Cloud Service Models
1. Infrastructure as a Service (IaaS)
o Provides virtualized computing resources over the internet.
o Users manage: OS, applications, storage, and networking.
o Examples: AWS EC2, Google Compute Engine, Microsoft Azure Virtual Machines.
o Use Case: Hosting web applications, creating virtual labs, storing big data.
2. Platform as a Service (PaaS)
o Offers a platform with tools to develop, test, and deploy applications.
o Developers focus on the app logic, while the provider manages infrastructure.
o Examples: Google App Engine, Azure App Service, AWS Elastic Beanstalk.
o Use Case: Web and mobile app development with integrated environments.
3. Software as a Service (SaaS)
o Fully managed applications delivered via web browsers.
o Users simply log in and use the application.
o Examples: Gmail, Salesforce, Microsoft 365, Dropbox.
o Use Case: Email, CRM, document editing, collaboration.
1.4.3 Key Enabling Technologies
Cloud Computing Notes Prof. Sekhar Anasani
1. Virtualization
o Abstracts physical hardware to run multiple virtual machines (VMs).
o Hypervisors like VMware ESXi, Microsoft Hyper-V, and KVM enable this.
o Improves resource utilization, scalability, and cost-efficiency.
2. Containerization
o Packages applications with all dependencies to run reliably in any environment.
o Containers are more lightweight than VMs and start faster.
o Tools: Docker (container engine), Kubernetes (orchestration).
o Use Case: Microservices, CI/CD pipelines, isolated testing environments.
3. Orchestration Tools
o Automate the deployment, scaling, and management of containerized apps.
o Kubernetes is the most popular tool for orchestrating container clusters.
4. Serverless Computing
o Also known as Function as a Service (FaaS).
o Developers write and upload code without managing servers.
o Code runs in response to events and scales automatically.
o Examples: AWS Lambda, Azure Functions, Google Cloud Functions.
5. Edge Computing
o Brings computation closer to the data source (e.g., IoT devices).
o Reduces latency and improves performance in applications like autonomous vehicles and smart
cities.
1.4.4 Cloud Platform Providers
1. Amazon Web Services (AWS)
o Largest cloud provider. Offers over 200 fully featured services.
o Popular services: EC2 (compute), S3 (storage), RDS (database), Lambda (serverless).
2. Microsoft Azure
o Strong integration with Microsoft software (Windows, SQL Server).
o Services: Azure VMs, App Services, Cosmos DB, Azure DevOps.
Cloud Computing Notes Prof. Sekhar Anasani
3. Google Cloud Platform (GCP)
o Strength in analytics, machine learning, and Kubernetes.
o Services: Compute Engine, BigQuery, Firebase, TensorFlow on Cloud.
1.4.5 Application Programming Interfaces (APIs) and SDKs
Cloud platforms provide APIs for every service, allowing developers to manage resources via code.
SDKs (Software Development Kits) are provided for different languages (Python, Java, [Link], etc.) to
integrate cloud functionalities in custom applications.
Example:
python
CopyEdit
# AWS SDK (boto3) to list S3 buckets
import boto3
s3 = [Link]('s3')
buckets = s3.list_buckets()
print([bucket['Name'] for bucket in buckets['Buckets']])
1.4.6 Cloud Monitoring and Management Tools
Monitoring Tools: CloudWatch (AWS), Azure Monitor, Google Stackdriver help track performance
and uptime.
Cost Management: Tools like AWS Cost Explorer, Azure Cost Management help monitor billing.
Security Tools: Identity & Access Management (IAM), encryption services, and audit logs protect
cloud assets.
Cloud Computing Notes Prof. Sekhar Anasani
1.4.7 Advantages of Using Cloud Technologies
Agility: Launch applications faster, experiment with new ideas, and adapt quickly.
Scalability: Automatically increase or decrease resources based on demand.
Availability: High availability and disaster recovery are built-in.
Security: Centralized policies, encryption, and compliance support.
Global Reach: Deploy services close to users worldwide.
1.4.8 Review Questions
1. What are the main differences between IaaS, PaaS, and SaaS?
2. How do virtualization and containerization support cloud computing?
3. What is serverless computing, and where is it useful?
4. Compare AWS, Azure, and GCP in terms of their key strengths.
5. List any three cloud monitoring or management tools and their functions.
Chapter 1.5 – Virtualization and Cloud Computing
1.5.1 What is Virtualization?
Virtualization is the process of creating a virtual (rather than physical) version of something—such as
an operating system (OS), a server, a storage device, or network resources. In cloud computing,
virtualization plays a critical role because it allows the efficient use of computing resources by
abstracting hardware and enabling multiple virtual systems to run on a single physical system.
👉 Core Idea: One physical machine → multiple virtual machines (VMs), each with its own OS and
applications.
Cloud Computing Notes Prof. Sekhar Anasani
1.5.2 Types of Virtualization
Type Description
Multiple servers run on a single physical machine. Reduces
Server Virtualization
hardware costs.
Combines multiple physical storage devices into a single logical
Storage Virtualization
unit.
Network Virtualization Combines hardware and software to create a virtual network.
Desktop Virtualization Access your desktop environment from any device (e.g., VDI).
Application
Apps run without being installed on the local machine (e.g., Citrix).
Virtualization
OS Virtualization Runs multiple OS environments on one machine (e.g., Docker).
1.5.3 Hypervisors – The Backbone of Virtualization
A hypervisor is software that creates and manages virtual machines. It enables multiple VMs to share a
single physical host's CPU, memory, and storage.
🖥 Types of Hypervisors:
1. Type 1 (Bare Metal)
o Installed directly on hardware.
o Examples: VMware ESXi, Microsoft Hyper-V, Xen, KVM.
o High performance, used in data centers.
2. Type 2 (Hosted)
o Runs on top of an operating system.
o Examples: VMware Workstation, Oracle VirtualBox.
o Ideal for development/testing on desktops.
1.5.4 Virtualization vs. Cloud Computing
Cloud Computing Notes Prof. Sekhar Anasani
Virtualization Cloud Computing
Technology to run multiple VMs Delivery of services over the internet
Foundation for cloud infrastructure Uses virtualization for scalability and agility
Focuses on hardware utilization Focuses on delivering IT services as utilities
Key Point: Virtualization is a building block of cloud computing, but not cloud itself. Cloud adds on-
demand access, self-service, billing, scalability, and abstraction.
1.5.5 Benefits of Virtualization in Cloud
1. Efficient Resource Utilization
o Maximizes use of hardware (CPU, RAM, storage).
o Reduces idle resources.
2. Scalability & Elasticity
o Quickly spin up or shut down VMs based on demand.
3. Cost Reduction
o Reduces capital expenditure (CapEx) by reducing hardware needs.
4. Isolation & Security
o Applications run in isolated environments, reducing risk of interference.
5. Flexibility & Mobility
o Migrate VMs between physical servers with minimal downtime (e.g., VMware vMotion).
1.5.6 Containerization – Next Step After Virtualization
While virtualization abstracts hardware, containerization abstracts the operating system.
Virtual Machine (VM) Container
Heavyweight (includes OS) Lightweight (shares host OS)
Takes minutes to start Starts in seconds
More secure isolation Faster and portable
Cloud Computing Notes Prof. Sekhar Anasani
Virtual Machine (VM) Container
Popular Tools:
Docker: Most widely used container platform.
Kubernetes: For managing containerized applications at scale.
1.5.7 Virtualization in Major Cloud Providers
Provider Virtualization Tool/Technology
AWS Xen, Nitro Hypervisor, KVM
Azure Hyper-V
Google KVM
Example:
When you launch an EC2 instance in AWS, a virtual machine is provisioned on top of AWS's physical
hardware, using a hypervisor.
1.5.8 Use Cases of Virtualization in Cloud
Dev/Test Environments: Easily replicate environments for testing.
Disaster Recovery: Quickly move workloads to backup systems.
Multi-tenancy: Isolate different users on the same physical host securely.
Dynamic Workloads: Scale VMs up/down based on demand.
1.5.9 Challenges of Virtualization
Overhead: Although efficient, VMs consume more resources than containers.
Cloud Computing Notes Prof. Sekhar Anasani
Security: Improper configuration of hypervisors can introduce vulnerabilities.
Licensing and Compliance: Managing multiple licenses for guest OS can be complex.
Performance: VMs may not match bare-metal speed for certain workloads.
1.5.10 Review Questions
1. What is virtualization, and how does it support cloud computing?
2. Differentiate between Type 1 and Type 2 hypervisors with examples.
3. List and explain three types of virtualization.
4. How are containers different from virtual machines?
5. Name one cloud provider and describe the virtualization technology it uses.
Chapter 1.6 – Characteristics of Virtualized Environments
Virtualization is not just about running multiple systems on a single machine—it introduces an entire
environment that is dynamic, efficient, and adaptable. This chapter explores the key characteristics that
define virtualized environments, especially in the context of cloud computing.
1.6.1 Resource Abstraction
In a virtualized environment, physical resources such as CPU, RAM, storage, and network interfaces are
abstracted and presented to virtual machines (VMs) as independent units.
Example: A VM might "think" it has 8 GB of RAM and a 100 GB disk, even if these resources are
being shared with other VMs.
Abstraction allows flexibility and efficient use of hardware.
1.6.2 Resource Pooling
Cloud Computing Notes Prof. Sekhar Anasani
Virtualization enables the pooling of physical resources from multiple servers into a single logical
resource pool. The cloud provider can then allocate these resources to customers based on need.
Example: 10 physical servers may be pooled to support 100 virtual machines.
Supports multi-tenancy – serving multiple customers from the same infrastructure.
1.6.3 Isolation
Each virtual machine is isolated from others on the same host.
One VM’s crash or failure does not affect others.
Ensures security and stability.
Also isolates users, applications, and data—important for public cloud models.
1.6.4 Elasticity and Scalability
Virtualized environments allow easy scaling of resources:
Vertical Scaling: Adding more CPU, RAM, or storage to an existing VM.
Horizontal Scaling: Adding more VMs to handle increased load.
🔄 Elasticity means you can scale up or down dynamically as demand changes.
Example: E-commerce apps scale up during sales and back down afterward.
1.6.5 On-Demand Resource Provisioning
Virtual machines and other resources can be provisioned (created and made available) quickly and
automatically:
Admins can launch a new server in minutes.
Cloud Computing Notes Prof. Sekhar Anasani
In cloud, this is often done via a web interface or API.
This improves agility and supports DevOps practices like Continuous Integration/Continuous
Deployment (CI/CD).
1.6.6 Live Migration
Virtualization allows the live migration of running virtual machines from one physical host to another
without downtime.
Useful for:
o Load balancing
o Maintenance
o Disaster recovery
Example: VMware vMotion or Live Migration in Microsoft Hyper-V.
1.6.7 Snapshots and Cloning
Snapshot: Captures the exact state of a VM at a point in time. Useful for backups and rollbacks.
Cloning: Creates an exact copy of a VM. Speeds up deployment of similar environments.
These features help in testing, troubleshooting, and disaster recovery.
1.6.8 Hardware Independence
Virtual machines are decoupled from the underlying hardware:
You can move a VM from an Intel server to an AMD server.
The hypervisor translates and manages hardware interaction.
Cloud Computing Notes Prof. Sekhar Anasani
✅ Reduces dependency on specific vendors or configurations.
1.6.9 Improved Security and Compliance
VMs can be monitored, controlled, and segmented more easily.
Policies can be applied to ensure compliance (e.g., GDPR, HIPAA).
Sandboxing: risky applications can run in isolated VMs.
1.6.10 Centralized Management
Most virtualization platforms provide centralized tools for:
Monitoring resource usage
Creating/modifying VMs
Automating backups and patching
Example: VMware vCenter, Microsoft SCVMM, Proxmox, etc.
Helps IT teams manage large-scale infrastructures efficiently.
1.6.11 High Availability and Fault Tolerance
By distributing VMs across physical servers, virtualization supports:
High Availability (HA): Systems remain operational even if one server fails.
Fault Tolerance (FT): Redundant systems prevent downtime completely.
In the cloud, these features enable 99.99%+ uptime SLAs.
1.6.12 Cost Efficiency
Cloud Computing Notes Prof. Sekhar Anasani
Less physical hardware = reduced CapEx (capital expense).
Lower power and cooling requirements.
Efficient use of existing hardware.
Especially in cloud environments, these savings are passed on to end users in a pay-per-use model.
1.6.13 Automation and Orchestration
Virtualized environments integrate with automation tools to manage workloads at scale:
Tools: Ansible, Terraform, Puppet, Chef
Orchestration tools like Kubernetes for containers
This allows:
Auto-scaling
Self-healing
Infrastructure as Code (IaC)
1.6.14 Multi-Tenancy
Cloud providers can run multiple customers’ VMs on the same hardware:
Strong isolation prevents data leakage.
Cost is shared across tenants, making services affordable.
Virtualization makes this possible through resource isolation and security controls.
1.6.15 Summary Table
Cloud Computing Notes Prof. Sekhar Anasani
Characteristic Description
Abstraction Hides underlying hardware complexities
Resource Pooling Combines resources for shared use
Isolation Keeps VMs separate and secure
Elasticity Dynamic scaling up/down of resources
On-Demand Provisioning Quickly deploy new VMs or resources
Live Migration Move VMs between hosts without downtime
Snapshots & Cloning Backup and duplicate VMs easily
Hardware Independence Run VMs on different hardware platforms
Centralized Management Unified control of resources
Cost Efficiency Saves money through optimized usage
Multi-Tenancy Supports multiple users on shared infrastructure
1.6.16 Review Questions
1. What is meant by resource abstraction in virtualization?
2. How does virtualization support elasticity in cloud environments?
3. Explain the role of live migration and give an example.
4. What is the difference between snapshot and cloning in VMs?
5. List any four characteristics that make virtualization ideal for cloud computing.
Chapter 1.7 – Taxonomy of Virtualization
Virtualization has multiple types, techniques, and layers. To better understand its full scope, we use a
taxonomy—a structured classification of the different types of virtualization. This chapter explores
various categories of virtualization based on what is being virtualized, how it's implemented, and where
it’s applied.
Cloud Computing Notes Prof. Sekhar Anasani
1.7.1 What is a Taxonomy?
In general, a taxonomy is a system for classifying things into groups. In the context of virtualization:
It helps us understand the different forms and implementations of virtualization.
Allows cloud architects and engineers to choose the right type of virtualization based on use case,
performance needs, and infrastructure.
1.7.2 Classification Based on What is Virtualized
A. Server Virtualization
Most common form.
Allows multiple virtual servers to run on a single physical machine.
Each virtual server behaves like a standalone physical machine.
Tools: VMware ESXi, Microsoft Hyper-V, KVM
🔹 Use Case: Cloud hosting, data centers, DevOps environments.
B. Storage Virtualization
Abstracts physical storage from multiple devices and presents it as a single storage pool.
Users access it as a unified storage system, even though it's spread across many devices.
🔹 Use Case: Cloud storage (e.g., AWS S3), SANs (Storage Area Networks), backup solutions.
C. Network Virtualization
Combines hardware and software network resources into a single, software-based entity.
Includes virtual LANs (VLANs), virtual private networks (VPNs), and Software Defined Networking
(SDN).
Cloud Computing Notes Prof. Sekhar Anasani
🔹 Use Case: Cloud-based networking, scalable and secure communication.
D. Desktop Virtualization
Enables a user’s desktop environment to be hosted on a central server.
Accessible remotely via thin clients or remote desktops.
🔹 Use Case: Remote work, centralized IT management, education labs.
E. Application Virtualization
Runs applications in isolated containers, without full OS virtualization.
Apps behave as if they are installed locally but run in a virtual layer.
🔹 Use Case: Sandboxing, secure app delivery (e.g., Citrix, VMware ThinApp).
F. Memory Virtualization
Treats RAM as a shared resource and allocates it dynamically across multiple VMs.
Can extend physical memory using disk (virtual memory).
🔹 Use Case: Improves VM performance and memory management.
G. Data Virtualization
Provides a unified view of data from different sources without copying or moving it.
Users access data via APIs or views.
🔹 Use Case: Business intelligence, data analytics, multi-source integration.
Cloud Computing Notes Prof. Sekhar Anasani
1.7.3 Classification Based on Virtualization Techniques
A. Full Virtualization
Simulates complete hardware.
OS running on the VM is unaware it’s being virtualized.
Requires no modification to guest OS.
🔹 Example: VMware ESXi, KVM
B. Para-Virtualization
Guest OS is aware of the virtualization environment.
OS needs to be modified to interact efficiently with the hypervisor.
Offers better performance compared to full virtualization.
🔹 Example: Xen hypervisor
C. OS-Level Virtualization (Containerization)
Uses a single OS kernel and isolates multiple user-space instances.
Lightweight and faster than VM-based virtualization.
🔹 Example: Docker, LXC (Linux Containers)
🆚 Difference:
VMs virtualize entire machines (hardware + OS).
Containers virtualize only applications and their dependencies.
Cloud Computing Notes Prof. Sekhar Anasani
1.7.4 Classification Based on Hypervisor Type
A hypervisor is a software that enables virtualization.
Type 1: Bare Metal Hypervisor
Runs directly on physical hardware.
Provides better performance and security.
Used in enterprise and cloud platforms.
🔹 Example: VMware ESXi, Microsoft Hyper-V, Xen
Type 2: Hosted Hypervisor
Runs on top of a host OS.
Easier to set up, used for development and testing.
🔹 Example: Oracle VirtualBox, VMware Workstation
1.7.5 Summary Table
Virtualization Type Description Use Case
Multiple OS on one physical Cloud hosting, testing
Server Virtualization
server environments
Abstracts multiple storage
Storage Virtualization Cloud storage, backup systems
devices
Virtual networks (VLAN,
Network Virtualization Secure, flexible networking
VPN, SDN)
Centralized management,
Desktop Virtualization Remote desktop sessions
remote access
Application Runs apps in isolated Secure deployment
Cloud Computing Notes Prof. Sekhar Anasani
Virtualization Type Description Use Case
Virtualization environments
Memory Virtualization Dynamic memory allocation Efficient resource use
Data Virtualization Unified view of data sources BI, analytics
Technique Type Description Example
Full Virtualization Complete hardware simulation VMware ESXi, KVM
OS modified to be
Para-Virtualization Xen
virtualization-aware
OS-Level
Containers share OS kernel Docker, LXC
Virtualization
Hypervisor Type Description Example
Type 1 (Bare Metal) Runs on hardware VMware ESXi, Hyper-V
Type 2 (Hosted) Runs on host OS VirtualBox, VMware Workstation
1.7.6 Key Benefits of Understanding Taxonomy
Helps architects choose the right virtualization strategy.
Aids in designing scalable, efficient, and secure cloud solutions.
Critical for cloud certification exams and real-world implementation.
1.7.7 Review Questions
1. What is meant by virtualization taxonomy?
2. Differentiate between server and storage virtualization.
3. What is the main advantage of OS-level virtualization?
4. Compare Type 1 and Type 2 hypervisors with examples.
5. Explain the role of full and para-virtualization in VM performance.
Chapter 1.8 – Virtualization and Cloud Computing
Cloud Computing Notes Prof. Sekhar Anasani
Virtualization and cloud computing are closely related concepts but not the same. Virtualization is a
foundational technology that makes cloud computing possible. This chapter explores the relationship
between the two, their differences, dependencies, and how virtualization powers cloud services.
1.8.1 What Is Virtualization?
Virtualization is the process of creating a virtual (rather than actual) version of something — such as an
operating system, a server, a storage device, or network resources.
In essence, it allows multiple simulated environments (virtual machines or containers) to run on a single
physical machine.
🟢 Example: A physical server running multiple virtual machines, each with its own OS and
applications.
1.8.2 What Is Cloud Computing?
Cloud computing refers to on-demand availability of computing resources over the internet, such as
storage, servers, databases, networking, and software.
These resources are delivered as services and are typically scalable, pay-as-you-go, and accessible from
anywhere.
🟢 Example: Using Google Drive for file storage or AWS EC2 for running virtual machines.
1.8.3 How Virtualization Enables Cloud Computing
Let’s understand how virtualization serves as the engine that drives the cloud:
Cloud Computing Notes Prof. Sekhar Anasani
Aspect Role of Virtualization
Resource Efficiency Enables multiple VMs to share a single physical server
Isolation Each VM runs independently, ensuring data security
Scalability VMs and containers can be created or destroyed quickly
Cost-effectiveness Maximizes hardware usage, reducing infrastructure costs
Portability VMs and containers can be moved across systems easily
Cloud providers use virtualization platforms like VMware, Xen, KVM, and Docker to manage their
massive infrastructure efficiently.
1.8.4 Virtualization in IaaS, PaaS, and SaaS
Let’s see where virtualization fits into the cloud service models:
A. Infrastructure as a Service (IaaS)
Provides virtualized computing resources via the internet.
Users can create and manage virtual machines, storage, and networks.
🟢 Example: AWS EC2, Azure Virtual Machines
Virtualization Tool Used: Hypervisors (e.g., Xen, KVM)
B. Platform as a Service (PaaS)
Offers platforms (runtime, OS, DB) for developers to build and deploy applications.
Underlying infrastructure is abstracted using virtualization.
🟢 Example: Google App Engine, Heroku
Virtualization Tool Used: Containers (e.g., Docker, Kubernetes)
Cloud Computing Notes Prof. Sekhar Anasani
C. Software as a Service (SaaS)
Applications are delivered over the web; end users don’t manage infrastructure.
Virtualization helps providers isolate apps and scale based on demand.
🟢 Example: Gmail, Microsoft 365
Virtualization Tool Used: Application and desktop virtualization
1.8.5 Containers vs. Virtual Machines in Cloud
Feature Virtual Machines Containers
OS Virtualization Yes (entire OS) No (shares host OS)
Boot Time Minutes Seconds
Resource
High Low
Overhead
Moderate (depends on High (runs anywhere Docker is
Portability
hypervisor) supported)
Legacy apps, complete OS
Use Case Microservices, CI/CD, scalable apps
isolation
📌 Today’s cloud systems often use containers (like Docker) for their agility, especially in
microservices architecture.
1.8.6 Benefits of Virtualization in Cloud Computing
1. Rapid Deployment
→ Virtual machines and containers can be launched instantly.
2. Improved Resource Utilization
→ Less hardware needed, reduces costs.
Cloud Computing Notes Prof. Sekhar Anasani
3. Fault Isolation
→ One virtual machine crashing doesn’t affect others.
4. Scalability
→ Easily scale up/down VMs or containers based on workload.
5. Disaster Recovery
→ Virtual machines can be backed up or cloned quickly.
6. Energy Efficiency
→ Fewer physical machines mean lower power consumption.
1.8.7 Limitations and Considerations
Performance Overhead
→ Virtualization adds a software layer which can reduce raw performance compared to physical
hardware.
Complex Management
→ Large-scale virtualization environments need orchestration (like Kubernetes).
Security
→ Misconfigurations can lead to vulnerabilities across multiple VMs or containers.
Licensing and Compliance
→ Managing software licenses across virtualized environments can be challenging.
1.8.8 Real-World Example: AWS EC2
When you launch an EC2 instance on Amazon Web Services:
You're creating a virtual machine.
AWS uses a hypervisor (based on Xen or Nitro) to isolate and manage VMs.
Each instance is isolated, scalable, and billed on usage.
You choose OS, CPU, memory, and storage—thanks to virtualization.
Cloud Computing Notes Prof. Sekhar Anasani
1.8.9 Key Differences: Virtualization vs. Cloud Computing
Feature Virtualization Cloud Computing
Creating virtual versions of
Concept Delivering services over the internet
resources
Accessibility Local or internal networks Globally accessible via internet
Billing Model Not necessarily usage-based Pay-as-you-go, subscription-based
Resource Provided by third-party (e.g., AWS,
Usually on-premise
Ownership Azure)
Example VMware Workstation AWS, Google Cloud Platform
1.8.10 Summary
Virtualization is the backbone technology that enables cloud computing.
It abstracts and pools physical resources, making them manageable and scalable.
Cloud platforms use various virtualization types to deliver services like IaaS, PaaS, and SaaS.
Containers, VMs, and hypervisors are all tools in the virtualization ecosystem.
1.8.11 Review Questions
1. Define virtualization and explain how it powers cloud computing.
2. How is virtualization used in IaaS, PaaS, and SaaS?
3. Compare virtual machines and containers in cloud environments.
4. List three benefits and two limitations of virtualization in cloud computing.
5. Describe the relationship between cloud platforms like AWS and virtualization.
Chapter 1.9 – Pros and Cons of Virtualization
Cloud Computing Notes Prof. Sekhar Anasani
Virtualization plays a central role in cloud computing, offering numerous advantages for both service
providers and end users. However, like any technology, it comes with its own set of challenges. In this
chapter, we’ll examine both the benefits (pros) and limitations (cons) of virtualization in detail.
1.9.1 ✅ Pros of Virtualization
Let’s begin by discussing the advantages that make virtualization a preferred solution in cloud
environments:
A. Better Hardware Utilization
Virtualization allows multiple virtual machines (VMs) to run on a single physical server.
This maximizes the use of computing resources like CPU, memory, and storage.
Idle resources are reduced, improving overall efficiency.
🟢 Example: A server with 64 GB RAM can host multiple VMs each using 4–8 GB instead of running a
single OS.
B. Cost Savings
Reduces the need for purchasing and maintaining physical hardware.
Saves on power, cooling, and space requirements.
Less downtime also translates to better ROI (Return on Investment).
C. Scalability and Flexibility
Resources can be scaled up or down quickly by adjusting VM specs.
New VMs or containers can be launched in minutes.
Cloud Computing Notes Prof. Sekhar Anasani
Supports dynamic workloads and elastic computing.
🟢 Example: In AWS, you can scale out web servers during traffic spikes using EC2 Auto Scaling.
D. Isolation and Security
Each VM operates independently from others, improving data isolation.
Malware or failure in one VM doesn’t impact others.
E. Disaster Recovery and Backup
Snapshots and clones of VMs can be taken easily.
Full system recovery can be done quickly from backups.
🟢 Example: If a VM crashes, its backup snapshot can be restored in a few minutes.
F. Testing and Development Environments
Developers can create isolated test environments on the same machine.
Different OS and software configurations can be tested without interfering with the host system.
G. Supports Legacy Systems
Older applications requiring outdated OS versions can run inside VMs without affecting modern
systems.
H. Mobility and Portability
Cloud Computing Notes Prof. Sekhar Anasani
VMs and containers can be moved from one physical machine to another with minimal reconfiguration.
Simplifies migration and load balancing.
1.9.2 ❌ Cons of Virtualization
Despite its many benefits, virtualization has some limitations that must be considered:
A. Performance Overhead
VMs run on a hypervisor layer, which may introduce latency and reduce performance compared to
native execution.
Not ideal for high-performance computing tasks.
🛑 Note: Bare-metal servers (no virtualization) are still used for performance-critical applications like
gaming servers or scientific simulations.
B. Complex Management
Large-scale environments with dozens or hundreds of VMs require advanced orchestration and
monitoring tools.
Mismanagement can lead to VM sprawl (too many untracked virtual machines).
C. Licensing and Compliance Issues
Licensing software in virtualized environments can be more complicated.
Some vendors require special licenses for virtual deployments.
Cloud Computing Notes Prof. Sekhar Anasani
D. Security Risks
Improper configuration of VMs, hypervisors, or containers can expose the system to attacks.
If a hypervisor is compromised, all hosted VMs could be at risk (hypervisor attack surface).
E. Resource Contention
If too many VMs are assigned to a single host, they may compete for resources like CPU and memory.
Leads to degraded performance, especially under load.
🛑 Example: Over-provisioning VMs on a server with limited RAM may cause system-wide slowness.
F. Hardware Dependency
Although VMs are portable, they still depend on the underlying physical hardware.
Some features (like GPU access or specific hardware drivers) may not be available in virtualized
environments.
1.9.3 Summary Table
Aspect Pros (Advantages) Cons (Limitations)
High efficiency, better
Resource Usage Risk of resource contention
utilization
Reduces hardware and May need investment in
Cost
maintenance costs virtualization tools
Good for general use and Overhead affects high-performance
Performance
scaling applications
Hypervisor vulnerabilities if
Security Isolation of VMs
misconfigured
Cloud Computing Notes Prof. Sekhar Anasani
Aspect Pros (Advantages) Cons (Limitations)
Deployment Complex to manage large-scale
Fast VM/container creation
Speed environments
Backup & May need more storage for VM
Easy snapshot and clone
Recovery images
VMs and containers are Requires compatible hypervisors or
Portability
portable platforms
1.9.4 Best Practices for Maximizing Pros and Minimizing Cons
1. Use Lightweight Containers for Performance-Sensitive Tasks
→ Containers have less overhead compared to full VMs.
2. Monitor Resource Usage Continuously
→ Tools like Prometheus, Grafana, or cloud-native monitoring solutions help.
3. Enforce Security Policies
→ Configure firewalls, isolate VMs, and secure APIs.
4. Automate VM/Container Lifecycle
→ Use tools like Kubernetes, Terraform, or Ansible.
5. Limit VM Sprawl
→ Regularly audit and remove unused or duplicate VMs.
1.9.5 Review Questions
1. What are three major benefits of virtualization in cloud computing?
2. Explain the concept of VM isolation and its significance for security.
3. List and explain two major limitations of virtualization.
4. What is VM sprawl and how can it be prevented?
5. Why might organizations choose bare-metal servers over virtual machines in some cases?
Cloud Computing Notes Prof. Sekhar Anasani
📘 Unit 2: Cloud Architecture and Models
Chapter 2.1 – Introduction to Cloud Architecture
Cloud architecture refers to the components and sub-components required for cloud computing. These
elements typically consist of a front-end platform, back-end platforms, a cloud-based delivery, and
a network (usually the internet).
Cloud architecture is the blueprint that defines how cloud services are structured, delivered, and
managed. It determines how clients interact with services, how resources are allocated, and how
data and processes flow in a cloud environment.
2.1.1 Key Components of Cloud Architecture
Let’s break it down into layers:
A. Front-End Layer (Client Side)
This is what users interact with.
Includes: Web browsers, mobile apps, command-line interfaces, APIs.
Functions: Access cloud services (like storage, databases, virtual machines).
User Perspective: All interaction with the cloud begins here.
Cloud Computing Notes Prof. Sekhar Anasani
🟢 Example: Accessing Gmail (cloud email) via a browser.
B. Back-End Layer (Cloud Provider Side)
This layer includes all the infrastructure and services provided by cloud vendors.
Components:
o Servers (virtual and physical)
o Storage systems
o Databases
o Application servers
o Networking infrastructure
o Hypervisors/Virtual Machines
o Containers
Responsibilities:
o Resource provisioning
o Load balancing
o Data storage
o Service orchestration
o Security
🟢 Example: AWS handles where your Gmail is stored, processed, and backed up.
C. Cloud Delivery Models
Defines how services are provided to the end-users. These are discussed in detail later (SaaS, PaaS,
IaaS), but in architecture, this means which model you're designing for.
D. Cloud Network (Internet or VPN)
Cloud Computing Notes Prof. Sekhar Anasani
This connects the front-end and back-end.
Ensures secure, fast, and scalable communication between users and cloud systems.
🟢 Includes: Load balancers, routers, switches, firewalls.
2.1.2 Layers of Cloud Architecture (Logical View)
Cloud architecture is also described using logical layers. Think of it like building a house from
foundation to rooftop.
1. Infrastructure Layer (Bottom Layer)
Consists of physical hardware: servers, storage devices, and networking equipment.
Virtualization is applied here to create virtual machines and virtual networks.
2. Platform Layer
Provides development tools, database management, and runtime environments.
Used by developers to build applications without managing the infrastructure.
🟢 Example: Google App Engine, Azure App Service.
3. Application Layer
End-user applications like CRM tools, email, or video conferencing platforms.
Built on top of the platform and infrastructure layers.
🟢 Example: Zoom, Salesforce, Dropbox.
Cloud Computing Notes Prof. Sekhar Anasani
4. Management and Security Layer
Handles automation, orchestration, monitoring, compliance, identity and access management.
Key Features:
Auto-scaling
Logging and auditing
Data encryption and firewalls
Disaster recovery
2.1.3 Cloud Architecture Design Principles
When designing or evaluating a cloud system, these principles guide you toward robust architecture:
A. Scalability
The system must be able to handle increased loads by scaling resources (horizontal or vertical scaling).
B. Elasticity
Resources should dynamically adjust as per demand.
🟢 Example: Auto-scaling web servers during a traffic spike.
C. Availability
Systems must be designed to be always accessible. Use multi-region deployment and failover systems.
Cloud Computing Notes Prof. Sekhar Anasani
D. Security
Must include end-to-end data protection, access controls, and monitoring.
E. Resilience
The architecture should be fault-tolerant—failures in one component should not impact the whole
system.
F. Cost Efficiency
Resource usage should match demand to avoid overspending.
2.1.4 Benefits of Cloud Architecture
Benefit Description
Flexibility Access from anywhere, anytime
Scalability Easily handle more users or data
Reliability High availability and disaster recovery
Efficiency Pay-as-you-use, no need to over-provision
Speed Rapid deployment of services and apps
Security Built-in encryption, identity management
2.1.5 Real-World Example
Let’s consider Netflix.
Cloud Computing Notes Prof. Sekhar Anasani
Frontend: User interfaces on TVs, browsers, mobile apps.
Backend: Runs on AWS. Uses EC2 (compute), S3 (storage), Lambda (serverless), and RDS (database).
Network: Content is delivered using Amazon CloudFront (a CDN).
Security: Encrypted video streams, secure login, and distributed access control.
Netflix’s cloud architecture allows millions of users to stream videos simultaneously without buffering.
2.1.6 Review Questions
1. What are the four main components of cloud architecture?
2. Explain the role of the backend layer in cloud systems.
3. What is the difference between elasticity and scalability?
4. List and describe any three principles of cloud architecture design.
5. How does the cloud network support front-end and back-end layers?
Unit 2: Cloud Architecture and Models
Chapter 2.2 – Cloud Reference Model
2.2.1 What is a Cloud Reference Model?
A Cloud Reference Model is a conceptual framework that defines the structure, behavior, and
components of cloud computing. It outlines the layers, roles, and relationships in a cloud system,
serving as a blueprint to design, implement, and manage cloud-based services.
It helps cloud providers and consumers understand who does what, where resources are, and how
services are delivered.
2.2.2 Key Layers in the Cloud Reference Model
Cloud Computing Notes Prof. Sekhar Anasani
The model can be broken down into five core layers:
1. Infrastructure as a Service (IaaS)
What it provides: Raw computing resources like virtual machines, storage, and networks.
User Control: Full control over operating systems, storage, and applications.
Examples:
o Amazon EC2 (virtual servers)
o Google Compute Engine
o Microsoft Azure Virtual Machines
🟢 Use Case: Hosting websites, backup storage, running custom enterprise applications.
2. Platform as a Service (PaaS)
What it provides: Tools and services for app development without managing hardware or OS.
User Control: Developers control the application logic and data. The platform handles runtime,
middleware, OS.
Examples:
o Google App Engine
o Microsoft Azure App Services
o Heroku
🟢 Use Case: Developing web or mobile apps without worrying about servers or load balancing.
3. Software as a Service (SaaS)
What it provides: Fully functional applications delivered over the internet.
User Control: Minimal control, mainly on user-specific settings or preferences.
Cloud Computing Notes Prof. Sekhar Anasani
Examples:
o Gmail
o Salesforce
o Microsoft Office 365
o Dropbox
🟢 Use Case: Email, document management, customer relationship management (CRM), team
collaboration tools.
4. Function as a Service (FaaS) / Serverless
What it provides: Event-driven execution of code without managing servers.
User Control: Developers only write functions. Infrastructure scales and handles deployment
automatically.
Examples:
o AWS Lambda
o Azure Functions
o Google Cloud Functions
🟢 Use Case: Lightweight tasks, API backends, automation jobs.
5. Cloud Storage
What it provides: Scalable, redundant storage solutions for any type of data.
Examples:
o Amazon S3
o Google Cloud Storage
o Azure Blob Storage
🟢 Use Case: File hosting, media storage, data lakes.
Cloud Computing Notes Prof. Sekhar Anasani
2.2.3 Roles in the Cloud Reference Model
The model also defines roles for the actors involved in the cloud ecosystem:
Role Description
Cloud Provider Delivers cloud services (e.g., AWS, Azure, GCP)
Cloud Consumer Uses services (individuals, companies, developers)
Cloud Broker Manages service usage, performance, and relationships
Cloud Auditor Conducts assessments on services, performance, security
Cloud Carrier Provides connectivity between providers and consumers
2.2.4 Layered Architecture vs Reference Model
Layered Architecture: Focuses on how components interact.
Reference Model: Focuses on what components exist and who interacts with them.
Think of the reference model as a high-level map, while layered architecture is a detailed design.
2.2.5 Advantages of a Reference Model
Clarity: Makes it easier to understand complex cloud systems.
Standardization: Ensures a common language among stakeholders.
Modularity: Helps in building and scaling services in layers.
Security Mapping: Each layer and role can have its own security policy.
Troubleshooting: Easier to isolate and fix issues.
2.2.6 Summary Table – Cloud Service Models
Cloud Computing Notes Prof. Sekhar Anasani
Model User Control Provider Responsibility Examples
AWS EC2, Azure
IaaS OS, apps, data Hardware, virtualization
VM
PaaS Code, data OS, middleware, runtime Google App Engine
SaaS Settings only Full application stack Gmail, Dropbox
Individual Full auto-scaling, event
FaaS AWS Lambda
functions handling
2.2.7 Review Questions
1. What is the purpose of the cloud reference model?
2. Explain the difference between IaaS, PaaS, and SaaS with examples.
3. Who is a cloud broker, and what role do they play?
4. Why is the reference model important for standardizing cloud systems?
5. What is FaaS, and how does it differ from traditional hosting?
Chapter 2.3 – Types of Clouds
Cloud computing environments can be deployed in different ways depending on the needs of
organizations. These are called cloud deployment models, and they describe how cloud infrastructure
is owned, managed, and accessed.
There are four main types:
🌐 2.3.1 Public Cloud
Definition:
A public cloud is owned and operated by a third-party cloud provider, and its resources are made
available to the general public over the internet.
Cloud Computing Notes Prof. Sekhar Anasani
Key Characteristics:
Shared infrastructure
Pay-per-use model
Scalable and elastic
Managed by the provider
Examples:
Amazon Web Services (AWS)
Microsoft Azure
Google Cloud Platform (GCP)
Use Cases:
Startups and small businesses
Development and testing environments
Web-based email, office tools (e.g., Gmail, Office 365)
Advantages:
No capital expenditure
Easy to scale
High reliability and availability
Disadvantages:
Less control over infrastructure
Shared resources may raise security concerns
🏢 2.3.2 Private Cloud
Cloud Computing Notes Prof. Sekhar Anasani
Definition:
A private cloud is exclusively used by a single organization. It can be physically located on-premises
or hosted by a third-party provider.
Key Characteristics:
Dedicated infrastructure
Full control over data and security
Customizable to organization’s needs
Examples:
VMware vCloud
OpenStack
Microsoft Private Cloud
Use Cases:
Government agencies
Financial institutions
Enterprises with strict compliance requirements
Advantages:
Greater control and customization
Enhanced security and privacy
Disadvantages:
High setup and maintenance cost
Limited scalability compared to public cloud
👥 2.3.3 Community Cloud
Cloud Computing Notes Prof. Sekhar Anasani
Definition:
A community cloud is shared by several organizations with similar needs or concerns (e.g.,
compliance, security, policy).
Key Characteristics:
Shared infrastructure for a specific community
Managed internally or by a third party
Designed for collaboration
Examples:
Universities sharing research resources
Hospitals in a healthcare network
Use Cases:
Academic or scientific communities
Government departments with shared goals
Advantages:
Balanced cost and performance
Enhanced collaboration
Disadvantages:
Limited availability and features
Shared responsibility among users
🔀 2.3.4 Hybrid Cloud
Cloud Computing Notes Prof. Sekhar Anasani
Definition:
A hybrid cloud combines two or more cloud types (public, private, or community), allowing data and
applications to move between them seamlessly.
Key Characteristics:
Flexibility and scalability
Workload portability
Combines benefits of different models
Examples:
On-premises private cloud + AWS public cloud
A company using a private cloud for sensitive data and public cloud for development
Use Cases:
Businesses needing a balance between control and cost
Disaster recovery solutions
Burst computing (temporary high-load)
Advantages:
Best of both worlds
Efficient resource use
High availability
Disadvantages:
Complex management and integration
Potential security risks in data transfer
🧠 2.3.5 Choosing the Right Deployment Model
Cloud Computing Notes Prof. Sekhar Anasani
Public Private Community Hybrid
Factor
Cloud Cloud Cloud Cloud
Cost Low High Medium Medium
Security Basic High Medium-High High
Customization Limited High Medium High
Scalability High Medium Medium High
Control Low High Shared Medium
✅ 2.3.6 Summary
Model Description Best For
Public Resources available to anyone via internet Startups, testing environments
Private Exclusive access by one organization Enterprises, secure workloads
Shared by organizations with common Academic, healthcare,
Community
concerns government
Large businesses, mixed
Hybrid Mix of public and private clouds
workloads
📘 2.3.7 Review Questions
1. What is a public cloud? Give two examples.
2. List two key differences between private and hybrid clouds.
3. Why might a university choose a community cloud?
4. Explain the advantages and challenges of a hybrid cloud model.
5. Which cloud model is best suited for a startup and why?
Cloud computing not only transforms the way technology is used but also changes how it is purchased,
billed, and consumed. Understanding the economics of cloud helps organizations make smarter
decisions regarding IT investments and resource usage.
Cloud Computing Notes Prof. Sekhar Anasani
💰 2.4.1 Traditional IT vs. Cloud Economics
Aspect Traditional IT Cloud Computing
Cost Structure Capital Expenditure (CapEx) Operational Expenditure (OpEx)
Scalability Limited and slow Instant and elastic
Resource Usage Often under-utilized Pay for actual usage
Maintenance Requires in-house teams Handled by provider
Procurement Time Weeks or months Minutes
🏢 2.4.2 CapEx vs. OpEx
CapEx (Capital Expenditure):
Large upfront investment in physical hardware, software licenses, data centers, etc.
→ Example: Buying servers, setting up a private data center.
OpEx (Operational Expenditure):
Ongoing costs for services consumed. Cloud follows an OpEx model.
→ Example: Paying monthly for AWS EC2 instances used by your application.
Key Shift in Cloud:
From “Buy and Own” (CapEx) → to “Rent and Use” (OpEx)
📊 2.4.3 Pay-as-You-Go (PAYG) Model
Definition:
You pay only for what you use—compute, storage, bandwidth, etc.
Benefits:
No upfront investment
Cloud Computing Notes Prof. Sekhar Anasani
Scale up/down as needed
Predictable operational cost
Example:
If you use a server for 4 hours/day, you only pay for 4 hours—not 24 hours or a full month.
📈 2.4.4 Economies of Scale
Cloud providers serve millions of customers, allowing them to:
Invest in powerful infrastructure
Reduce unit cost per resource
Offer competitive pricing
Large-scale operations → Reduced cost per unit → Cost savings passed to customers.
🧮 2.4.5 Cloud Pricing Models
1. On-Demand:
Pay for what you use without any commitment.
→ Ideal for short-term or unpredictable workloads.
2. Reserved Instances:
Commit to using resources for 1 or 3 years.
→ Lower cost than on-demand (up to 75% savings).
3. Spot Instances:
Use spare capacity at discounted prices.
→ Cheapest option, but instances can be terminated anytime.
4. Free Tier:
Many providers offer limited services for free to help beginners and startups.
Cloud Computing Notes Prof. Sekhar Anasani
🔁 2.4.6 Elasticity and Cost Efficiency
Elasticity means scaling resources up or down automatically based on demand.
Benefit:
You don’t pay for idle resources.
Example:
An e-commerce website adds more compute during sales (e.g., Black Friday) and scales down after
traffic drops.
2.4.7 Hidden Costs to Consider
Although cloud is cost-effective, there can be hidden costs, such as:
Data transfer (egress) charges
Long-term data storage
Vendor lock-in
Compliance and security audits
Organizations must analyze total cost of ownership (TCO) before migrating.
💡 2.4.8 Cost Optimization Strategies
Use auto-scaling and load balancing
Monitor usage with cloud dashboards
Opt for reserved or spot instances when suitable
Use serverless architectures for event-driven tasks
Regularly audit and delete unused resources
Cloud Computing Notes Prof. Sekhar Anasani
📘 2.4.9 Summary
Cloud computing shifts IT spending from CapEx to OpEx.
Pay-as-you-go and elasticity enable cost control and flexibility.
Multiple pricing models offer cost options for different workloads.
Hidden costs and proper planning are crucial for real savings.
✅ 2.4.10 Review Questions
1. What is the difference between CapEx and OpEx?
2. Explain the pay-as-you-go model with an example.
3. What are spot instances and when should you use them?
4. How does cloud elasticity contribute to cost efficiency?
5. Name two hidden costs associated with cloud computing.
📘 Chapter 2.6 – Cloud Application Platform
Cloud Application Platforms, also known as Platform as a Service (PaaS), provide developers with a
complete environment to build, deploy, and manage applications—without worrying about the
underlying infrastructure.
This chapter covers what cloud application platforms are, their components, how they work, and some
real-world examples.
🌐 2.6.1 What is a Cloud Application Platform?
A Cloud Application Platform is a service layer in cloud computing that offers:
Runtime environment for application code
Development frameworks
Middleware, databases, and monitoring tools
Deployment and scalability automation
Cloud Computing Notes Prof. Sekhar Anasani
This helps developers focus solely on writing code while the platform handles provisioning, scaling,
and managing the application infrastructure.
🔑 Think of it as a ready-to-use platform where you write your code, and the rest is taken care of—just like
uploading a video to YouTube without worrying about server storage or bandwidth.
🧩 2.6.2 Key Components of a Cloud Application Platform
Component Description
Application Runtime Environment for executing app code (e.g., Java, Python, [Link])
Development Tools Code editors, debuggers, CI/CD pipelines
Middleware Services like messaging, caching, or queuing systems
Database Services Integrated managed databases (SQL/NoSQL)
Scalability Tools Auto-scaling, load balancing
Monitoring & Logs Tools to track app health, performance, and debug issues
Security Services Authentication, access control, certificates
🚀 2.6.3 Benefits of Using Cloud Application Platforms
Rapid Development: No need to set up servers or manage updates.
Built-in Scalability: Apps can scale based on user demand automatically.
Cost Efficiency: Pay for only what you use (no need to overprovision hardware).
Multi-language Support: Build in Java, Python, Ruby, PHP, .NET, and more.
Managed Services: Use built-in databases, storage, messaging, etc.
DevOps Integration: Easily integrate with Git, Jenkins, Docker, etc.
2.6.4 Examples of Cloud Application Platforms
Cloud Computing Notes Prof. Sekhar Anasani
Provider Platform Description
Google App Engine Fully managed serverless platform
Microsoft Azure App Service Run web, mobile, and API apps in the cloud
Amazon Elastic Beanstalk Auto-manages infrastructure, scaling, and monitoring
Heroku Heroku Platform Developer-friendly PaaS supporting multiple languages
Red Hat OpenShift Kubernetes-based open-source platform for containers
📘 2.6.5 Working of a Cloud Application Platform (Typical Flow)
1. Code Upload: Developer uploads source code using CLI or Git.
2. Build Phase: Platform builds and compiles the app.
3. Provisioning: Resources (compute, storage, network) are allocated automatically.
4. Deployment: The app is launched and made available via a public URL.
5. Scaling: Traffic increases? The platform adds more instances.
6. Monitoring: Logs, performance metrics, error reports are continuously tracked.
7. Updates: Code changes are pushed, and updates are rolled out without downtime.
2.6.6 Use Cases of Cloud Application Platforms
Web Applications: E-commerce sites, SaaS products, blogs.
Mobile Backend Services: API management, user authentication.
IoT Platforms: Collect and analyze sensor data.
AI/ML Apps: Deploy trained models with cloud ML tools.
Dev/Test Environments: Quickly test new app features in isolated environments.
⚖️2.6.7 PaaS vs IaaS vs SaaS
Cloud Computing Notes Prof. Sekhar Anasani
Feature IaaS PaaS SaaS
Manages Infrastructure ✅ ❌ ❌
Offers Dev Environment ❌ ✅ ❌
Provides Complete Software ❌ ❌ ✅
Example AWS EC2 Google App Engine Gmail, Salesforce
⚠️2.6.8 Challenges with Cloud Application Platforms
Limited Control: Developers have less access to OS-level configurations.
Vendor Lock-In: Switching between platforms is hard due to unique APIs.
Scalability Costs: Auto-scaling may lead to unexpected billing.
Platform Constraints: Supported languages, frameworks, or runtime versions may be limited.
✅ 2.6.9 Best Practices
Design cloud-native apps that are loosely coupled and scalable.
Use CI/CD pipelines for automated deployment and testing.
Integrate monitoring from day one to track performance.
Avoid vendor-specific dependencies where possible.
Secure your application using IAM roles and data encryption.
📘 2.6.10 Summary
Cloud application platforms (PaaS) provide a complete dev and runtime environment.
They abstract infrastructure complexities and streamline development.
Examples include Google App Engine, Azure App Service, Heroku, and AWS Elastic Beanstalk.
While extremely beneficial, they come with their own challenges like control limitations and vendor
lock-in.
Cloud Computing Notes Prof. Sekhar Anasani
✅ 2.6.11 Review Questions
1. What is a Cloud Application Platform, and how does it differ from IaaS?
2. Mention any three advantages of using a PaaS.
3. List any two real-world platforms that offer cloud-based application development.
4. What are the main components of a cloud application platform?
5. Explain one common challenge of using PaaS and how it can be addressed.
Chapter 2.7 – Cloud Deployment Models
Cloud deployment models define how cloud services are made available to users and how infrastructure
is owned, accessed, and managed. Understanding the various deployment models is essential to
selecting the right cloud strategy for a business.
This chapter discusses the four main cloud deployment models: Public, Private, Community, and
Hybrid clouds. We’ll also explore their characteristics, advantages, and use cases.
☁️2.7.1 What is a Deployment Model?
A deployment model determines where the cloud infrastructure resides, who controls it, and how
services are delivered to users. It answers questions like:
Who owns the infrastructure?
Who manages it?
Who has access to it?
Where is it located?
🌐 2.7.2 Public Cloud
Definition:
Cloud Computing Notes Prof. Sekhar Anasani
A Public Cloud is a cloud environment operated by a third-party provider. Services are delivered over
the Internet and shared across multiple tenants (organizations or individuals).
Key Characteristics:
Owned and managed by external providers (e.g., AWS, Microsoft Azure, Google Cloud).
Multi-tenant architecture (resources shared among users).
Highly scalable and cost-effective.
Pay-as-you-go pricing.
Advantages:
No capital investment in infrastructure.
Quick provisioning and deployment.
Access to a broad range of services.
High scalability and elasticity.
Use Cases:
Startups and SMEs needing fast scalability.
Web hosting, storage, and test environments.
🏢 2.7.3 Private Cloud
Definition:
A Private Cloud is a cloud environment operated exclusively for a single organization. It can be hosted
on-premise or by a third party.
Key Characteristics:
Single-tenant architecture (dedicated to one organization).
Greater control and customization.
Enhanced security and privacy.
Cloud Computing Notes Prof. Sekhar Anasani
Advantages:
Better compliance with regulatory standards.
Custom configuration of hardware and software.
Improved data security.
Use Cases:
Government and financial institutions.
Businesses handling sensitive data (e.g., healthcare, banking).
🧑🤝🧑 2.7.4 Community Cloud
Definition:
A Community Cloud is shared by several organizations with similar requirements or objectives. It may
be managed internally or by a third-party provider.
Key Characteristics:
Shared infrastructure among organizations with common concerns (e.g., compliance, security).
Supports collaborative projects and initiatives.
Can be on-premise or hosted externally.
Advantages:
Cost-sharing between organizations.
Better compliance for a specific industry or community.
Encourages collaboration.
Use Cases:
Research institutions sharing computing power.
Healthcare organizations with shared compliance needs.
Cloud Computing Notes Prof. Sekhar Anasani
🔄 2.7.5 Hybrid Cloud
Definition:
A Hybrid Cloud combines two or more deployment models (public, private, or community) connected
through technology that enables data and application portability.
Key Characteristics:
Integration of private and public cloud environments.
Data and apps move between environments as needed.
Enables workload optimization.
Advantages:
Greater flexibility and scalability.
Cost-efficiency for dynamic workloads.
Better disaster recovery and backup solutions.
Use Cases:
Enterprises needing on-premise security with public cloud scalability.
Seasonal businesses with fluctuating demand.
⚖️2.7.6 Comparative Summary
Public Private Community Hybrid
Feature
Cloud Cloud Cloud Cloud
Ownership Third-party Single org Multiple orgs Mixed
Cost Low upfront High upfront Shared Medium
Control Low High Medium Medium
Cloud Computing Notes Prof. Sekhar Anasani
Public Private Community Hybrid
Feature
Cloud Cloud Cloud Cloud
Scalability High Limited Moderate High
Security Moderate High High High
Customization Low High Medium Medium
💡 2.7.7 Choosing the Right Deployment Model
Factors to consider:
Security requirements – Is data sensitive or regulated?
Budget constraints – Can you afford private infrastructure?
Scalability needs – Do you expect fluctuating workloads?
Management expertise – Do you have in-house cloud skills?
Regulatory compliance – Are there industry-specific laws?
✅ 2.7.8 Review Questions
1. What is the difference between public and private cloud deployment models?
2. When would a hybrid cloud model be most appropriate?
3. List one advantage and one limitation of community cloud.
4. Why is the public cloud suitable for startups?
5. What are the key factors to consider when choosing a deployment model?
Conclusion:
Cloud Computing Notes Prof. Sekhar Anasani
Cloud computing is transforming the way we build and use technology. This book provides a foundation for
understanding this exciting and rapidly evolving field. By grasping the core concepts, examining different deployment
models, and comprehending the crucial security aspects, you can confidently navigate the world of cloud computing and
leverage its power to create innovative solutions and drive business success. The case study on AWS provides a practical
hands-on perspective, solidifying your understanding and preparing you for real-world implementation.
UNIT 3: CLOUD SOLUTIONS
🔷 1. GLOBAL CLOUD INFRASTRUCTURE
✅ Definition:
Global cloud infrastructure refers to the vast network of interconnected data centers and cloud resources spread
across the globe. It is the backbone of cloud computing, enabling users to deploy applications and services with low
latency, high availability, and geographic redundancy.
🌍 Key Components:
1.1 Regions:
A region is a geographically distinct location where cloud services are provided.
Each region can contain multiple availability zones.
Examples:
o AWS Mumbai (ap-south-1)
o Azure Southeast Asia
o GCP Asia-South1
1.2 Availability Zones (AZs):
Physically separate data centers within a region.
Each AZ is isolated but connected via low-latency links.
Helps in building fault-tolerant applications.
1.3 Edge Locations:
Serve Content Delivery Networks (CDNs) like CloudFront.
Cloud Computing Notes Prof. Sekhar Anasani
Located closer to end-users to ensure faster content delivery.
1.4 Latency-Based Routing:
Routes the request to the nearest and fastest server based on the user’s location.
🧠 Real-World Scenario:
Imagine hosting a mobile app used globally. By deploying it in multiple regions (e.g., US, Europe, India), users
experience low latency and quick access. If one region fails, others still serve the app.
🔷 2. CLOUD STORAGE
✅ What is Cloud Storage?
Cloud storage allows users to store, manage, and access data remotely through internet-enabled services. It removes the
need for physical drives and offers scalability, backup, and disaster recovery.
📦 Types of Storage:
2.1 Object Storage:
Stores data as objects (data + metadata).
Ideal for unstructured data (images, audio, video).
Highly scalable and cost-effective.
📌 Example: AWS S3, GCP Cloud Storage
2.2 Block Storage:
Divides data into blocks, each with a unique ID.
Suited for OS-level access, like installing software or hosting databases.
📌 Example: Amazon EBS, Azure Disk Storage
2.3 File Storage:
Offers shared file systems accessible over a network.
Cloud Computing Notes Prof. Sekhar Anasani
Mimics traditional storage via folders/directories.
📌 Example: Amazon EFS, Azure Files
🌟 Benefits:
Data replication ensures durability.
Auto-scaling based on usage.
Cost-efficient: Pay-as-you-go model.
Integrated with cloud backup and lifecycle policies.
🔷 3. CLOUD COMPUTE SERVICES
✅ What is Compute?
Compute services provide the processing power (CPU, memory, network) to run applications and workloads in the
cloud.
Types of Cloud Compute Services:
3.1 Virtual Machines (VMs):
Fully configurable server environments.
Includes OS, storage, networking.
Suitable for traditional apps, development servers.
📌 Example: AWS EC2, Azure Virtual Machines
3.2 Containers:
Lightweight, isolated environments sharing the same OS kernel.
Fast start-up and minimal overhead.
Managed via Kubernetes, Docker Swarm.
📌 Example: AWS ECS, GCP GKE
Cloud Computing Notes Prof. Sekhar Anasani
3.3 Serverless Compute:
Runs code without managing servers.
Automatically scales and charges per execution.
📌 Example: AWS Lambda, Azure Functions
🔄 Elastic Compute:
Scale resources dynamically.
Example: Auto-scaling EC2 during traffic spikes.
🔷 4. CLOUD DATABASES
✅ What is a Cloud Database?
A fully managed database service hosted in the cloud. It offloads the overhead of setup, maintenance, backups,
patching, and scalability.
📚 Types of Cloud Databases:
4.1 Relational Databases:
Structured data in tables with rows and columns.
Use SQL.
Examples: Amazon RDS (MySQL, PostgreSQL), Azure SQL
4.2 NoSQL Databases:
Schema-less; stores unstructured/semi-structured data.
Key-value pairs, document, graph, column stores.
Examples: MongoDB Atlas, DynamoDB, Cassandra
4.3 In-Memory Databases:
Data stored in RAM for extremely fast access.
Cloud Computing Notes Prof. Sekhar Anasani
Ideal for caching, real-time analytics.
Examples: Redis, Memcached
📈 Features:
High availability (multi-AZ replication).
Disaster recovery (automated snapshots).
Horizontal/vertical scaling.
Security (encryption, access controls).
🔷 5. CLOUD NETWORKING
✅ Definition:
Cloud networking enables secure and scalable communication between cloud resources, applications, and external
users.
🌐 Core Networking Services:
5.1 Virtual Private Cloud (VPC):
An isolated network environment in the cloud.
Allows you to define IP ranges, subnets, routing.
5.2 Load Balancers:
Distributes traffic to ensure high availability.
Types: Application Load Balancer, Network Load Balancer.
5.3 DNS Services:
Translates domain names into IP addresses.
Examples: Amazon Route 53, Google Cloud DNS
5.4 VPN and Direct Connect:
Cloud Computing Notes Prof. Sekhar Anasani
Securely connect on-premises data centers to cloud.
Use encrypted tunnels or leased lines.
5.5 CDN:
Deliver content from the nearest location using Edge Nodes.
Reduces latency and load on servers.
🔷 6. ELASTICITY, HIGH AVAILABILITY, AND MONITORING
✅ Elasticity:
System’s ability to scale automatically based on demand.
Achieved via:
o Auto Scaling Groups (EC2)
o Serverless (Lambda)
o Kubernetes pods
✅ High Availability (HA):
Ensures app remains operational even during failures.
Techniques:
o Multi-AZ and multi-region deployment
o Load balancers for failover
o Redundant hardware
✅ Monitoring:
Track performance, logs, alerts.
Tools:
o AWS CloudWatch
Cloud Computing Notes Prof. Sekhar Anasani
o Azure Monitor
o GCP Stackdriver
📊 Monitoring Metrics:
CPU/Memory usage
API response times
Error rates
System logs and event triggers
🔷 7. MICROSOFT & SERVERLESS ARCHITECTURE
🧩 Microservices Architecture:
✅ What is it?
Application is divided into independent services.
Each service has its own database and performs a single function.
🔍 Characteristics:
Decentralized, loosely coupled
Independent deployment
Enhances agility and fault tolerance
🔄 Example Stack:
Frontend: [Link]
Auth service: [Link] + MongoDB
Product service: Java + MySQL
Managed by: Kubernetes
🌀 Serverless Architecture:
Cloud Computing Notes Prof. Sekhar Anasani
✅ Definition:
No server management.
Write code → deploy → cloud provider handles execution, scaling, availability.
⚙️Key Components:
Functions-as-a-Service (FaaS): Code triggered by events.
Event Sources: HTTP, file upload, cron jobs.
Backend Services: Database, queue, notifications.
🧾 Use Cases:
Chatbots
Image upload processors
API backends
CRON jobs (scheduled tasks)
📌 COMMON CLOUD SERVICES TABLE:
Function AWS Azure GCP
Compute EC2, Lambda VM, Functions GCE, Cloud Functions
Storage S3, EBS Blob, Disk Cloud Storage
DB RDS, DynamoDB SQL DB, Cosmos Cloud SQL, Firestore
Networking VPC, Route53 VNet, Traffic Manager VPC, Cloud DNS
Monitoring CloudWatch Monitor Stackdriver
📚 10-MARK EXAM QUESTIONS:
1. Explain the concept of elasticity and high availability with examples.
2. Compare Microservices and Serverless architecture.
Cloud Computing Notes Prof. Sekhar Anasani
3. Describe the architecture and use of cloud databases in detail.
4. What are the different types of cloud storage? Explain each with examples.
5. How is global cloud infrastructure designed for performance and reliability?
6. Explain how auto-scaling and monitoring work in cloud environments.
7. Describe networking components in cloud with real-time use cases.
8. What are containers? How do they support scalable microservices?
UNIT 4: CLOUD SECURITY
🔐 1. Shared Responsibility Model in Cloud
✅ What is it?
In cloud computing, security is a shared responsibility between the cloud provider (like AWS, Azure, GCP) and the
cloud customer (you, the user or organization).
⚖️Who is responsible for what?
Layer Cloud Provider's Role Customer's Role
Physical Security Data center safety, power, HVAC ❌ Not your concern
Infrastructure Servers, network, storage ❌ Provider manages
Platform Security Virtualization, OS patches (for PaaS) Partial
Application & Data ❌ Not responsible ✅ You must secure
Access Control ❌ Not responsible ✅ You must configure
Compliance Provides tools and certifications Must ensure it’s used correctly
🧠 Example:
Using AWS EC2:
Cloud Computing Notes Prof. Sekhar Anasani
AWS secures the physical servers and hypervisor.
You must secure your operating system, data, firewall rules, and application code.
2. Security Design Principles
To protect cloud environments effectively, you should follow some key security design principles. Think of these as
“best practices” when planning cloud applications.
🔑 Key Principles:
2.1 Least Privilege:
Give users only the permissions they need to do their job.
Prevents unauthorized access and limits damage from insider threats.
2.2 Defense in Depth:
Use multiple layers of security (firewalls, encryption, authentication).
If one layer is breached, others still protect the system.
2.3 Assume Breach:
Design your systems as if they could be attacked at any time.
Always prepare for incident response, monitoring, and recovery.
2.4 Automation:
Use tools to automatically scan for vulnerabilities, patch systems, and enforce policies.
2.5 Secure by Design:
Embed security from the start of development, not after the app is built.
🔐 3. Securing Access to Cloud Resources
✅ What are Cloud Resources?
Cloud Computing Notes Prof. Sekhar Anasani
They include VMs, databases, APIs, storage buckets, containers, and more. Only authorized users should be allowed
to access them.
🧰 How to secure access?
3.1 Identity and Access Management (IAM):
Controls who can access what.
You can assign roles like:
o Admin: Full access
o Read-only: View but can’t change
o DevOps: Modify infrastructure, not billing
3.2 Multi-Factor Authentication (MFA):
Adds a second layer of security (password + OTP or mobile app).
Protects even if your password is stolen.
3.3 Role-Based Access Control (RBAC):
Assign permissions to roles, not individuals. Then assign users to roles.
Easier to manage at scale.
3.4 Temporary Credentials:
Provide short-lived access tokens instead of permanent passwords.
More secure for automation or external systems.
🧱 4. Securing Access to Infrastructure
✅ What is Cloud Infrastructure?
It includes the network, storage systems, virtual machines, and firewalls running your cloud application.
🔐 Key Security Measures:
Cloud Computing Notes Prof. Sekhar Anasani
4.1 Network Security Groups / Firewalls:
Define who can access your servers over the internet or private network.
Example: Allow port 443 (HTTPS), block port 22 (SSH) to public.
4.2 Bastion Hosts / Jump Servers:
Special VMs used to access other infrastructure securely.
Reduces the risk of direct exposure of critical servers.
4.3 Virtual Private Cloud (VPC):
Create isolated networks in the cloud.
Control subnets, IP ranges, routing, NAT, and gateways.
4.4 Encryption:
Protects data at rest (disk) and in transit (over network).
Uses technologies like SSL/TLS and KMS (Key Management Services).
4.5 Patch Management:
Regularly update systems to fix vulnerabilities.
Use automation tools to push patches.
🧾 5. Protecting Data in the Cloud
✅ Why is Data Protection important?
Your customer data, business secrets, or personal files must be protected from:
Unauthorized access
Leakage
Loss or corruption
🔐 How to Protect Cloud Data:
5.1 Data Classification:
Cloud Computing Notes Prof. Sekhar Anasani
Understand what kind of data you're storing:
o Public: Can be shared openly
o Internal: Limited to the company
o Confidential: Needs strong protection
5.2 Encryption:
At rest: Stored data on disks is encrypted (e.g., S3 buckets).
In transit: Use HTTPS, TLS to encrypt data over the network.
5.3 Backup and Disaster Recovery:
Regularly back up your data and test recovery processes.
Use multiple regions or zones for redundancy.
5.4 Data Loss Prevention (DLP) Tools:
Scans emails, files, and storage for sensitive content leaks.
Prevents uploading or sharing of private data accidentally.
📊 6. Logging and Monitoring
✅ Why Logging & Monitoring?
They help in detecting attacks, troubleshooting problems, and ensuring compliance with regulations.
📋 Key Components:
6.1 Logging:
Collect activity logs (e.g., who accessed what, and when).
Types of logs:
o Access logs (API access, login events)
o Audit logs (who made changes to infrastructure)
o System logs (OS-level operations)
Cloud Computing Notes Prof. Sekhar Anasani
6.2 Monitoring:
Continuously track system health and usage:
o CPU usage
o Memory, disk, network traffic
o Error rates or failed login attempts
🧠 Tools & Services:
Cloud Logging Monitoring
AWS CloudTrail CloudWatch
Azure Activity Logs Azure Monitor
GCP Audit Logs Stackdriver
🚨 Alerting:
Automatically notify admins if something unusual happens.
Example: Too many failed logins from a foreign country.
📚 Summary Table:
Security Area Key Concepts
Shared Responsibility Cloud Provider handles infra; customer handles data, access, apps
Design Principles Least privilege, automation, defense in depth
Access Security IAM, MFA, RBAC, temporary tokens
Infrastructure Security Firewalls, VPC, bastion hosts, encryption
Data Protection Encryption, backups, DLP, classification
Logging & Monitoring Detect threats, audit activities, alert issues
Cloud Computing Notes Prof. Sekhar Anasani
Security Area Key Concepts
📝 5- and 10-Mark Exam Questions:
1. Explain the shared responsibility model in cloud security with suitable examples.
2. List and explain any five security design principles used in cloud environments.
3. What are IAM roles? How do they help in securing access to cloud resources?
4. Describe how cloud infrastructure can be secured using network and VPC concepts.
5. What measures are taken to protect data stored in the cloud?
6. Discuss the role of logging and monitoring in cloud security.
7. Differentiate between encryption at rest and in transit.
8. Describe the importance of multi-factor authentication (MFA) in cloud security.
UNIT 5: CASE STUDY – AWS Cloud Implementation
🏢 Case Study Title:
"Scalable E-Commerce Platform Deployment on AWS"
📌 Objective:
To design and implement a scalable, secure, and highly available cloud infrastructure for an online e-
commerce application using AWS services including networking, content delivery, auto-scaling, load balancing,
storage, and database solutions.
Scenario Overview:
An online retail company, CloudKart, wants to host its e-commerce platform on AWS. The key goals are:
Fast and reliable website performance worldwide.
Cloud Computing Notes Prof. Sekhar Anasani
Automatic scaling during high traffic (e.g., sales/festive seasons).
Data storage for product images, customer data, transactions.
Database management for user profiles, orders, inventory.
High availability and disaster recovery.
Secure network access and traffic management.
🧩 AWS Services Used:
Category Service Used
Networking Amazon VPC, Route 53
Content Delivery Amazon CloudFront
Auto Scaling AWS Auto Scaling
Load Balancing Elastic Load Balancer (ELB)
Storage Amazon S3
Database Amazon RDS (MySQL), Amazon DynamoDB
🔷 1. Networking – Amazon VPC & Route 53
✅ Amazon Virtual Private Cloud (VPC):
A private and isolated network in AWS used to host all cloud resources securely.
Subnets were created:
o Public subnet: For web servers (accessible via internet).
o Private subnet: For database servers (not directly accessible from internet).
Internet Gateway attached for external traffic.
Security Groups and Network ACLs were configured for access control.
✅ Amazon Route 53:
Cloud Computing Notes Prof. Sekhar Anasani
Used for DNS management.
Maps domain name [Link] to the Load Balancer IP.
Supports latency-based routing to serve users from the nearest region.
🌐 2. Content Delivery – Amazon CloudFront
✅ Purpose:
To cache and deliver static content (images, JS, CSS) faster to users globally.
✅ Implementation:
CloudFront was connected to Amazon S3 for serving product images.
It created Edge Locations worldwide to deliver content with low latency.
Enabled HTTPS for secure delivery.
🎯 Result:
Page load time decreased by 60%, even for users in remote regions.
🔄 3. Auto Scaling – AWS Auto Scaling Group
✅ Purpose:
To automatically add or remove servers based on traffic load.
✅ Configuration:
Set thresholds:
o Add new EC2 instance if CPU > 70%
o Remove instance if CPU < 30%
Attached to the application server layer.
🧠 Benefit:
During festive sales, servers scaled up automatically. After the sale, unnecessary servers were removed — saving
costs and improving performance.
Cloud Computing Notes Prof. Sekhar Anasani
⚖️4. Load Balancing – Elastic Load Balancer (ELB)
✅ Purpose:
To distribute incoming user requests evenly across multiple EC2 web servers.
✅ Types:
Used Application Load Balancer (ALB) for HTTP-based routing.
🔧 Configuration:
Health checks enabled (if a server goes down, traffic is diverted).
Integrated with Auto Scaling Group.
🎯 Outcome:
System remained stable even under 20x traffic load. Users never saw errors or delays.
💾 5. Storage – Amazon S3 (Simple Storage Service)
✅ Use Cases:
Storing product images, customer documents, order receipts, static files (HTML/CSS/JS).
Enabled versioning for backup.
Configured S3 lifecycle rules to move old files to Glacier (low-cost archival).
🔒 Security:
Enabled bucket policies and encryption (AES-256).
Access only via CloudFront.
🧠 Benefit:
99.999999999% durability. Cost-effective and easily scalable.
🧮 6. Database Services – Amazon RDS & DynamoDB
✅ Amazon RDS (MySQL):
Cloud Computing Notes Prof. Sekhar Anasani
Used for structured data:
o User accounts
o Orders
o Payments
Enabled Multi-AZ Deployment for high availability.
Daily automated backups and snapshots enabled.
✅ Amazon DynamoDB:
Used for unstructured or high-speed access data:
o Product catalog with dynamic filters
o User cart items
Highly scalable and low latency.
🎯 Combined Benefit:
RDS for consistency and complex queries.
DynamoDB for performance-critical modules.
🔐 Security Measures Implemented:
IAM roles and policies for all services.
MFA for admin accounts.
VPC Security Groups to limit access.
Encrypted S3 buckets and RDS databases.
CloudTrail for logging user activities.
📊 Monitoring and Alerts:
Used CloudWatch to monitor:
o CPU usage, memory, network traffic
Cloud Computing Notes Prof. Sekhar Anasani
o DB connections
Alerts configured for:
o Downtime
o High usage spikes
o Failed login attempts
🧠 Summary of Benefits:
Feature AWS Service Benefit
Networking VPC + Route 53 Secure, reliable DNS and traffic routing
Content Delivery CloudFront Global performance & caching
Scalability Auto Scaling Handles variable traffic
Reliability ELB Zero downtime during server failure
Storage S3 Secure, scalable, low-cost
Database RDS + DynamoDB Balanced performance + reliability
📝 Exam-Based Questions (5/10 Marks)
1. Explain how Auto Scaling and Load Balancing improve cloud application performance using AWS services.
2. What is the role of Amazon CloudFront in content delivery? Describe with a scenario.
3. How does Amazon S3 ensure data durability and security?
4. Describe how Amazon RDS and DynamoDB can be used together in an e-commerce application.
5. Write a case study on deploying a secure and scalable online application using AWS services.
✅ Conclusion:
Cloud Computing Notes Prof. Sekhar Anasani
This case study clearly shows how AWS services can be combined to build resilient, secure, scalable, and cost-
effective cloud applications. It reflects real-world architecture and prepares students for practical projects
and interviews in the cloud computing domain.