Cloud Computing Study Guide

Unit 1: Introduction to Cloud Computing, Layers, Types, and Service Models

Q1. Define cloud computing, list its main advantages and explain its key features

Definition

Cloud computing is the delivery of computing servicesβ€”such as servers, storage, databases, networking, software, and analyticsβ€”over the internet ("the cloud") instead of local infrastructure.

Main Advantages (think why companies use it)

Key Features

Quick check: Can you think of one real-life app (like Google Drive, AWS, or Zoom) and explain which two features of cloud it clearly shows?

Q2. Discuss layers and types of clouds with deployment models and detailed examples

Layers of Cloud (Service Models)

  1. Infrastructure as a Service (IaaS): Provides virtual machines, storage, networks.
    Example: AWS EC2, Google Compute Engine
  2. Platform as a Service (PaaS): Provides tools + platforms for developers.
    Example: Google App Engine, Microsoft Azure App Services
  3. Software as a Service (SaaS): Ready-to-use applications via browser.
    Example: Gmail, Salesforce, Office 365

Types / Deployment Models

Your turn: If your college wanted a cloud for online exams, which model (public/private/hybrid) would you suggest and why?

Q3. Main challenges in cloud infrastructure management

Managing cloud is not easy. Challenges include:

Think about it: Which of these would be the biggest concern for a hospital moving patient records to the cloud?

Q4. Common Cloud Computing Applications

Cloud computing is widely used in daily life across various applications:

Explanation: Each of these uses the cloud to provide on-demand access, data synchronization across devices, scalability, and reduced cost for the end user.

Q5. Utility Computing vs. Cloud Computing

Utility Computing

  • Concept: Computing resources provided and charged like a utility (electricity/water)
  • Focus: Pay-per-use model
  • Example: Early data centers offering CPU cycles and storage as a utility

Cloud Computing

  • Broader: Includes utility computing, plus virtualization, elasticity, on-demand self-service
  • Adds: SaaS, PaaS, IaaS layers + deployment models
  • Example: AWS, Azure, Google Cloud (full infrastructure, platforms, and software services)

Key Comparison

Q6. Roles of IaaS, PaaS, and SaaS in the Cloud

These are the three service models in cloud:

  1. IaaS (Infrastructure as a Service)

    • Provides raw infrastructure: servers, storage, networking
    • User controls OS, apps, data
    • Example: AWS EC2, Google Compute Engine
    • Role: Foundation layer for building anything in the cloud
  2. PaaS (Platform as a Service)

    • Provides tools/frameworks for developers (runtime, DB, APIs)
    • User only develops and deploys apps
    • Example: Google App Engine, Microsoft Azure App Services
    • Role: Simplifies app development by abstracting infrastructure
  3. SaaS (Software as a Service)

    • Provides ready-to-use software applications
    • User just logs in and uses
    • Example: Gmail, Office 365, Salesforce
    • Role: Delivers complete applications to end-users

Simple Analogy:

  • IaaS = renting land (you build your house)
  • PaaS = renting a house with utilities ready (you just decorate & live)
  • SaaS = booking a hotel room (everything is ready to use)

Q7. Differentiate between Single-Tenant and Multi-Tenant Applications

Definitions

Single-Tenant Application: Each customer (tenant) has a separate instance of the application and database.

Multi-Tenant Application: A single instance of the application and database serves multiple customers, with logical separation of data.

Key Differences

Aspect Single-Tenant Multi-Tenant
Infrastructure Dedicated resources per customer Shared resources among customers
Cost Higher (maintenance per tenant) Lower (shared cost model)
Customization Easier, since each instance is separate Limited, changes affect all users
Maintenance Complex (separate updates per tenant) Easier (update once for all tenants)
Security Stronger isolation (separate DB) Shared environment, higher risk

Single-Tenant Pros

  • Better security
  • Flexible customization
  • Complete data isolation
  • Independent performance

Single-Tenant Cons

  • Expensive maintenance
  • Resource-heavy
  • Complex updates
  • Higher infrastructure costs

Multi-Tenant Pros

  • Cost-effective
  • Easier maintenance
  • Efficient resource utilization
  • Centralized updates

