QEMU在KVM虚拟化中的重要性逐渐降低

日期: 2014-08-05 作者:Sander van Vugt翻译:王学强 来源:TechTarget中国 英文

在虚拟化技术出现之前,模拟器技术就提供了从逻辑上实现硬件分离的可能性。但是,模拟计算环境中使用动态二进制转换方式来模拟CPU,相对于虚拟化来说,这种方式的效率偏低。而现在的hypervisor已经不再需要翻译指令,使得计算过程更加高效。 虚拟化比模拟器更加高效,因为CPU可以直接处理系统调用。

因此,在现在的虚拟化平台当中,比如基于内核的虚拟机(KVM),已经不再需要基于模拟器的技术。反之亦然,在这篇文章当中,我们将会介绍QEMU(short for Quick Emulator)——一种基于KVM虚拟化环境的开源模拟器,现在还可以发挥哪些作用。 为了理解QEMU和KVM之间如何协同工作,我们首……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

在虚拟化技术出现之前,模拟器技术就提供了从逻辑上实现硬件分离的可能性。但是,模拟计算环境中使用动态二进制转换方式来模拟CPU,相对于虚拟化来说,这种方式的效率偏低。而现在的hypervisor已经不再需要翻译指令,使得计算过程更加高效。

虚拟化比模拟器更加高效,因为CPU可以直接处理系统调用。因此,在现在的虚拟化平台当中,比如基于内核的虚拟机(KVM),已经不再需要基于模拟器的技术。反之亦然,在这篇文章当中,我们将会介绍QEMU(short for Quick Emulator)——一种基于KVM虚拟化环境的开源模拟器,现在还可以发挥哪些作用。

为了理解QEMU和KVM之间如何协同工作,我们首先需要了解QEMU这些年的发展过程。QEMU在很久之前就已经被推出,经过不断地发展,现在已经进化为一个hypervisor,最新的稳定版本是2014年4月份发布的2.0。它支持Linux、Windows以及一些其他类型的Unix虚拟机。

而现在很多使用KVM的发行版本并没有全部采用QEMU这种方式。而是集成了一些QEMU项目中的工具。通常,开源软件会选择使用QEMU,但是在这个领域当中,为什么用户不使用现有、完整的解决方案,而仍然要自己编写部分代码呢?

使用QEMU管理磁盘

一个来源于QEMU的重要命令是QEMU-img,其允许你创建、转换和更改磁盘镜像。在管理不同的磁盘格式时,这种工具可以发挥非常重要的作用。QEMU-img不仅可以创建qcow(QEMU copy-on-write格式)或者qcow2(包含新特性的copy-on-write格式)的磁盘。其还支持其他格式,比如原始磁盘格式、VMware VMDK格式以及VirtualBox使用的.vdi磁盘格式。

当使用默认的KVM管理工具时,比如copy-on-write或者虚拟机管理器,你可以创建虚拟机(VM)使用的后台存储。而在后台,这些管理界面实现的功能通常还是依赖于QEMU-img。通常在后台执行下面的命令:QEMU-img create -f qcow2 windows.img 10G,这条命令将会创建一个名为windows.img的10GB大小的qcow2格式的文件。

QEMU硬件驱动

除了磁盘格式和允许管理员操作后端存储的多功能工具,QEMU同样提供了很多硬件驱动。在现在的KVM发行版本中,比如Red Hat Enterprise Linux 7,这些驱动被集成在一个QEMU-kvm-tools包当中,其中包括了在Red Hat内核模块之上、针对虚拟化硬件的驱动。在KVM当中,你可以使用VirtIO作为QEMU模拟器的替代方式,这样可以减少对于这些模拟驱动的使用需求。

QEMU逐渐被取代

当KVM首次出现在Linux中时,其仅仅包含了一些内核模块,而所有的上层功能都是通过其他工具实现的。因此,QEMU在之前KVM版本中发挥了更为重要的作用,并且提供了对于硬件的访问功能。现在,KVM已经实现了改进,比如VirtIO驱动的引入,相比于传统的QEMU方式,其可以允许虚拟机更为高效地管理硬件。当然,KVM将会继续发展,使得QEMU的作用越来越小。但是,KVM开发者也将会和QEMU开发者协同工作,提供一种拥有更好集成特性的内核模块、工具和驱动,来在Linux上提供多种虚拟化方式。

翻译

王学强
王学强

TechTarget特邀编辑,毕业于计算机专业,现任职于外企IT分析师,负责网络、防火墙和服务器等系统运维工作,对虚拟化、网络安全和渗透测试拥有浓厚兴趣,工作外热爱旅行、汽车和健身。

相关推荐