Understanding virtualization
VMware Workstation is virtualization
Virtualization simply means that a physical computer is virtualized into multiple logical computers. Each logical computer can run different operating systems without being affected by each other, so that hardware resources can be fully utilized.
Keywords Hypervisor (VMM) Virtual Machine Manager
Virtualization technologies are divided into full virtualization and paravirtualization
Early CPU hardware did not support virtualization. If the operating system (guestos) on the virtual machine wanted to use cpu resources, it would need to translate instructions through VMM. This process is more resource-intensive. This virtualization technology is called full virtualization (VMware Workstation)
The paravirtualization technology saves resources by modifying the guestos kernel so that guestos can directly use CPU resources without the need to translate instructions, but modifying the kernel is more cost-effective (XEN)
Subsequent CPU vendors directly support virtualization, and do not need to translate instructions through VMM. It does not matter paravirtualization and full virtualization
Commonly used virtualization software
VMware Series
VMware workstation (suitable for a single computer), VMware vsphere (VMware esxi), VMware Fusion (Mac)
Xen open source paravirtualization
XenServer commercial, vendor Ctirx, Xen-based
KVM open source based on linux kernel module
Hyper-V Commercial, vendor Microsoft
Openvz open source based on Linux virtual machine and host share a kernel
VirtualBox open source Sun company develops Oracle acquisition of Sun
kvm introduction
KVM was developed by Israeli startup Qumranet. In September 2008, RedHat acquired Qumranet.
KVM is a module of the Linux kernel, which turns the Linux kernel into a hypervisor
KVM is completely open source, RedHat's KVM-based virtualization solution is called RHEV
KVM appears as a process in the Linux operating system and is scheduled by a standard Linux scheduler, which allows KVM to use the existing functions of the Linux kernel
Only one KVM kernel module can not realize all the functions of virtualization, just like an operating system with only a kernel cannot become a complete operating system.
QEMU is an open source virtualization software, pure software, can virtualize all hardware, performance is not strong
KVM based on QEMU developed a tool that can run in user space QEMU-KVM
Disks, network devices, etc. are all simulated by QEMU-KVM
KVM and QEMU-KVM communication is achieved through / dev / kvm
libvirt is an API used to manage KVM virtual machines, and its command is virsh