Multi-Tenant Cons

  • Security concerns
  • Limited customization
  • Performance dependencies
  • Data isolation challenges

Q8. Evolution of SaaS and its Challenges

Evolution of SaaS

  1. 1960s-1970s: Time-sharing systems (early concept of shared computing)
  2. 1990s: Application Service Provider (ASP) model
  3. 2000s: Web-based applications (Salesforce pioneer)
  4. 2010s: Cloud-native SaaS with APIs and integrations
  5. Present: AI-powered, mobile-first, multi-platform SaaS

Challenges in SaaS

Key Insight: SaaS has evolved from simple web applications to sophisticated, AI-enhanced platforms that form the backbone of modern business operations, but this evolution brings complex challenges in security, performance, and integration.

Q9. SaaS Integration Services and How Products and Platforms are Integrated

Definition

SaaS integration services allow cloud-based applications (SaaS products) to connect and work seamlessly with other systems, platforms, or enterprise applications.

Need for Integration

Types of SaaS Integration Services

  1. Data Integration Services: Synchronize and share data across apps.
    Example: Syncing customer info between Salesforce (CRM) and Mailchimp (email)
  2. Process Integration Services: Automate workflows across applications.
    Example: When a new lead is created in CRM, it automatically updates the marketing app
  3. API-Based Integration: Using REST/SOAP APIs for interconnection.
  4. Middleware Solutions: Tools like MuleSoft, Dell Boomi, Zapier act as bridges.

Integration of Products and Platforms

Q10. Virtual Machine Provisioning and Manageability in IaaS

Definition

Virtual Machine (VM) provisioning is the process of creating and configuring virtual machines on cloud infrastructure to meet user/application needs.

Steps in VM Provisioning (in IaaS)

  1. Requesting Resources: User selects CPU, memory, storage, OS
  2. Allocation: Hypervisor allocates physical resources
  3. Deployment: VM image is deployed and booted
  4. Configuration: Networking, security, and software setup
  5. Delivery: Ready-to-use VM is handed to the user

VM Manageability in IaaS

Example: In AWS EC2, users can provision a VM by selecting instance type, OS image (AMI), storage, and networking.

Q11. Virtual Machine Migration Services with Their Importance

Definition

VM migration is the process of moving a running virtual machine from one physical host to another, with minimal downtime.

Types of VM Migration

Importance of VM Migration Services

Example: VMware vMotion and Microsoft Hyper-V Live Migration allow seamless relocation of VMs across servers.

Q12. Use of Load Balancer in Cloud Computing

Definition

A load balancer is a service that distributes incoming workloads and network traffic across multiple servers or resources in a cloud environment.

Uses in Cloud Computing

Example: AWS Elastic Load Balancing (ELB) distributes traffic across EC2 instances in different availability zones.

Q13. Application Porting in Cloud Computing

Definition

Application porting is the process of adapting and modifying an application so it can run in a new cloud environment, different platform, or operating system.

Steps in Application Porting

  1. Assessment: Identify application dependencies and compatibility
  2. Reconfiguration: Adjust code, libraries, or middleware
  3. Migration: Move app data and components to the cloud
  4. Testing: Verify performance, security, and scalability in new cloud
  5. Challenges: Legacy applications may need redesigning due to architecture differences
Example: Porting a traditional on-premise HR management application to Microsoft Azure, requiring modification of database connectors and APIs to integrate with Azure SQL Database.

Q14. Various Layers of Cloud Computing Architecture

Cloud architecture is typically structured in layers, each providing different services:

Architecture Layers

  1. Physical Layer (Infrastructure):
    • Underlying hardware: servers, storage, networks
    • Managed through virtualization
  2. Virtualization Layer:
    • Creates virtual resources (VMs, virtual storage)
    • Managed by hypervisors (VMware, KVM)
  3. Cloud Service Layer:
    • IaaS: Infrastructure services (e.g., AWS EC2)
    • PaaS: Developer platforms (e.g., Google App Engine)
    • SaaS: Applications (e.g., Gmail, Office 365)
  4. Application Layer:
    • End-user facing applications that run on the cloud
    • Example: Zoom, Dropbox
  5. Management Layer:
    • Handles provisioning, monitoring, billing, and resource management
  6. Security Layer (Cross-cutting):
    • Ensures authentication, authorization, data encryption, compliance

