Virtualization and Cloud Computing

48 downloads 35058 Views 843KB Size Report
May 20, 2014 - Virtualization and Cloud Computing. Contents. 1 Introduction. Definition virtualization. 2 The Traditional Server Concept. 3 The Virtual Server ...
Virtualization and Cloud Computing

Virtualization and Cloud Computing Md.Mahbub-E-Noor MSc Computer Science 4th semester South Asian University

May 20, 2014

Virtualization and Cloud Computing

Contents 1

Introduction Definition virtualization

2

The Traditional Server Concept

3

The Virtual Server Concept and its merits demerits

4

VirtualizationTechniques

5

Hypervisor Different Hypervisors Images of the hypervisors KVM hypervisor

6

References

Virtualization and Cloud Computing Introduction Definition

Virtualization and Cloud Computing Virtualization In computing, a process of creating a illusion of something like computer hardware, operating system (OS), storage device, or computer network resources is Virtualization. NIST Cloud Computing According to NIST SP 800-145[8] ”Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”

Virtualization and Cloud Computing Introduction

What is required for Cloud Computing

By Cloud Provider 1. Fast scalability . Quick addition and removal of servers 2. Service to customers should not be denied. 3. SLA should not be Violated 4. Efficient Resource Utilization Constraints with physical machines : High Provisioning time. Lower Resource Utilization. Space, Power, Cooling. Low fault tolerance Less Isolation - misbehaving application can affect all others. High downtime.

Virtualization and Cloud Computing Introduction virtualization

Virtualization

Concept is not new. The concept came from Multi Programming – Each Process thinks it has complete control on all of the resources. – Virtual Memory – CPU Sharing In Multi Programming CPU is shared among processes but in virtualization CPU is shared among OSs.

Virtualization and Cloud Computing The Traditional Server Concept

The Traditional Server Concept –Easy to conceptualize. –Fairly easy to deploy. –Single OS image per machine. –Easy to backup. But, If the File server fills up, or the Exchange server becomes overtaxed, then the System Administrators must add in a new server. Unless there are multiple servers, if a service experiences a hardware failure, then the service is down. Difficult to replicate. Not very scalable. Redundancy is difficult to implement. Expensive to acquire and maintain hardware. Running multiple applicatons on same machine often creates conflict.

Virtualization and Cloud Computing The Traditional Server Concept

Traditional Server Concept

Figure: Traditional Server Concept [9]

Virtualization and Cloud Computing The Traditional Server Concept

And if something goes wrong ...

Figure: And if something goes wrong [9]

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

The Virtual Server Concept

Tough to conceptualize. Virtual servers can still be referred to by their function i.e. email server, database server, etc. If the environment is built correctly, virtual servers will not be affected by the loss of a host. Virtual servers can be scaled out easily.

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

The Virtual Server Concept

Figure: The Virtual Server Concept [9]

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

The Virtual Server Concept

Figure: The Virtual Server Concept

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

Benefits of using Virtual Machines

Instant provisioning - fast scalability Live Migration is possible Load balancing and consolidation in a Data Center is possible. Low downtime for maintenance Security and fault isolation

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

VM Migration

Figure: VM Migration [7]

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

Load Balancing

Figure: Load Balancing [7]

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

Consolidation

Figure: Consolidation of the servers [7]

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

Importance of Virtualization in Cloud Computing

Cloud can exist without Virtualization, although it will be difficult and inefficient. Cloud makes notion of ”Pay for what you use” and ”infinite availability- use as much you want”. These notions are practical only if we have – lot of flexibility. – efficiency in the back-end. This efficiency is readily available in Virtualized Environments and Machines.

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

Importance of Virtualization in Cloud Computing

According to Intel ”Here is the difference: Virtualization abstracts compute resources –typically as virtual machines (VMs) – with associated storage and networking connectivity. The cloud determines how those virtualized resources are allocated, delivered, and presented. Virtualization is not necessary to create a cloud environment, but it enables rapid scaling of resources in a way that nonvirtualized environments find hard to achieve.” [6]

Virtualization and Cloud Computing The Virtual Server Concept and its merits demerits

Disadvantages of Virtualization

Virtualization may not work well for : Resource-intensive applications –VMs may have RAM/CPU limitations Performance testing Hardware compatibility testing Specific hardware requirements Some hardware architectures or features are impossible to virtualize such as: – Certain registers or state not exposed – Clocks, time, and real-time behavior

Virtualization and Cloud Computing VirtualizationTechniques

VirtualizationTechniques

Full virtualization using Binary Translation. OS Assisted Virtualization or Paravirtualization. Hardware Assisted Virtualization.

Virtualization and Cloud Computing VirtualizationTechniques

Privilege Rings CPUs provide a range of protection levels also known as rings in which code can execute. Ring 0 has the highest level privilege.

Figure: Privilege Rings [9]

Virtualization and Cloud Computing VirtualizationTechniques

