我一直在研究如何为运行 3 个客户机(两个基于 Linux 和一个基于 Windows)的服务器实施虚拟化。在尝试使用 Xenserver 后,我对它的架构印象深刻,并想使用开源 XEN,这时我听到了很多关于 KVM 的信息,关于它有多好以及它的未来等等。所以,这里有人能帮我解答一些关于 KVM 和 XEN 之间的疑问吗?
根据我对一台服务器上三个虚拟机的要求,KVM 和 XEN 哪个性能更好,考虑一个 Linux 虚拟机将作为文件服务器,一个作为邮件服务器,第三个作为 Windows 服务器?
KVM 稳定吗?升级怎么样?XEN 怎么样?我在 Ubuntu 上找不到对它的支持?
有没有关于 Xen 和 KVM 的已发布基准测试?我好像没找到。
如果我使用 Xen,是否有可能稍后转到 KVM 或反之亦然?
总之,我正在寻找真正的答案,我应该使用哪一个.Xen 还是 KVM?
答案1
Red Hat 正在从 Xen 转向 KVM。这肯定会影响我在现有 Linux 安装下运行它的选择。另一方面,没有像 XenServer 那样的 KVM 版本。
两者之间的转换是可能的,但并不容易。
答案2
Xen 是一条技术死路,这一点在各种论坛上都讨论过很多次。这就是为什么所有主要参与者都将其抛在身后。
如果您想要一个受支持且易于管理的 KVM 设置,请查看 RHEV。还有其他选择 - libvirt、proxmox 等。
答案3
我发现 XEN 将块设备映射到 domU vm 的处理比 KVM 更容易管理,也更灵活。具体来说,我在 dom0 中管理 + 创建 LV(带 LVM2),并将它们直接映射到 domU 中的“/dev/sda1”。
使用 KVM,(据我所知)我必须导出整个分区磁盘。这意味着,我必须在 dom0 上使用 partx 来“连接”和“分离”它们。
我还喜欢,对于较低的性能要求,XEN 可以在没有 VT 位的旧硬件上运行。据我所知,KVM 需要特殊的处理器支持。
不幸的是,我已经看到了明显的迹象:RedHat + Ubuntu 目前似乎更倾向于 KVM。如果主内核树中没有 Xen,而 Citrix 又没有发布自己的 Xenserver 产品,那么似乎没有多少动力将其重新纳入内核树。
答案4
Xen 的性能更佳(修改内核以实现半虚拟化可避免硬件虚拟化工作所必须执行的所有指令陷阱),但需要可修改的内核。如果您需要以客户机身份运行 Windows,则必须使用 KVM。
由于补丁无法跟上 Linux 内核开发的步伐,因此 Xen 的发行版支持正在减少,而 KVM 的内核位已经完全集成到 Linux 内核中,用户位可以按照自己的节奏发展。