0% found this document useful (0 votes)
204 views89 pages

MCA Cloud Computing

The document is a comprehensive overview of cloud computing, covering its history, architecture, deployment models, security, and practical applications. It is designed for a diverse audience, including students, IT professionals, and business leaders, and includes detailed units on various aspects of cloud technology. The content also features case studies, real-world examples, and review questions to enhance understanding of cloud computing concepts.

Uploaded by

Sekhar Anasani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
204 views89 pages

MCA Cloud Computing

The document is a comprehensive overview of cloud computing, covering its history, architecture, deployment models, security, and practical applications. It is designed for a diverse audience, including students, IT professionals, and business leaders, and includes detailed units on various aspects of cloud technology. The content also features case studies, real-world examples, and review questions to enhance understanding of cloud computing concepts.

Uploaded by

Sekhar Anasani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

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.

You might also like