我正在构建一个新的工作站,并希望将 Linux 与 Windows 一起使用。这似乎是熟悉 Xen 或 KVM 的好机会。
所以我面临一个选择。我看到一个类型 1 的管理程序支持使用 Xen,在域之间有非常清晰的划分。另一方面,KVM 似乎在使用最新内核的货币方面领先。
我用谷歌搜索了“xen vs kvm”并将结果的第一页拆开。我也经历了几次服务器故障搜索,现在脑海中浮现出一堆杂乱无章的事实,并非所有这些都是最新的。
简而言之,我不太确定该跳哪条路。对我来说真正重要的是:
- 管理程序和来宾中的稳定性
- 合理的性能,特别是对于 Windows 来宾
- 强烈的客人隔离
- 易于管理
- 给客人的 USB 直通
考虑到所有这些,您认为哪个是更好的选择?
更新- 几个月后。
为了在不久的将来有相同问题的任何人的利益,这就是最终的结果:
- 我在 OpenSuse 11.2 上开始使用 Xen,比 11.3 还要早几天。我发现 suse 更新通道非常慢(不知道这是否只是我的一个问题)。我让 Xen 快速启动并运行,但对来宾的网络适配器感到很痛苦。
- Ubuntu 9.10 在我这样做的时候发布了,所以我决定试一试。系统本身很棒,KVM 开箱即用。但是,我偶尔会遇到稳定性问题,我觉得这可能与 KVM 相关(当时的其他嫌疑人是 Compiz 和 NFS)。
- 为了查看稳定性问题是否与 KVM 相关,我决定尝试使用 VirtualBox,并发现它更易于使用,具有漂亮的界面和令人惊讶的出色性能。
- 稳定性问题还没有消失,所以我想 KVM 并没有错,但目前我仍然使用 VirtualBox,因为它使用起来感觉更好,并且具有一些很好的功能和良好的性能。
这就是我今天所处的位置。希望这对某人有用。
使用libvirt可以轻松管理,无论您使用 Xen 还是 KVM,它都会呈现相同的界面。稳定性很大程度上取决于底层发行版 - Xen 仅适用于某些(通常较旧的)内核,而 KVM 是主线,因此在每个版本中都会得到修复。
我会选择 XEN。两个主要原因。首先,您可以通过安装 OpenSUSE 11 轻松地安装和配置它,并且您还可以获得一个 GUI 来管理它。但是所有的技术内容仍然存在于 shell 提示符下,因此您可以随时了解 XEN 的内部情况。第二个原因是 XEN 是提供 VPS 托管的公司的首选,如果您认为有一天您可能想利用您的知识找到工作,XEN 是一个更好的选择。如果您正在考虑职业提升效应,请务必查看 XEN 的内部结构、Linux 上的网络虚拟化(它不是 XEN 的一部分,但对构建路由 VM 的测试平台很有用)和 XEN api。有各种 XEN 管理包可以为您进行管理,但在特殊情况下,
XEN 满足您的所有要点并且已经存在了更长的时间,这就是为什么它是托管人的选择。
请注意,您可能还想查看与 XEN 完全不同但也被 VPS 托管公司大量使用的 OpenVZ。由于 OpenVZ 使用虚拟化的容器模型,您实际上可以在 XEN 来宾中运行 OpenVZ。
在执行此操作时,请考虑您的磁盘存储。您可能需要卷管理,它也包含在 OpenSUSE 中并带有一个漂亮的 GUI,以便您可以将硬盘分区或卷分配给来宾操作系统。例如,您甚至可以将其设置为可以从 XEN 来宾引导或使用 Windows 分区。
RedHat 和 Canonical (Ubuntu) 都选择 KVM 作为未来的虚拟化方法。我使用 RedHat 5.4 启动了 KVM 服务器,并且在桌面环境中运行服务器或来宾时运行它没有任何问题。在我看来,市场开始青睐 KVM。
https://wiki.ubuntu.com/UbuntuWeeklyNewsletter/Issue76
http://www.redhat.com/virtualization-strategy/
对于工作站,我会采用 KVM。我将它用于我的笔记本电脑上的开发虚拟机,它运行得非常好。我在数据中心广泛使用 Xen,但我不喜欢将它用于工作站,它的架构有点奇怪,并且过去给我带来了硬件支持的麻烦(诚然,它在过去相当遥远)。
答案是:取决于您的需求。我发现如果你想将 VM 用作桌面,KVM 不是很好,因为它缺乏 3D 加速能力,声音可能很棘手等。我过去使用过 Xen,但我将两者都归类为“服务器虚拟化”软件. 如果你要在你的工作站上测试服务器虚拟机,我会选择 KVM——它的明显优势是不需要自定义内核或其他任何东西。Windows 运行良好,整个技术足够稳定,可以用于日常使用,甚至可以用于数据中心的生产。但是,如果您打算将 VM 用作桌面(即在 Windows 上运行一些无法在 linux 上运行的程序),我建议您使用 VirtualBox。
我成功让 KVM 在我的笔记本电脑(ubuntu 9.04 64 位)上运行 vista 业务,但图形加速很糟糕。幸运的是,我发现如果我在 vista 中使用 tsclient 本地连接到 RDP 服务器,那么我得到了完美的图形。
Xen 在服务器上相当不错,但我不确定我是否愿意在桌面上使用它,另外,它不能很好地运行 Windows(如果有的话?),我似乎记得。
KVM 也非常容易设置。
RHEV 即将问世——基于 KVM 的服务器和桌面虚拟化。它比 Xen 更容易管理,非常稳定,使用基于 Linux 的工具来处理虚拟化的各个方面。