Amritsar College of Engineering & Technology, Amritsar, Punjab, INDIA
NAAC - A grade, NBA accredited courses(2009-12, 2016-18), UGC Autonomous College
SUBJECT: Cloud Computing(ACCS-16708)
TOPIC: Virtualization
Er. Anamika Jain
Assistant Professor Department of Computer Science and Engineering
1 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
VIRTUALIZATION • “Virtualization, in computing, 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”.
2 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
• Network Virtualization • Network virtualization in cloud computing is a method of combining the available resources in a network by splitting up the available bandwidth into different channels, each being separate and distinguished. They can be either assigned to a particular server or device or stay unassigned completely — all in real time. The idea is that the technology disguises the true complexity of the network by separating it into parts that are easy to manage, much like your segmented hard drive makes it easier for you to manage files.
3 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
• Storage Virtualizing • Using this technique gives the user an ability to pool the hardware storage space from several interconnected storage devices into a simulated single storage device that is managed from one single command console. This storage technique is often used in storage area networks. Storage manipulation in the cloud is mostly used for backup, archiving, and recovering of data by hiding the real and physical complex storage architecture. Administrators can implement it with software applications or by employing hardware and software hybrid appliances.
4 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
• Server Virtualization • This technique is the masking of server resources. It simulates physical servers by changing their identity, numbers, processors and operating systems. This spares the user from continuously managing complex server resources. It also makes a lot of resources available for sharing and utilizing, while maintaining the capacity to expand them when needed.
5 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
• Data Virtualization • This kind of cloud computing virtualization technique is abstracting the technical details usually used in data management, such as location, performance or format, in favor of broader access and more resiliency that are directly related to business needs.
6 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
• Application Virtualization • Software virtualization in cloud computing abstracts the application layer, separating it from the operating system. This way the application can run in an encapsulated form without being dependant upon the operating system underneath. In addition to providing a level of isolation, an application created for one OS can run on a completely different operating system.
7 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
Virtualization Architecture OS assumes complete control of the underlying hardware. Virtualization architecture provides this illusion through a hypervisor/VMM. Hypervisor/VMM is a software layer which:
Allows multiple Guest OS (Virtual Machines) to run simultaneously on a
single physical host Provides hardware abstraction to the running Guest OSs and efficiently multiplexes underlying hardware resources.
8 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
Process view of Machine System View of Machine environment to support multiple memory, user-level instr., processes sharing resources system calls for OS functions hardware characteristics defines system OS interface to hardware defines view view of process System VM Process VM
e.g.,Xen, kvm, VMware, VirtualBox, e.g. Java, .Net, Emulators
UMLinux
9 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
Benefits of Virtual Machines Instant provisioning - fast scalability Live Migration is possible Load balancing and consolidation in a Data Center is possible.
Low downtime for maintenance
Virtual hardware supports legacy operating systems efficiently
Security and fault isolation
10 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
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”, “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.
11 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
Popek and Goldberg mentioned a set of requirements that must be met in their 1974 paper. They divided instructions into three categories: Privileged instructions: execute in a privileged mode, but will trap otherwise. Control sensitive instructions: attempt to change the config of resources Behavior sensitive instructions: are those that behave in a different way depending on the config of resources They said that all sensitive instructions must also be privileged instructions. Hypervisor must be able to intercept any instructions that changes the state of the machine in a way that impacts other processes.
12 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
Privilege Rings Memory page has a 2 bit code which is checked by CPU before executing the instruction. If privilege level is insufficient the CPU does not executes the instruction.
13 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
VM implementation Techniques 2. Binary Translation 1.
3. Paravirtualization
Hardware Supported Virtualization
14 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
1. Binary Translation Used in VMWare
Binary image of OS is manipulated at the runtime.
Privileged instructions are rewritten to point to their emulated versions.
Performance from this approach is not ideal, particularly when doing
anything I/O intensive. Caching of the locations of unsafe instructions can speed Up
15 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
Para Virtualization Used in XEN Make OS aware of underlying Virtualization env. OS's code is manipulated. Important system calls are changed to point to the implementation provided by the VMM.
16 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
Hardware supported Virtualization Added new instructions which makes Virtualization considerably easier for x86. Intel – IVT(Intel Virtualization Technology) AMD – introduced AMD-V
OS stays in its original privilege level 0.
Attempts to access the hardware directly are caught and passed to VMM. In other words a new privilege ring is setup for the VMM.
17 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC
18 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC 19 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC 20 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC 21 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC 22 Er. Anamika Jain jnanamika@gmail.com 8th Sem. CC