Q15. Resource Provisioning Services in PaaS

Definition

Resource provisioning in Platform as a Service (PaaS) is the process of automatically allocating and managing the required computing resources (CPU, memory, storage, runtime, and services) for application deployment.

Key Points

Example: Google App Engine provisions web server instances and database connections automatically when an application experiences high traffic.

Q16. Define Virtualization and Types Used in Cloud Computing

Definition

Virtualization is the process of creating virtual versions of computing resources such as servers, storage, networks, or operating systems, using a hypervisor or virtualization software.

Types of Virtualization in Cloud

  1. Server Virtualization:
    • Multiple virtual servers run on a single physical server
    • Example: VMware ESXi, Microsoft Hyper-V
  2. Storage Virtualization:
    • Combines multiple storage devices into a single logical pool
    • Example: SAN (Storage Area Network)
  3. Network Virtualization:
    • Abstracts physical networking into logical, software-defined networks (SDN)
    • Example: Cisco ACI, VMware NSX
  4. Desktop Virtualization:
    • Runs desktop environments on centralized servers
    • Example: Virtual Desktop Infrastructure (VDI)
  5. Application Virtualization:
    • Applications run in isolated environments without installing locally
    • Example: Citrix XenApp
  6. Memory and I/O Virtualization:
    • Abstracts physical memory or I/O devices for multiple VMs

Q17. Differentiate between Type-1 and Type-2 Hypervisors

Definition

A hypervisor is virtualization software that creates and manages virtual machines by abstracting physical resources. Two categories: Type-1 (bare-metal) and Type-2 (hosted).

Comparison

Feature Type-1 Hypervisor (Bare-Metal) Type-2 Hypervisor (Hosted)
Location Runs directly on hardware Runs on top of an OS
Examples VMware ESXi, Microsoft Hyper-V, Xen Oracle VirtualBox, VMware Workstation
Performance High (direct access to hardware) Lower (extra OS layer overhead)
Use Case Data centers, enterprise servers Personal computers, testing labs
Scalability Highly scalable Limited scalability

Type-1 Advantages

  • Better performance
  • Enhanced security
  • Efficient resource utilization
  • Enterprise-grade scalability

Type-1 Disadvantages

  • Requires dedicated hardware
  • More complex to set up
  • Higher initial cost
  • Needs specialized knowledge

Type-2 Advantages

  • Easy to install
  • Good for development and testing
  • Lower cost for small setups
  • User-friendly interface

Type-2 Disadvantages

  • Slower performance
  • Less secure for large-scale cloud use
  • Resource overhead from host OS
  • Limited enterprise features

Q18. Virtual Machines and Their Role in Cloud Computing

Definition

A Virtual Machine (VM) is a software-based emulation of a physical computer, running its own operating system and applications, isolated from the underlying hardware.

Role in Cloud Computing

Example: AWS EC2 instances are virtual machines that provide on-demand computing capacity in the cloud.

Q19. Machine Imaging and Its Importance in Cloud Environments

Definition

A machine image is a pre-configured snapshot of a virtual machine, containing an operating system, software, configurations, and application data.

Importance in Cloud Environments

Example: Amazon Machine Images (AMIs) are used to launch EC2 instances with pre-installed OS and applications.

Q20. Virtual Cluster: Benefits and Resource Management Role

Definition

A virtual cluster is a group of virtual machines (VMs) interconnected through a virtual network, behaving like a physical cluster but running on shared underlying hardware.

Benefits

Resource Management Role

Example: Hadoop clusters deployed on VMware or AWS EMR run as virtual clusters for big data processing.

Q21. Virtualization of CPU, Memory, and I/O Devices

1. CPU Virtualization

2. Memory Virtualization

3. I/O Virtualization

Overall Impact on Cloud Data Centers

Q22. Resource Management and Virtualization for Data Center Automation

Resource Management in Cloud Data Centers

Virtualization Role in Automation

Importance

Example: Google Cloud and AWS use orchestration + virtualization to automatically scale resources for applications like Gmail and Netflix.