What Is a Hypervisor?
A hypervisor is software that provides a set of virtualized hardware to guests running "virtually" on a system. It implements abstract physical hardware for the guest operating system.
Hypervisor
Right!
- Hypervisor is a
- A hypervisor is software that provides a set of virtualized hardware to guests running "virtually" on a system. It implements abstract physical hardware for the guest operating system.
- The once-popular term "hypervisor". It has become a buzzword in the field of virtualization. But hypervisors are nothing new. As long as we have used a virtual machine (VM), we must have used a hypervisor. In fact, IBM coined the term "hypervisor" as early as the 1970s.
- Over the past few years, the "type 1 hypervisor" (including Microsoft Hyper-V and VMware ESX Server) running on x86 platforms has evolved significantly, which has also led to some confusion. The hypervisor that most people use (especially for client systems) is called a "type 2 hypervisor." What is the difference between the two hypervisors?
- The Type 1 hypervisor runs directly on the host hardware without the need for a "host operating system." Microsoft Hyper-V and VMware ESX Server are common examples of type 1 hypervisors.
- Hyper-V
- The Windows Driver Kit (WDK) released with Windows 7 provides information about new features in Hypervisor version 2.
- Hypervisor is a technology originally supported in Windows Server 2008 with Hyper-V. Windows Server 2008 R2 with Hyper-V supports 2.0 and earlier hypervisors.
- The following features are new in hypervisor version 2:
- Extended Fast Super Call Interface
- Partitioned CPU compatibility attributes, compatibility mode, and CPU vendor attributes
- Partition XSAVE function
- The virtual guest is idle.
- Regional Reference Time Enlightenment
- Support for kernel inactivity
- SMI virtual interrupt type
- HvPortPropertyPreferredTargetVp port property
- System properties
- HV analysis
- Invoking the hypervisor debugger
- The following model-specific registers (MSRs) are new in hypervisor version 2:
- Virtual APIC MSR
- Performance statistics MSR
- Reference TSC page MSR
- Virtual guest idle state MSR
- The following hypercalls have been deprecated in hypervisor version 2:
- HvClearLogicalProcessorRunTimeGroup
- HvSetLogicalProcessorRunTimeGroup
- The following hypercalls are new in hypervisor version 2:
- HvParkLogicalProcessors
- HvMapSparseGpaPages
- HvSetPortProperty
- HvSetSystemProperty
- HvInvokeHypervisorDebugger [2]
Hypervisor monitor
- Although administrators distribute application load evenly to each virtual host, the automatic load balancing feature is still irreplaceable.
Most serious problems in the server hypervisor environment seem to be related to resource contention. From the principle of the hypervisor, the technology of the hypervisor is based on the continuous development of server hardware performance. The resources it can provide far exceed the requirements of a single load, so a set of physical resources can be allocated to multiple loads at the same time. use.
The hypervisor resource sharing method seems very simple, but usually the problems are in the details. If multiple hypervisor loads share a common hardware resource pool, a mechanism must be introduced in the hypervisor production environment in advance to avoid any virtual machine consuming excessive resources and causing other hypervisor resources to be occupied .
Hypervisor consumption
- Indeed, there are many different techniques that administrators can use today to keep resource consumption under monitoring. Administrators can limit the hardware resources such as CPU, memory, network, and storage that a particular virtual machine can consume. In addition, when creating a new hypervisor, administrators typically place it on a host server with sufficient hardware resources to prevent newly added loads from adversely affecting existing hypervisor performance.
This method and other mechanisms of the hypervisor can ensure that the hypervisor is in a monitored state. The problem is that server virtualization environments are highly dynamic. Due to server failure, host restart, system maintenance, or many other reasons, the virtual machine monitoring program r may automatically migrate the load to another host in real time. Similarly, the resource consumption of the hypervisor may change over time. The load on the virtual machine only needs to use very few hardware resources when initially started, but as more and more users start using applications running on the virtual machine monitor, the resource consumption of the virtual machine will continue to increase.
The problem is that changing loads and live migration of the hypervisor can completely undermine the administrator's original plan, which is to create the virtual machine on the most suitable host server.
Although administrators can manually migrate virtual machines in order to adapt to the changing operating environment, this approach is not the best solution, and using hypervisors and management software to implement automatic load balancing is a more efficient way.
Hypervisor Solution
- All hypervisor vendors have launched their own load balancing solutions. For Microsoft Hyper-V, you can use a technology called System Optimization in System Setter VM Manager to achieve load balancing. The hypervisor dynamic optimization technology is very simple. The hypervisor performs periodic checks (by default every ten minutes) to see if the available resources on the host server have fallen below a predetermined threshold. If the resource value of any server is low, the dynamic optimization process will migrate one or more virtual machine implementations to a host with more available resources.
The dynamic optimization feature works at the host server group level. From the VM Manager console, enter the Fabric workspace, select the host group you want to adjust, and then click the cluster in the host group. After that, click the Host Cluster tab at the top of the screen, and then click the Optimize Host button. Windows will then open the Optimize Host Cluster dialog box. The dialog box will ask you if you want to implement migration for some virtual machines and the hypervisor for better performance. If the available hardware resources of one or more hosts are lower than the threshold, the system will pop up this prompt. If all hosts have enough available hardware resources, the system will not pop up a recommendation window, even if the virtual machine distribution is not very balanced.
In order to make the cluster optimization process appear automatically, close the dialog box now, then click the Folder tab at the top of the screen and click the Properties button. A new "All Host Prosperities" dialog will appear. Now click on "Dynamic Optimization" and then check the "Automatically Migrate VMs to Balance Load at this Frequency (Minutes)" checkbox. In this dialog box, you can also configure parameters such as load balancing frequency, server resource threshold, and load balancing aggressiveness. More aggressive load balancing strategies will improve system resource utilization efficiency, but will also lead to higher frequency of live migration. Click OK to complete the configuration process.
In any hypervisor environment, efficient use of hardware resources is very important. The hypervisor can help achieve this goal by automatically moving virtual machines from overloaded hosts to hosts with a large amount of available resources. [3]