最近KVM很火热,我们也报道了很多KVM相关新闻。但是到底什么是KVM呢?KVM的作用和优势是什么?可能很多人还不太了解,这里我们详细介绍KVM的基础知识,供新人学习。

一、什么是KVM

Kernel-based Virtual Machine的简写,是RHEL 5.4推出的最新虚拟化技术,目前红帽只支持在64位的RHEL l5.4以上运行KVM,同时硬件需要支持VT技术,必须在64位bit环境中使用KVM。

通过一下命令可以查看系统是否支持VT

cat /proc/cpuinfo | grep ‘vmx’

你对KVM了解多少?

KVM的前身是QEMU,08年被红帽收购并获得一项技术hypervisor,不过RedHat的KVM被认为是将成为未来Linux hypervisor的主流。

二、KVM的组成

一个是管理虚拟硬件的设备驱动,该驱动使用字符串设备/dev/kvm做为管理接口。

linux进程有两种模式:内核和用户模式,KVM新增加一种客户机模式。

三、KVM的作用

提高物理服务器的资源利用率(较少的在硬件上的投入)

可以批量部署

实现实时快照技术

支持克隆技术

可以实现虚拟机的离线迁移和动态迁移(提高IT部署的灵活性)

可以将资源动态调整(传统的IT架构资源是固定的,无法动态分配)

四、KVM的优势

KVM与VMware的优势

ESX的底层是VMkernel + linux,VMkernel启动后开始接管对硬件管理,然后启动第一个linux虚拟机,协助VMkernel一起来管理和调度硬件资源。

KVM是直接将linux kernel变成hypervisor,只需要从标准linux内核启动即可,linux kernel拥有的特性可以全部利用上。KVM架构上的优势使得它非常简洁,在开发出来仅三个多月就被合并到了标准内核。

KVM与Xen的优势

Kvm和xen的最大区别就是架构,KVM是直接构建在linux kernel之上,把linux kernel变成hypervisor,是利用kernel已有的的功能基础上开发KVM所不具备的功能。

Xen的hypervisor是自己从头开始构建的,对硬件资源的调度管理,虚拟机的管理,还有很多接口与linux kernel不兼容,然后对于xen,hypervisor需要通过Domain0对虚拟机提供硬件访问驱动支持。

虽然说现在3.0的kernel中结合了xen,但是大部分linux OS的内核还是2.6,即便是一些新的发行版OS,也还是2.6的内核,新内核要单独去升级。

上面列举了两个例子,都与KVM进行了对比,但并不是就代表其他虚拟化技术不好,大家做技术的都知道,适合自己的才是最好的。

五、KVM发展趋势

随着虚拟化技术的发展,如今的虚拟化技术已经走向了企业关键业务领域。红帽推出了基于KVM内核虚拟机技术的虚拟化系列方案,旨在将虚拟化技术应用于企业部署,异构平台管理和云计算架构。