VIRTUALIZED DATA CENTER
(VDC)
Virtualization
• In computing, virtualization means to create a virtual version of a
device or resource, such as a server, storage device, network or even
an operating system where the framework divides the resource into
one or more execution environments.
VDC
• Transforming a CDC into a VDC requires virtualizing the core elements of the data center.
• A phased approach is used for the smooth transition to virtualize core elements.
CDC
VDC
VIRTUALIZATION
1. COMPUTE VIRTUALIZATION
• It is a technique of masking or abstracting the physical compute hardware and enabling multiple OSs to run concurrently on a single physical machine
• Multiple virtual machines are created, each running an OS and application
• VM is a logical entity that looks & behave like a physical machine
• Virtualization layer lies between the hardware and the VMs and is
also called Hypervisor
NEED FOR COMPUTE VIRTUALIZATION
BEFORE VIRTUALIZATION AFTER VIRTUALIZATION
Runs single OS per machine at a time Runs multiple Oss per machine at a time i.e.
concurrently
Couples H/W and S/W tightly Makes OS and applications H/w independent May create conflict when multiple applications run on
the same machine. This causes companys to purchase new physical m/cs for every application they deploy.
Isolates VM from each other, hence no conflict
Under utilizes resources :- Physical m/cs remain underutilized
Makes efficient resource utilization
offers inflexible and expensive infrastructure Offers flexible infrastructure at a low cost App
OS
App App
OS OS
VM VM
HYPERVISOR
• A hypervisor or virtual machine monitor (VMM) is computer software that creates and runs virtual machines.
• A computer on which a hypervisor runs one or more virtual machines(VMs) is called a host machine, and each virtual machine is called a guest machine.
• It is a software that allows multiple OSs to run concurrently on a physical machine and to interact directly with the physical hardware
• example, Linux, Windows, and macOS instances can all run on a single physical x86 machine.
• Hypervisor has two components:
a. Kernel: provides same functionality as other OSs like process creation, process scheduling, file system management, resource scheduling.
Kernel is designed to support multiple virtual machines.
b. Virtual machine monitor(VMM):
• VMM abstracts HW to appear as a physical machine with its own CPU, memory and I/O devices.
• Each VM is assigned a VMM that has a share of CPU , memory and I/O devices to successfully run VM.
• when a VM starts running, the control is transferred to the VMM, which subsequently begins executing commands from the virtual machine.
TYPES OF HYPERVISOR
Type-1:Native or Bare-metal hypervisor
• This is when the hypervisors are run on the host's hardware to control it as well as manage the virtual machines on it.
• Examples: Microsoft Hyper-V hypervisor, VMware ESX/ESXi, Oracle VM Server for x86, KVM, or Citrix XenServer
• Hypervisor is directly installed on the x86 based hardware & it has direct access to the hardware resources. So, it is more efficient than the hosted hypervisor.
• Bare-metal virtualization is well suited for enterprise data centers, because it usually comes with advanced features for resource management, high availability and security.
• Bare metal hypervisors are faster and more efficient as they do not need to go through the operating system and other layers that usually make hosted hypervisors slower.
• Type I hypervisors are also more secure than type II hypervisors.
Note: Add an OS module above hardware (in the RHS diagram on the slide4)
Type-2: Embedded or Hosted hypervisor
• These hypervisors are run as a software using an operating system such as Windows, Linux
• Examples : Virtage hypervisor, VirtualBox and VMWare Workstation
• This is installed and runs as an application on the top of an OS. Unlike the bare-metal virtualization hypervisor, a hosted hypervisor requires you to first install an OS and has to go though the OS for accessing
hardware which reduces the performance.
BENEFITS OF COMPUTE VIRTUALIZATION
(CV) • Server consolidation: reduces the need of physical servers as CV enables running multiple VMs on a physical server.
• Isolation: While VMs share resources of a physical machine, they are also isolated from each other.
• Ex: If there are 4 VMs on a single physical m/c and 1 VM crashes, rest are not affected
• Encapsulation: A VM is a complete package of virtual H/W resources, OS and applications, so can be moved from one place to another as a file
• Hardware independence: A VM comprises of virtual components, that are completely independent of the underlying physical H/W, so the VM can be moved from one x86 machine to another without making changes to the device drivers, OS or applications
• Reduced cost: cost reduces in terms of space, power and cooling, switches,
adapters and annual maintenance
FULL VIRTUALIZATION
• Binary translation of OS instructions is essential.
• It means replacing the guest OS instructions that cannot be virtualized with new instructions that have the same effect on the virtual hardware.
• BT is performed by VMM which provides each VM all the services similar to the physical compute, including a virtual BIOS and virtual devices.
• Full virtualization completely decouples the guest OS from the
underlying hardware. The guest hardware is not aware that it is being
virtualized and requires no modification.
PARAVIRTUALIZATION
• Guest OS are aware of being virtualized.
• In this, guest OS kernel is modified to eliminate the need of BT.
• It is however possible to modify open source OS such as Linux but not Windows.
• So, this technique is possible in open source Oss.
• For Windows, full virtualization should be adopted.
VM FILES
Virtual BIOS file Stores the state of VM’s BIOS
Virtual swap file Is a VM’s paging file which backs up the VM RAM contents
Virtual Disk file Stores the contents of the VM’s disk drive
Log file Keeps a log of VM activity, is used for troubleshooting
Virtual configuration file
Stores the configuration info chosen during VM creation such as no. of CPUs, memory, disk types
File system to manage VM files
1. Virtual machine file system(VMCS) 2. Network file system(NFS)
VM hardware components
• vCPU
• vRAM
• vNIC
• Virtual floppy drive
• Virtual DVD/CD-ROM
• Virtual disk
• Virtual USB controller
Physical to virtual machine (P2V) conversion
• It is a process through which physical machines are converted into virtual machines (VMs).
• “converter application” is used to clone the data on the HDD of the source machine & transfers that data to the destination virtual disk.
Steps:
1.Cloning is a process of creating a cloned disk, which is a virtual disk containing exact copy of the source physical disk.
2.System configuration is a process of configuring the destination VM.
It is a process of configuring a migrated OS to enable it to function on a
virtual hardware. This configuration enables the target virtual disk to
function as a bootable system disk in a virtual machine.
Benefits of P2V conversion
• Reduces time needed to set up a new virtual machine
• Enables migration of legacy machine to a new hardware without reinstalling OS or application
• Performs migration across heterogeneous hardware Components:
1. Converter server:
✔ controls conversion process
✔ Used for hot conversion only
✔ Installs a converter agent on the source physical machine that needs
conversion
2. Converter agent
✔ Performs the conversion
✔ Used in hot mode only
✔ Is installed on a physical machine to convert it into virtual machine
3. Converter boot CD
✔ Bootable CD containing bootable OS and converter application
✔ Converter application is used to perform cold conversion
Hot conversion
• Occurs while a physical machine is running OS.
• Because, processes continue to run on the physical machine during conversion, the resulting VM may not be the exact copy of the source physical machine.
• After the conversion, synchronization of the destination VM needs to be performed with the source physical machine.
• After conversion is completed, source machine may be powered off
and the destination VM is commissioned for production.
Process of hot conversion:
1. The converter server prepares the source machine for conversion by installing the agent on the source physical machine.
2. The agent takes a snapshot of the source volume.
3. The converter server creates a VM on the destination machine.
4. The agent clones the physical disk of source machine to the virtual disk of the destination VM.
5. The agent synchronizes the data and installs the required drivers to allows the OS to boot from a VM and personalize the VM
6. The VM is ready to run on the destination server.
Agent
Converter server (running converter software)
Hypervisor
snapshot Powered-on source
physical machine
1
Destination physical machine running hypervisor
Source volume
2
VM 3
4 5
6
reconfiguration
Cold conversion
• Also called offline conversion, is an option in which conversion of the source physical machine is performed when it is not running the OS.
• When performing cold conversion, the source machine is rebooted using a converter boot CD that has its own OS and converter application.
• Cold conversion creates a consistent copy of the source physical
machine during the conversion.
Process
1. Boot the source machine from the converter boot CD and use the converter software to define the conversion parameters and start the conversion.
2. The converter application creates a new VM on the physical machine.
3. The converter application copies volumes from the source machine to the destination machine.
4. The converter application installs the required drivers to allow the OS to boot in a VM and personalizes the VM.
5. The VM is ready to run on the destination server.
2
Hypervisor
Powered-on source physical machine
Destination physical machine running hypervisor
Source volume
VM 1
3
4 5
reconfiguration Converter boot CD
2. VDC-storage/storage virtualization
• Process of masking the underlying complexity of physical resources and presenting the logical view of these resources to compute systems in a VDC environment.
• It involves creating one or more logical storage on the physical storage resources.
• The logical or virtual storage appears as physical storage to the compute systems.
• The logical to physical mapping is performed by storage virtualization layer.
• The virtualization layer abstracts the identity of physical storage devices &
creates a storage pool by aggregating storage resources from multiple heterogeneous storage arrays.
• Virtual volumes are created from these storage pools and are assigned to the compute system.
• Compute system remain unaware of this mapping operation and access the
Benefits of storage virtualization
i. Adds or removes storage without any downtime
ii. Increases the storage utilization by consolidating multiple heterogeneous storage resources and creating a pool of storage
iii. Flexibility in allocation of storage to the compute systems, thus reducing investment in new storage resources and thereby lowers TCO(total cost of ownership)
iv. Allows easy migration between storage systems when performance and availability requirements change
v. Supports heterogeneous, multi-vendor storage platforms
vi. Simplifies storage management
Type1:Block-level storage virtualization
• This type of virtualization creates an abstraction layer in the SAN (Storage area network) between the physical storage resources and the virtual volumes presented to the compute systems.
• The compute systems are directed to the virtual volumes on the virtualization appliance at the network.
• The appliance performs a mapping between the virtual volume & the LUNs(logical unit numbers) on the arrays.
• This type of virtualization enables us to combine several LUNs from 1 or more arrays into a single virtual volume before presenting it to the compute systems.
• It also takes a single large LUN from an array, slice it into smaller virtual volumes and present these volumes to the compute systems.
• Data migration from one array to another can easily be handled by the
virtualization appliance, by just changing the mapping and without changing the
end user data access. The compute systems still access via the same ports on the
appliance.
Contd..
• The virtualization appliance encapsulate physical storage devices and applies layers of logical abstraction to create virtual volumes, which are then presented to the compute system.
• The available capacity on a storage volume is used to create extent and virtual volumes.
• Extents are the mechanisms a virtualization appliance uses to divide storage volumes. These may be all or part of the underlying storage volume.
• The virtualization appliance aggregates these extents and applies
RAID protection to create virtual volumes.
compute compute compute
Virtual volumes
Heterogeneous storage arrays
Heterogeneous storage arrays
Heterogeneous storage arrays Virtualization appliance
VM VM VM
extent
Virtual volume Virtual volume
extent extent
extent
Storage volume Storage volume Storage volume Storage volume
Virtualization appliance
Type 2: File-level storage virtualization
• This type of storage virtualization provides an abstraction in the NAS environment and eliminates dependencies between the file and its physical location.
• Before file level virtualization, each client knows the exact location of its file-level resources.
• In a data center, migrating data from one NAS to another may be required but it is not easy to move files across this environment. Moreover the clients need to be configured with the new path. This makes it difficult for the storage administrators to improve the storage efficiency.
• File-level virtualization simplifies the file mobility. File virtualization
appliance at the network creates a logical pool of storage and enables
users to use a logical path to access files. File virtualization facilitates the
movement of files between the NAS systems i.e. clients can access their
files while the files are being migrated.
Global namespace
• Global namespace is used to map the logical path of a file to the
physical path names. Namespace provides an abstraction layer,
enabling clients to use a logical name that is independent of the
actual physical location.
Virtual Provisioning (Thin provisioning)
• One of the biggest challenges for storage administrators is balancing the storage space required by various applications in their data centers.
Administrators typically allocate the storage space based on anticipated storage growth. This is to reduce the management overhead and application downtime required to add new storage later on. This leads to over-provisioning of storage capacity, which results in higher costs, increased power, cooling and floor space requirements and lower capacity utilization. These challenges are addressed by virtual provisioning.
• It is the ability to present a logical unit (Thin LUN) to the compute system,
with more capacity than what is physically allocated to the LUN on the
storage array. Physical storage is allocated on demand from a shared pool
of physical capacity, thereby providing more efficient utilization of storage
by reducing the amount of allocated, but unused physical storage.
Traditional provisioning vs virtual provisioning
100 GB DATA
50 GB DATA
200 GB DATA
350 GB DATA
Allocated : 400GB, 500 GB, 600 GB
& unused
Allocated & unused: 1500 GB Available capacity: 150 GB
100 GB DATA
50 GB DATA
200 GB DATA
350 GB
DATA Available capacity:
Thin LUN1 Thin LUN2 Thin LUN3
Benefits of virtual provisioning
1. Reduces administrative overhead: Storage provisioning can be done independent of the physical storage capacity, it reduces time required to repeatedly add storage capacity to the compute systems.
2. Improves capacity utilization: it reduces the amount of allocated but unused storage allocation and also avoids over-allocation of storage to the compute systems.
3. Reduces cost: storage is allocated as required, thus reducing storage cost; fewer disks consume less power, cooling and power space, so lower operating cost.
4. Reduces downtime: to increase the storage capacity, administrators
don't have to take applications off-line.
Storage Tiering
• Organizations are experiencing tremendous data growth, which increases their storage requirements. Buying a high-end storage device is not a cost-efficient solution for the growing data storage needs. Organizations require solutions that enable storing the right data, at the right cost, with the right access.
• “Storage tiering” has emerged as a means to address these challenges. It is an approach to establish a hierarchy of storage types and to relocate them to an appropriate storage type.
• Each tier has different levels of protection, performance, data access frequency and other considerations.
• Example: High performance drives may be configured as tier1 storage to keep frequently accessed data to improve the performance and low cost drives are used as tier2 storage to keep less frequently accessed data. This improves the application performance and lowers the cost.
• This is based on tiering policy which in turn is based on many parameters such as
file type, frequency of access, performance etc. for eg., if a policy states “move
the files which are not accessed for last 30 days to lower tier”, then the files
Storage Tiering types
1. Manual storage tiering: is a traditional method where the storage administrator has to monitor the storage workloads periodically and move the data between tiers. This process is manual, repetitive and takes few hours to complete.
2. Automated storage tiering: automates the process of storage
tiering. Data movement is done non-disruptively without affecting
the business continuity. It improves application performance at the
same cost or provides the same application performance at a lower
cost. Data movements between tiers can happen within
(intra-array) or between storage arrays (inter-array).
Automated storage tiering
• This process automates the process of storage tiering within a storage array.
• It proactively monitors the application workload and automatically moves the active data to higher performing tier and inactive data to higher capacity, lower performance drives tier.
• The goal is to keep the keep the high performing tier busy by keeping the most frequently accessed data on it.
• Data movements can be done at the sub-LUN level.
Sub-LUN tiering
• Traditional storage tiering moves an entire LUN from one tier to another. This includes moving both the active and inactive data. So, no effective cost/performance benefits.
• In Sub-LUN tiering, a LUN is broken down into smaller segments and tiered at that level. So, moving the data with much finer granularity enhances the cost/performance benefits. In this active segments are moved to faster drives and inactive segments are moved to the slower drives.
Storage pool
DESKTOP VIRTUALIZATION
Desktop virtualization
• Technology which enables detachment of the user state, the OS and the applications from hardware (end point devices)
• Enables organizations to host and centrally manage desktops
• Desktops run as VMs within the VDC and they may be accessed over LAN/WAN
• End point devices may be thin clients/PCs
User state (data & settings)
application
Operating system hardware
Earlier, Tight dependency between the layers
• With the traditional desktop, the OS, applications and the user data are all tied to a specific piece of hardware.
• If the end-point device is broken or lost, OS, applications, user data and settings are affected.
• In desktop virtualization, virtualization breaks the bonds between hardware and these elements and each use also gets the benefit because they get the same desktop but with added ability to access the computing environment from different kinds of devices and access points in the office, at the home, or on the road.
Benefits of desktop virtualization:
1. Enablement of thin clients: Because thin clients can be used as the endpoint devices, so this lowers down the cost of hardware by replacing aging PCs with end-point devices, who life span is twice that of a standard PC and also they consume very less power when compared to standard PCs 2. Improved data security: Since, desktops run as VMs within an organization’s data center, it
mitigates the risk of data leakage and theft.
3. Simplifies data backup: Since, desktops run as VMs within an organization’s data center, It is easy to ensure full compliance with backup policies.
4. Simplified PC maintenance: It is easy to migrate to new OSs, patch applications, provision/remove
Technique1: Remote desktop services (RDS)
• Traditionally known as terminal services
• A terminal service runs on top of a Windows installation
• Provides individual sessions to the client systems
• Clients receive visuals of the desktop
• Resource consumption takes place on the server Benefits
1. Rapid application delivery: no need to install the application locally, they are just installed once on the server and accessed from there
2. Improved security: Applications & data are stored in the server
3. Centralized management: software updates, patches or upgrades takes place at server only
4. Low-cost technology compared to VDI: An RDS solution can support about 250 or
more users per server as compared to VDI supporting 30-45 users per server
Technique 2: Virtual desktop infrastructure (VDI)
• Refers to hosting of a desktop OS running in a VM on a server in the VDC
• The server hosted desktop virtualization solution approach is sometimes called as virtual desktop environment (VDE)
• VDI allows users to access a remote desktop environment from an
end-point device via end-point devices like keyboard and mouse via a remote desktop delivery protocol
• This is most widely used technique than RDS VDI components
• End-point devices
• VM hosting/execution servers
• Connection broker
Connection broker
Shared storage
End-point devices VM execution server