Mod 2 part 1
Mod 2 part 1
20S215
Cloud Computing
III B.E-CSE &
III M.TECH
-CSE
2024-2025
B.MATHIVANAN
SREC
20CS215 – CLOUD COMPUTING
COURSE OUTCOMES:
On successful completion of the course, students will be able to
CO1: Show the progression of cloud computing from virtualization
to containerization. PO6, PO7, PO12
CO2: Understand cloud computing architecture, virtualization and
cloud security. PO6, PO7, PO12
CO3: Construct SLA compliance for cloud computing PO6, PO7,
PO12
CO4: Compare docker and kubernetes for cloud containerization
and workload management. PO6, PO7, PO12
VIRTUAL MACHINES AND VIRTUALIZATION 9
4
Virtualization
is the creation of a virtual (rather than actual) version of
something, such as a hardware platform, operating system, a
storage device or network resources
* 5
Virtualization
Virtualization is used to improve IT throughput by using physical
resources as a pool from which virtual resources can be
allocated.
* 6
Virtualization
Concept is not new. Multi Programming – Each Process thinks it
has complete control on all of the resources.
Virtual Memory CPU Sharing
Similarities and Differences
with Multiprogramming
Multi Programming
CPU is shared among processes
Memory is shared using Page Tables.
Virtualization
CPU is shared among OSs.
* 7
The Virtual Server
•A virtual server, also known as a virtual machine (VM), is a
partitioned space inside a real server and is transparent to
users, replicating the functionality of a dedicated physical
server.
* 8
The Virtual Server Concept
• Virtual servers seek to encapsulate the server software away from
the hardware
• This includes the OS, the applications, and the storage for that server.
* 9
The Virtual Server Concept
* 11
The Virtual Server Concept
• Virtual servers can be scaled out easily.
• If the administrators find that the resources supporting a virtual server
are being taxed too much, they can adjust the amount of resources
allocated to that virtual server
* 12
The Virtual Server Concept
• Pros • Cons
• Resource pooling • Slightly harder to conceptualize
• Highly redundant • Slightly more costly (must buy
• Highly available hardware, OS, Apps, and now the
• Rapidly deploy new servers abstraction layer)
• Easy to deploy
• Reconfigurable while services
are running
• Optimizes physical resources
by doing more with less
* 13
Virtualization Architecture
•A Virtual machine (VM) is an isolated runtime
environment (guest OS and applications)
•Multiple virtual systems (VMs) can run on a single
physical system
* 14
Hypervisors and Virtual Machines
Server Server
1 2 Clustering
Guest Guest
OS OS Service
Console
Hypervisor
x86 Architecture
Intercepts
hardware
requests
* 15
•A hypervisor or virtual machine monitor (VMM) is computer
software, firmware or hardware that creates and runs virtual
machines.
16
16
Hypervisor
• Each guest operating system appears to have the host's processor,
memory, and other resources all to itself.
* 17
Hypervisor:
•Hardware Virtualization.
•Operating system Virtualization.
•Server Virtualization.
•Storage Virtualization.
* 21
Hardware Virtualization
•When the virtual machine software or virtual machine
manager (VMM) is directly installed on the hardware system is
known as hardware virtualization.
Usage:
•mainly done for the server platforms, because controlling virtual
machines is much easier than controlling a physical server.
* 22
Operating System Virtualization
•When the virtual machine software or virtual machine
manager (VMM) is installed on the Host operating system instead of
directly on the hardware system is known as operating system
virtualization.
Usage:
•Operating System Virtualization is mainly used for testing the
applications on different platforms of OS.
* 23
Server Virtualization
•When the virtual machine software or virtual machine
manager (VMM) is directly installed on the Server system is known
as server virtualization.
Usage:
•Server virtualization is done because a single physical server can be
divided into multiple servers on the demand basis and for balancing
the load.
* 24
Storage Virtualization
•Storage virtualization is the process of grouping the physical storage
from multiple network storage devices so that it looks like a single
storage device.
•Storage virtualization is also implemented by using software
applications.
Usage:
•Storage virtualization is mainly done for back-up and recovery
purposes.
* 25
Benefits of Virtualization
• Sharing of resources helps cost reduction
• Isolation: Virtual machines are isolated from each other as if they are
physically separated
• Encapsulation: Virtual machines encapsulate a complete computing
environment
• Hardware Independence: Virtual machines run independently of
underlying hardware
• Portability: Virtual machines can be migrated between different hosts.
* 26
Implementation levels of virtualization
* 27
ISA
An Instruction Set Architecture (ISA) is part of the abstract model
of a computer that defines how the CPU is controlled by the
software.
* 28
Implementation levels of virtualization
1) Instruction Set Architecture Level (ISA):
•For example, MIPS binary code can run on an x86-based host machine
with the help of ISA emulation.
* 29
Implementation levels of virtualization
• A virtual instruction set architecture (V-ISA) thus requires adding a
processor-specific software translation layer to the compiler.
* 30
Implementation levels of virtualization
2) Hardware Abstraction Level (HAL):
•On the other hand, the process manages the underlying hardware
through virtualization.
•At the level of the OS, the virtualization model is capable of creating a
layer that is abstract between the OS and the application.
•This is an isolated container on the OS and the physical server, which uses
the software and hardware. Each of these then functions in the form of a
server.
•When there are several users & no one wants to share the hardware, then
this is where the virtualization level is used. Every user will get his virtual
environment using a dedicated virtual hardware resource. In this way,
there is no question of any conflict
* 32
Implementation levels of virtualization
4) Library Level:
•These APIs are documented well, and this is why the library virtualization
level is preferred in these scenarios.
* 33
Implementation levels of virtualization
5) Application Level:
•One does not need to virtualize the entire environment of the platform.
•This is generally used when you run virtual machines that use high-level
languages. The application will sit above the virtualization layer, which in
turn sits on the application program.
• Hypervisor Architecture
• The hypervisor software sits directly between the physical hardware and its OS.
This virtualization layer is referred to as either the VMM or the hypervisor.
• The hypervisor provides hyper calls for the guest OSes and applications.
* 35
VIRTUALIZATION STRUCTURES / TOOLS AND
MECHANISMS
• Depending on the functionality, a hypervisor can assume a micro-kernel
architecture like the Microsoft Hyper-V. Or it can assume a monolithic hypervisor
architecture like the VMware ESX for server virtualization.
* 36
VIRTUALIZATION STRUCTURES / TOOLS AND
MECHANISMS
• Depending on the functionality, a hypervisor can assume a micro-kernel
architecture like the Microsoft Hyper-V. Or it can assume a monolithic hypervisor
architecture like the VMware ESX for server virtualization.
* 37
Xen
• Xen is a type-1 hypervisor is a type-1 hypervisor, providing services that
allow multiple computer operating systems is a type-1 hypervisor, providing
services that allow multiple computer operating systems to execute on the
same computer hardware concurrently.
* C-C-S-S 39
Xen - overview
• other guest operating systems are called domUs. This is because these
domains are “unprivileged” in the sense they cannot control the hypervisor or
start/stop other domains.
• they make special calls to the hypervisor that allow them to access CPUs,
storage and network resources.
* C-C-S-S 40
Xen - overview
• In contrast, HVM guests need not be modified, as the hypervisor will create a
fully virtual set of hardware devices for the machine resembling a physical
x86 computer.
* C-C-S-S 41
Xen - overview
• The technology is now prevalent; all recent servers, many desktops and
some mobile systems should be equipped with at least some extensions.
* C-C-S-S 42
Xen - Basic Components
• basic components of a Xen-based virtualization environment are the Xen
hypervisor, the Domain0, any number of other VM Guests, and the
tools, commands, and configuration files that let you manage
virtualization.
• The Xend daemon (xend), which stores configuration information about each
virtual machine and controls how virtual machines are created and managed.
* C-C-S-S 44
Xen - Basic Components
• A modified version of QEMU, which is an open-source software program that
emulates a full computer system, including a processor and various
peripherals.
• At least one virtual disk that contains a bootable operating system. The
virtual disk can be based on a file, partition, volume, or other type of block
device.
* C-C-S-S 46
Xen - Basic Components
• Management Tools, Commands, and Configuration Files:
* C-C-S-S 47
Xen - architecture
* C-C-S-S 48
Xen - architecture
•graphic depicts a virtual machine host with four virtual machines.
* C-C-S-S 49
Xen - architecture
•On the left, the virtual machine host’s Domain0 is shown running
the SUSE Linux operating system.
* C-C-S-S 50
* C-C-S-S 51
• A Xen based system is handled by Xen hypervisor, which is executed in the
most privileged mode and maintains the access of guest operating system to
the basic hardware.
• Guest operating system are run between domains, which represents virtual
machine instances
• This the only one loaded once the virtual machine manager has fully booted,
and hosts an HTTP server that delivers requests for virtual machine creation,
configuration, and termination.
•* C-C-S-S 52
• This component establishes the primary version of a shared virtual machine
manager (VMM), which is a necessary part of Cloud computing system
delivering Infrastructure-as-a-Service (IaaS) solution.
• Ring 0 represents the level having most privilege and Ring 3 represents the
level having least privilege.
• Almost all the frequently used Operating system, except for OS/2, uses only
two levels i.e. Ring 0 for the Kernel code and Ring 3 for user application and
non-privilege OS program.
* C-C-S-S 53
•Due to the structure of x86 instruction set, some instructions allow
code execution in Ring 3 to switch to Ring 0 (Kernel mode).
* C-C-S-S 54
Pros:
* C-C-S-S 55
Pros:
• c) It also comes equipped with a special storage feature that we call Citrix
storage link. Which allows a system administrator to uses the features of
arrays from Giant companies- Hp, Netapp, Dell Equal logic etc.
* C-C-S-S 56
Cons:
* C-C-S-S 57
Hyper – v
•Hyper-V is Microsoft software that virtualizes a single hardware server
into multiple virtual servers/machines.
• * C-C-S-S 58
Hyper – v
Hyper-V can help you:
• Use your hardware more effectively. Consolidate servers and workloads onto
fewer, more powerful physical computers to use less power and physical space.
* C-C-S-S 59
Hyper – v
Hyper-V can help you:
•
* C-C-S-S 60
Hyper – v
* C-C-S-S 61
• Hyper-V is a hypervisor-based virtualization technology for certain x64
versions of Windows. It is the processor-specific virtualization platform that
allows multiple isolated operating systems to share a single hardware
platform.
• The Microsoft hypervisor must have at least one parent, or root, partition,
running Windows. The virtualization management stack runs in the parent
partition and has direct access to hardware devices.
* C-C-S-S 62
• The root partition then creates the child partitions which host the guest
operating systems. A root partition creates child partitions using the hypercall
application programming interface (API).
• Partitions do not have access to the physical processor, they have a virtual
view of the processor and run in a virtual memory address region that is
private to each guest partition.
• The hypervisor handles the interrupts to the processor, and redirects them to
the respective partition.
* C-C-S-S 63
• Hyper-V can also hardware accelerate the address translation between
various guest virtual address spaces by using an Input Output Memory
Management Unit (IOMMU) which operates independent of the memory
management hardware used by the CPU.
• Child partitions also do not have direct access to other hardware resources
and are presented a virtual view of the resources, as virtual devices (VDevs).
* C-C-S-S 64
• Requests to the virtual devices are redirected either via the VMBus or the
hypervisor to the devices in the parent partition, which handles the requests.
* C-C-S-S 65
• Virtual Devices can also take advantage of a Windows Server Virtualization
feature, named Enlightened I/O, for storage, networking, graphics, and input
subsystems.
* C-C-S-S 66
• Integration components, which include virtual server client (VSC) drivers, are
also available for other client operating systems.
* C-C-S-S 67
Hyper-V offers many features :
* C-C-S-S 68
Hyper-V offers many features :
• For backup, Hyper-V offers two types. One uses saved states and the other
uses Volume Shadow Copy Service (VSS) so you can make
application-consistent backups for programs that support VSS.
* C-C-S-S 69
Hyper-V offers many features :
• Security - Secure boot and shielded virtual machines help protect against
malware and other unauthorized access to a virtual machine and its data.
* C-C-S-S 70
High-level overview of the architecture of a
Hyper-V environment.
* C-C-S-S 71
Host-Based / Full Virtualization with Binary Translation
• virtualization layer on top of the host OS. This host OS is still responsible for
managing the hardware.
• The guest OS are installed and run on top of the virtualization layer. Dedicated
applications may run on the VMs.
• It involves examining the executable code of the virtual guest for “unsafe”
instructions, translating these into “safe” equivalents, and then executing the
translated code.
• An unsafe instruction is one that for example tries to access or modify the
memory of another guest.
* C-C-S-S 72
Host-Based / Full Virtualization with Binary Translation
* C-C-S-S 73
Host-Based / Full Virtualization with Binary Translation
• Trap & Emulate:
• Emulate : Executable code from the guest is allowed to execute directly on the
host CPU by the hypervisor
• Once the hypervisor has received a trap, it will inspect the offending instruction,
Emulate it in a safe way, and continue execution the instruction
• Direct Execution: With direct execution, most code is executed directly on the
CPU, and only the code that needs to be translated is actually translated.
* C-C-S-S 74
Host-Based / Full Virtualization with Binary Translation
• Full Virtualization provides complete simulation of the underlying hardware
• Simulate all computing element such as instruction set, main memory, interrupts ,
exceptions, and device access.
• The result is a os stems in which all software including all OS’s capable of
execution on the raw hardware can be run in the virtual machine.
* C-C-S-S 75
Host-Based / Full Virtualization with Binary Translation
* C-C-S-S 76
Host-Based / Full Virtualization with Binary Translation
* C-C-S-S 77
Para Virtualization
• To overcome the problem of degraded performance, Guest OS kernel is
modified.
* C-C-S-S 78
Para Virtualization
* C-C-S-S 79
Para Virtualization
* C-C-S-S 80
Para Virtualization
* C-C-S-S 81
* 82
* 83
* 84