8.1.3 KVM技术
2025年09月21日
8.1.3 KVM技术
KVM的全称是Kernel-Based Virtual Machine。也就是说,KVM是基于Linux内核实现的。KVM有一个内核模块叫kvm.ko,只用于管理虚拟机CPU和内存。I/O虚拟化,比如存储和网络设备,则是由Linux内核与Qemu来实现的。作为一个Hypervisor (又称虚拟机监视器),KVM本身只关注虚拟机调度和内存管理这两个方面。I/O外设的任务交给Linux内核和Qemu完成。
Libvirt就是KVM的管理工具。其实,Libvirt除能管理KVM这种Hypervisor,还能管理Xen、VirtualBox等。Libvirt包含三个东西:后台daemon程序Libvirtd、API库和命令行工具Virsh。Libvirtd是服务程序,用于接收和处理API请求;API库使得其他人可以开发基于Libvirt的高级工具,比如virt-manager,这是一个图形化的KVM管理工具。Virsh是我们经常要用的KVM命令行工具。
任务思考
本任务主要介绍了虚拟化技术的起源,以及在云计算数据中心的应用。通过学习虚拟化技术,读者可以思考目前公有云厂商应用的虚拟化技术及其底层核心技术原理,以及未来自己想从事的虚拟化技术方向。
任务评价
通过学习本任务,读者可以熟练掌握KVM虚拟化技术的原理。在企业应用和参加“1+X”认证考试时,读者能够深入了解虚拟化技术的原理。