0
12kviews
What is Virtualization what are its benefits and Differentiate between different types of Hypervisor?
1 Answer
3
59views

Virtualization is an approach to pooling and sharing technology resources to simplify management and increase asset use so that IT resources can more readily meet business demand. With servers or networks, virtualization is used to take a single physical asset and make it operate as if it were multiple assets.

The benefits of virtualization are as follows:

  • Virtualization Increases Business Agility

    When business and government conditions are changing more rapidly today than before it’s vital for organizations to be able to respond in an instant. Virtualization makes it much easier and quicker to spin up computing resources. Although it used to take days (if not weeks) to install, configure, and begin operating server, network, and storage resources, these processes can now be accomplished in minutes. Virtualization allows dynamic provisioning of resources to support applications when capacity is needed most, helping close the gap between what an organization needs and what IT can deliver.

  • Virtualization Increases IT Operational Flexibility

    Virtualization can help you deal with hardware failures or application/operating system crashes. Virtualization software can be configured to keep track of virtual machines and, if one goes down, immediately restart another instance on the same machine or even a different machine.

  • Virtualization reduces IT Operations Costs

    Virtualization can make maintenance and upgrades significantly easier and less expensive. On servers, it enables a running virtual machine to be migrated to another server very quickly, freeing up the original server to be worked on. Virtualized PCs allow for centralized upgrades, patching, and repair because some or all of the PC’s applications and data reside in the data center rather than on the PC itself. Virtualization reduces IT operational costs in a more direct way. By allowing software virtual machines to take the place of physical machines, operational costs related to hardware maintenance may be cut by 60 percent or more, depending on the ratio of virtual servers to physical servers.

  • High Availability

    The high availability can be considered as disaster or downtime avoidance. You want business applications to remain online and accessible in the event of failures to hardware, software, or facilities. Server virtualization can help to avoid both planned and unplanned downtime, including the ability to move live, running virtual servers from the affected host to another host. Some shared storage systems also feature no-single-point of failure architectures to keep storage online through a variety of failure scenarios. These architectures, when combined with server virtualization provides high availability capabilities, minimize downtime without the complexities of traditional server clustering approaches.

  • Quality of Service

    Virtualization when managed effectively and efficiently can raise the quality of service provided by IT organizations. By implementing consistent management practices backed up by software systems that track and manage IT infrastructure, whether physical or virtual, IT organizations can ensure that IT services avoid outages or uncoordinated activities.

  • Disaster recovery

    Disaster recovery is like life insurance for IT organizations. When disaster strikes, IT operations must be brought back online as quickly as possible. Virtual machines can be easily transferred within seconds or minutes to a backup data center; in tough circumstances, many virtual machines can be run on a smaller number of physical servers, reducing the cost of physical resources required for disaster recovery.

The mechanisms for virtualization are as follows:

Common virtualization layers include the instruction set architecture (ISA) level, hardware level, operating system level, library support level, and application level.

  1. Instruction Set Architecture Level
  2. At the ISA level, virtualization is performed by emulating a given ISA by the ISA of the host machine.
  3. For example, MIPS binary code can run on an x86-based host machine with the help of ISA emulation. With this approach, it is possible to run a large amount of legacy binary code written for various processors on any given new hardware host machine.
  4. Instruction set emulation leads to virtual ISAs created on any hardware machine. The basic emulation method is through code interpretation.

enter image description here

Fig.Virtualization ranging from hardware applications in five abstraction levels

  • An interpreter program interprets the source instructions to target instructions one by one. One source instruction may require tens or hundreds of native target instructions to perform its function. Obviously, this process is relatively slow. For better performance, dynamic binary translation is desired. This approach translates basic blocks of dynamic source instructions to target instructions.
  • The basic blocks can also be extended to program traces or super blocks to increase translation efficiency. Instruction set emulation requires binary translation and optimization.
  • A virtual instruction set architecture (V-ISA) thusrequires adding a processor-specific software translation layer to the compiler.

2.Hardware Abstraction Level

  • Hardware-level virtualization is performed right on top of the bare hardware.
  • On one hand, this approach generates a virtual hardware environment for a VM.
  • On the other hand, the process manages the underlying hardware through virtualization.
  • The idea is to virtualize a computer’s resources, such as its processors, memory, and I/O devices.
  • The intention is to upgrade the hardware utilization rate by multiple users concurrently.
  • The idea was implemented in the IBM VM/370 in the 1960s. More recently, the Xen hypervisor has been applied to virtualize x86-based machines to run Linux or other guest OS applications.

3.Operating System Level

  • This refers to an abstraction layer between traditional OS and user applications.
  • OS-level virtualization creates isolated containers on a single physical server and the O instances to utilize the hardware and software in data centers. The containers behave like real servers. OS-level virtualization is commonly used in creating virtual hosting environments to allocate hardware resources among a large number of mutually distrusting users. It is also used, to a lesser extent, in consolidating server hardware by moving services on separate hosts into containers or VMs on one server.

4.Library Support Level

  • Most applications use APIs exported by user-level libraries rather than using lengthy system calls by the OS. Since most systems provide well-documented APIs, such an interface becomes another candidate for virtualization.
  • Virtualization with library interfaces is possible by controlling the communication link between applications and the rest of a system through API hooks. The software tool WINE has implemented this approach to support Windows applications on top of UNIX hosts.

5.User-Application Level

  • Virtualization at the application level virtualizes an application as a VM. On a traditional OS, an application often runs as a process. Therefore, application-level virtualization is also known as process-level virtualization.
  • The most popular approach is to deploy high level language (HLL) VMs.
  • In this scenario, the virtualization layer sits as an application program on top of the operating system, and the layer exports an abstraction of a VM that can run programs written and compiled to a particular abstract machine definition.
  • Any program written in the HLL and compiled for this VM will be able to run on it. The Microsoft .NET CLR and Java Virtual Machine (JVM) are two examples of this class of VM.
  • Other forms of application-level virtualization are known as application isolation, application sandboxing, or application streaming.
  • The process involves wrapping the application in a layer that is isolated from the host OS and other applications.
  • The result is an application that is much easier to distribute and remove from user workstations. An example is the LANDesk application virtualization platform which deploys software applications as self-contained, executable files in an isolated environment without requiring installation, system modifications, or elevated security privileges.
Please log in to add an answer.