kvm简介
kvm最初由Quramnet公司开发,2008年被RedHat公司收购。kvm全称基于内核的虚拟机(Kernel-based Virtual Machine),它是Linux的一个内核模块。包括核心虚拟化模块kvm.ko,以及特定CPU的模块kvm-inet.ko或kvm-amd.ko,其实现需要宿主机的CPU支持硬件虚拟化。从Linux内核版本2.6.20开始,kvm模块就已经包含在Linux内核中了。在X86平台下CPU的硬件虚拟化技术有Inetl的VT-X和AMD的AMD-V。
kvm模块
- 查看宿主机CPU是否支持硬件虚拟化
cat /proc/cpuinfo | grep -E "(vmx|svm)"
- 加载 kvm模块
modprobe kvm# #intel类型cpu modprobel kvm-intel #amd类型cpu modprobel kvm-amd
Linux内核加载kvm模块后,其会暴露一个/dev/kvm接口来与用户空间程序qemu交互,提供虚拟cpu和虚拟内存的功能,但是仅靠内核中的kvm模块并不能创建虚拟机,像IO设备的模拟需要借助用户空间程序qemu。