0% found this document useful (0 votes)
5 views3 pages

Cloud Computing Module2 Notes

This document provides an overview of cloud computing, focusing on abstraction and virtualization concepts, including the cloud computing stack, communication protocols, and the role of hypervisors. It outlines the benefits and types of virtualization, as well as the process of mapping virtual machines to physical machines. Key topics include the differences between abstraction and virtualization, the layers of the cloud stack, and optimization objectives for resource allocation.

Uploaded by

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

Cloud Computing Module2 Notes

This document provides an overview of cloud computing, focusing on abstraction and virtualization concepts, including the cloud computing stack, communication protocols, and the role of hypervisors. It outlines the benefits and types of virtualization, as well as the process of mapping virtual machines to physical machines. Key topics include the differences between abstraction and virtualization, the layers of the cloud stack, and optimization objectives for resource allocation.

Uploaded by

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

Module 2: Abstraction & Virtualization

Quick Exam Notes — Cloud Computing

1. Cloud Computing Stack

Cloud architecture couples software on virtualized hardware across multiple locations to deliver on-demand services.
The unique combination of abstraction and metered service separates cloud computing from standard n-tiered internet
apps. Described in two layers: Client (front end) and Cloud (backend).

Composability
Building apps from reusable, standardized components. A composable component must be:
• Modular — self-contained, cooperative, reusable, replaceable
• Stateless — transactions execute independently of others

2. Cloud Stack Layers

Infrastructure (IaaS)
Uses virtual machine technology to deliver servers. Virtual servers described as machine images/instances with CPU
cycles, memory, and bandwidth. The VMM (Virtual Machine Monitor / Hypervisor) is low-level software that manages
I/O and memory isolation for VMs.

Platforms (PaaS)
Software layers for creating higher-level services. Cover nearly the full stack except the UI layer. Examples:
• Salesforce [Link] • Windows Azure • Google AppEngine

Virtual Appliances
Applications (e.g., web server, DB server) packaged with an OS to run on VMs. They occupy the middle of the cloud
stack. Easier to deploy but larger in size — a 50–100MB app may need a 500MB–1GB appliance.

3. Communication Protocols

Protocol Description

HTTP / HTTPS Foundation of all cloud communication

XML-RPC First web-centric RPC; encodes calls in XML over HTTP

SOAP Replaced XML-RPC; uses XML + HTTP; basis of most web services

WSDL W3C standard; describes/discovers web services via endpoints/ports

DCOM / CORBA Platform-specific RPC specs for component interoperability

Assigns URIs to resources; uses HTTP commands (GET, PUT, etc.) for stateless
REST
exchange

4. Abstraction vs. Virtualization

Aspect Abstraction Virtualization


Hides background details; shows only essential
Definition Creates virtual versions of hardware/OS/storage
features

Divides/shares physical resources among multiple


Purpose Simplifies interfaces for users/developers
environments

Detail hiding Always hides low-level details Does NOT always hide low-level details

Role in cloud Core feature; hides physical implementation Fundamental component; enables IaaS

5. Virtualization

Creating a virtual version of hardware, OS, or storage. Allows multiple VMs on one physical machine. Concept dates
to the 1960s (IBM mainframes). Virtualization is supported by the hypervisor.

Benefits
• Flexible & efficient resource allocation
• Lowers IT infrastructure cost
• Remote access and rapid scalability
• High availability and disaster recovery
• Pay-per-use model
• Enables multiple OS on one machine

Types of Virtualization
• Application Virtualization — Remote access to apps from a server (hosted / packaged apps)
• Network Virtualization — Multiple virtual networks on one physical network — logical switches, VPNs, firewalls
• Desktop Virtualization — OS stored remotely; accessible from any location on any device
• Storage Virtualization — Multiple storage sources managed as one unified repository
• Server Virtualization — One physical server divided into multiple virtual servers, each with its own OS
• Data Virtualization — Retrieve data from various sources regardless of type or physical location

6. Hypervisors

Software that isolates OS and applications from hardware; allows multiple guest OSes (VMs) to run simultaneously on
one host. Dates back to the 1960s; became mainstream in 2005 when CPU vendors added hardware virtualization
support.

Type 1 — Bare Metal / Native Hypervisor


Runs directly on hardware (no host OS in between).
• Examples: VMware ESXi, Microsoft Hyper-V, Oracle VM, Xen
• Pros: Highly efficient (direct hardware access), inherently secure
• Cons: Needs a dedicated separate machine

Type 2 — Hosted Hypervisor


Runs as an application on a host OS.
• Examples: VirtualBox, VMware Workstation, KVM, QEMU, Parallels Desktop
• Pros: Easy setup; useful for dev/testing environments
• Cons: Lower performance; security risk if host OS is compromised

Benefits of Hypervisors
• Speed — VMs built instantly; simplifies resource provisioning
• Efficiency — Multiple VMs share one physical machine's resources
• Flexibility — OS decoupled from hardware; runs on various hardware types
• Portability — VMs are separate from physical hardware and easily moved

7. VM-to-Physical Machine Mapping

A two-phase process for allocating virtual machines to physical machines:

Phase 1 — VM Configuration (VM Config Manager)


Determines VM specs (number, size, resources). Aims to avoid:
• Over-provisioning — more resources than needed → resource wastage
• Under-provisioning — fewer resources than needed → performance degradation

Phase 2 — VM Placement (VM Placement Manager)


Maps VMs to PMs optimally. Two sub-problems:
• Initial Placement — allocates new VMs to PMs; formulated as an NP-hard integer programming problem
• VM Reallocation / Migration — reshuffles VMs as workloads change; must balance migration cost vs. gain

Triggers for Reallocation


• Event-driven — new VM requests, terminations, resize requests
• Periodic — invoked at predefined scheduled intervals
• Hybrid — combination of event-driven and periodic

Optimization Objectives

Objective Details

Resource Utilization Host consolidation, workload balancing, workload concentration

Minimize operating cost; maximize profit. Factors: infrastructure cost, SLA


Monetary / Cost
penalties, revenue

Minimize active machines; Dynamic Voltage & Frequency Scaling (DVFS); thermal
Energy Consumption
management

Good luck on your exam! ■

You might also like