A webinar for B. Tech (IBM-CC) 4th semester students was held on 23rd February, 2017, on the topic ‘Introduction to Virtualization and Cloud-Computing’. The lecture was delivered by Mr. Viqaruddin Surki, Lead Learning Developer, IBM. The main objective of the webinar was to give an understanding to Virtualization, need for virtualization and the impact of virtualization. Virtualization refers to the technique of building an abstraction layer over the hardware that closely resembles the underlying system, thereby, cloning the functionality of the original components into the software. The question here is why one would want to clone the system; reasons are the benefits offered by the abstraction layer. Virtualization eliminates most of the inflexibilities inherent in the hardware system and allows for better manageability leading to a better utilization of the system. After a brief introduction, the major points discussed, are as follows:
Virtualization can be classified as:
- Full emulation: The virtual machine emulates complete set of hardware and peripheral components, this allows for an emulation of a completely different type of hardware distinct from the real hardware.
- Full/Native Virtualization: In this method, only a section of hardware is emulated and uses the real hardware for the rest.
- Para-Virtualization: There is no hardware simulation/emulation done by the Virtual Machine. The Virtual Machine uses hypercall API to communicate with the hypervisor for instruction dispatch and other purposes.
- OS Virtualization: This is a technique in which a single OS instance allows multiple sub-instances of OS to run in a secure environment.
- Application Virtualization: Applications allows virtualization by creating a separate sub-application instance with components that are not shared within the application.
Following are Virtualization Approaches:
- Hosted Architecture: Inhosted architecture, an operating system is installed on the hardware first; next, a hypervisor or virtual machine monitor is installed. This software is used to install multiple guest operation systems, or virtual machines (VMs), on the hardware.
- Hypervisor Architecture: In hypervisor architecture, the hypervisor has direct access to hardware resources, which results in better performance, scalability and stability, however, hardware support is typically more limited, because the hypervisor usually has limited device drivers built into it.
Virtualization has the following benefits:
- Utilization: Virtualization builds an abstraction of hardware system resources in software. Each OS/Application run in its own isolated environment allowing sharing of resources and brings up the utilization of the physical system.
- Security: Since each application runs in its own virtual machine, there is a strict isolation of system resources, and sharing only happens in a controlled manner.
- Manageability: it is possible to move the abstraction system components around in the infrastructure based on load distribution and save a snapshot of virtual machine to be stored later. This saves a lot of time spent in system administration.