http://www.linux.com/news/enterprise/systems-management/327628-kvm-or-xen-choosing-a-virtualization-platform
Monday, 12 July 2010 00:00
Joe 'Zonker' Brockmeier
When Xen
was first released in 2002, the GPL'd hypervisor looked likely to take the crown as the
virtualization platform for Linux. Fast forward to 2010, and the new kid in town
has displaced Xen as the virtualization of choice for Red Hat and lives
in the mainline Linux kernel. Which one to choose? Read on for our look
at the state of Xen vs. KVM.
Things
in virtualization land move pretty fast. If you don't have time to keep
up with the developments in KVM or Xen development, it's a bit
confusing to decide which one (if either) you ought to choose. This is a
quick look at the state of the market between Xen and KVM.
KVM and Xen
Xen
is a hypervisor that supports x86, x86_64, Itanium, and ARM
architectures, and can run Linux, Windows, Solaris, and some of the BSDs
as guests on their supported CPU architectures. It's supported by a
number of companies, primarily by Citrix
, but also used by Oracle
for Oracle VM, and by others. Xen can do full virtualization on systems
that support virtualization extensions, but can also work as a
hypervisor on machines that don't have the virtualization extensions.
KVM is a hypervisor that is in the mainline Linux kernel. Your host OS has to be Linux, obviously, but it supports Linux, Windows, Solaris, and BSD
guests. It runs on x86 and x86-64 systems with hardware supporting
virtualization extensions. This means that KVM isn't an option on older
CPUs made before the virtualization extensions were developed, and it
rules out newer CPUs (like Intel's Atom CPUs) that don't include
virtualization extensions. For the most part, that isn't a problem for
data centers that tend to replace hardware every few years anyway — but
it means that KVM isn't an option on some of the niche systems like the SM10000
that are trying to utilize Atom CPUs in the data center.
If you want to run a Xen host, you need to have a supported kernel
. Linux doesn't come with Xen host support out of the box, though Linux has been shipping with support to run natively as a guest
since the 2.6.23 kernel. What this means is that you don't just use a
stock Linux distro to run Xen guests. Instead, you need to choose a
Linux distro that ships with Xen support, or build a custom kernel. Or
go with one of the commercial solutions based on Xen, like Citrix
XenServer. The problem is that those solutions are not entirely open
source.
And
many do build custom kernels, or look to their vendors to do so. Xen is
running on quite a lot of servers, from low-cost Virtual Private Server
(VPS) providers like Linode
to big boys like Amazon with EC2. A TechTarget article
demonstrates how providers that have invested heavily in Xen are not
likely to switch lightly. Even if KVM surpasses Xen technically, they're
not likely to rip and replace the existing solutions in order to take
advantage of a slight technical advantage.
And
KVM doesn't yet have the technical advantage anyway. Because Xen has
been around a bit longer, it also has had more time to mature than KVM.
You'll find some features in Xen that haven't yet appeared in KVM,
though the KVM project has a lengthy TODO list
that they're concentrating on. (The list isn't a direct match for
parity with Xen, just a good idea what the KVM folks are planning to
work on.) KVM does have a slight advantage in the Linux camp of being
the anointed mainline hypervisor. If you're getting a recent Linux
kernel, you've already got KVM built in. Red Hat Enterprise Linux 5.4 included KVM support
and the company is dropping Xen support for KVM in RHEL 6.
This
is, in part, an endorsement of how far KVM has come technically. Not
only does Red Hat have the benefit of employing much of the talent
behind KVM, there's the benefit of introducing friction to companies
that have cloned Red Hat Enterprise Linux and invested heavily in Xen.
By dropping Xen from the roadmap, they're forcing other companies to
drop Xen or pick up maintenance of Xen and diverging from RHEL. This
means extra engineering costs, requiring more effort for ISV
certifications, etc.
KVM
isn't entirely on par with Xen, though it's catching up quickly. It has
matured enough that many organizations feel comfortable deploying it in
production. So does that mean Xen is on the way out? Not so fast.
There Can Be Only One?
The
choice of KVM vs. Xen is as likely to be dictated by your vendors as
anything else. If you're going with RHEL over the long haul, bank on
KVM. If you're running on Amazon's EC2, you're already using Xen, and so
on. The major Linux vendors seem to be standardizing on KVM, but
there's plenty of commercial support out there for Xen. Citrix probably
isn't going away anytime soon.
It's
tempting in the IT industry to look at technology as a zero sum game
where one solution wins and another loses. The truth is that Xen and KVM
are going to co-exist for years to come. The market is big enough to
support multiple solutions, and there's enough backing behind both
technologies to ensure that they do well for years to come.
分享到:
相关推荐
KVM上安装Xen手册,比较详细,希望大家下载。如果好的话,记得点赞噢
To install RHEL 3, 4 and 5 beta 2, and Windows XP Xen guests. Setup at Start: A workstation installed with Red Hat Enterprise Linux 5 beta 2/ Virtualization Platform.
Xen and the Art of Virtualization_2003
中文的xen and the art of virtualization.rar,对于研究虚拟机用户的初学者提供中文帮助。
马大哥Xen_KVM虚拟化及IaaS云技术OpenStack的很全笔记
比较全面的介绍xen的书,专业介绍虚拟化技术xen的资料。希望大家喜欢!
虚拟机XEN的系统介绍,非常清晰,对于入门者来说很好
本书为读者提供了虚拟化基本方法的理解以及有关使用Xen技术部署虚拟化的详细信息。
虚拟化技术_Xen及KVM产品分析.pptx
Xen虚拟化技术专业指南读物。英文PDF版
Xen Cloud Platform Administrator's Guide.pdf
Linux Virtualization with Xen
Great book for Xen virtualization.
Professional Xen Virtualization.pdf 清晰版 页数:435
Virtualization with Xen is the first book to demonstrate to readers how to install, administer, and maintain a virtual infrastructure based on XenSources latest release, Xen 3.2. It discusses best ...
Xen、KVM、VMware、hyper-v等虚拟化技术的对比.docx
Xen Cloud Platform Installation Guide XEN云平台安装手册
《Running Xen A Hands-On Guide to the Art of Virtualization》 chm文件。