Full virtualization Almost complete simulation of the actual hardware to allow software, which typically consists of a guest operating system, to run unmodified.

Figure: Full Virtualization [5]

Virtualization and Cloud Computing VirtualizationTechniques

Full virtualization

Figure: Full Virtualization

Virtualization and Cloud Computing VirtualizationTechniques

Paravirtualization A hardware environment is not simulated; however, the guest programs are executed in their own isolated domains, as if they are running on a separate system. Guest programs need to be specifically modified to run in this environment.

Figure: OS Assisted or Paravirtualization [5]

Virtualization and Cloud Computing VirtualizationTechniques

Paravirtualization

Figure: OS Assisted or Paravirtualization

Virtualization and Cloud Computing VirtualizationTechniques

Hardware Assisted Virtualization It is a way of improving the efficiency of hardware virtualization. It involves employing specially designed CPUs and hardware components that help improve the performance of a guest environment.

Figure: Hardware Assisted Virtualization [5]

Virtualization and Cloud Computing Hypervisor

Hypervisor

In virtualization, the host machine is the actual machine on which the virtualization takes place, and the guest machine is the virtual machine.The software or firmware that creates a virtual machine on the host hardware is called a hypervisor or Virtual Machine Manager which is the low-level program that allows multiple operating systems to run concurrently on a single host computer.

Virtualization and Cloud Computing Hypervisor Different Hypervisors

Different Hypervisors There are two types of hypervisors: Type 1 and Type 2. [2] [1] A Type-1 hypervisor interacts directly with hardware that is being virtualized. – It is completely independent from the operating system. – Boots before the operating system (OS). They are often referred to as a ”native” or ”bare metal” or ”embedded” hypervisors in vendor literature. A Type-2 hypervisor sits on top of an operating system. – Relies heavily on the operating system. – It cannot boot until the operating system is already up and running. – If operating system crashes, all end-users are affected. – Since Type-2 hypervisors depend on an OS, they are not in full control of the end user’s machine.

Virtualization and Cloud Computing Hypervisor Images of the hypervisors

Type1 hypervisor

Figure: Type1 hypervisor

Virtualization and Cloud Computing Hypervisor Images of the hypervisors

Type2 hypervisor

Figure: Type2 hypervisor

Virtualization and Cloud Computing Hypervisor KVM hypervisor

KVM hypervisor KVM (Kernel-based Virtual Machine) is a virtualization infrastructure for the Linux kernel which turns it into a hypervisor and allows its host operating system to act as a Type 1 hypervisor.However, as Linux distribution is a operating system in its own right, one can argue that KVM is Type 2 hypervisors Linux 2.6.20 (released February 2007) was the first to include KVM.

Figure: Basic Concept KVM Architecture [4]

Virtualization and Cloud Computing Hypervisor KVM hypervisor

KVM network cinfiguration We have eth0 interface in our host and it needs to use tagged for VLAN ID 1,2,3. eth0 - regular network interface eth0.1 - virtual interface that use untagged frame from VLAN eth0.2 - virtual interface that use untagged frame from VLAN eth0.3 - virtual interface that use untagged frame from VLAN

network traffic 1 2 3

Figure: KVM network cinfiguration concept [3]

Virtualization and Cloud Computing Hypervisor KVM hypervisor

KVM cinfiguration in CloudStack In our lab we configured this vitualization in the following hypervisor host :

Figure: CloudStack Configuration

Virtualization and Cloud Computing References

References [1] “Comparison of the hypervisors,” http://www.virtualcomputer.com/type-1-vs-type-2-hypervisor. [2] “Hypervisors,” http://searchservervirtualization.techtarget.com/feature/ Whats-the-difference-between-Type-1-and-Type-2-hypervisors. [3] “kvm-vlan-configuration,” http: //henroo.wordpress.com/2011/03/25/how-to-add-vlan-network-to-kvm-guest/. [4] “OVA-open-virtualization-alliance,” https://openvirtualizationalliance.org/. [5] “Understanding Full,Para and Hardware Assisted Virtualization,” www.vmware.com/files/pdf/VMware paravirtualization.pdf. [6] “Virtualization and cloud computing, Intel IT center, August 2013, URL:,” http://www.intel.in/content/dam/www/public/us/en/documents/guides/ cloud-computing-virtualization-building-private-iaas-guide.pdf. [7] M. Mayank and S. Sudevalayam, “Introduction to cloud computing and virtualization.” [8] M. Peter and G. Timothy, “The nist definition of cloud computing,” NIST SP 800 - 145, 2011. [9] J. Yash, “Virtualization Concepts and Applications,” http://www.ieee.ldrp.ac.in/index.php?option=com phocadownload&view= category&download=2:pdf&id=1:workshop&Itemid=216, DA-IICT, DCOM Research Group.

Virtualization and Cloud Computing References

Suggest Documents