内部虚拟服务器场的XEN vs KVM的状态,如活动场

所以我们有一个人生的服务器农场,传统的东西没有虚拟化。 这是为了保持这样的时间。 我们正在讨论的服务器是:负载均衡器,数据库主服务器,数据库从服务器(2个),Web服务器(2个),CMS服务器。 总共7个服务器每个农场。

我们希望为了内部的目的而有一到多个相当精确的“生命结构”“副本”。

  • testing/分期:如果我们不使用相同的软件configuration,可以在实况之前发现错误
  • debugging/基准testing:与testing相似,但使用其他工具。 debugging标志,并从Tetsing / Staging中分离出来,不会与QA干扰。 旨在深入了解我们的生活系统上的情况
  • 开发/实验:更改系统组件,软件版本,库和configuration,以提高性能,开发人员的有效性,面向未来的系统等。

总而言之,3个虚拟“农场”各有7个虚拟服务器,整齐地隔离开来。

现在我知道这可以通过许多不同types的虚拟化来实现。 问题是什么是最好的? 从开源的angular度来看,VMware并不是我们想用战略眼光来看的。 纵观开源虚拟化领域的两大巨头XEN和KVM,我很乐意听取关于如何select的build议。 networking似乎未定。

附加信息:

  • 我们购买的服务器硬件的“续航时间”将是2 – 3年
  • 如果这是在select虚拟化技术时考虑的一个因素,我们可能会稍后将系统迁移到云环境中
  • 在高负载情况下隔离服务器 – 农场/服务器非常重要。 当某人在实验农场中破坏时,质量保证不应该受到影响
  • Efficent资源使用当然是赞赏的(内存过度使用/共享页面?硬盘驱动器上的自动共享对象,如linux-vserver hashify?)
  • 定期维护要求和易于pipe理

我知道事情正在stream转,但是如果你能告诉我你现在要select什么的意见,那么看到我们希望至less三年的技术生活,build立和再利用专有技术,我将不胜感激。 也许最后我们都会意识到XEN和KVM都不是决定战斗的因素。 这方面的启示对我们来说更为宝贵。

PS:不让火焰:D

目前我们使用Xen,但我认为在2011年我们将迁移到KVM。 有以下原因:

  • 与Xen的开发相比,KVM的开发与Linux内核的整合更为紧密。
  • KVM vms作为Linux内核的进程运行。 这有很多的含义,比如调度,内存pipe理等等。这也允许KVM执行内存的过量使用(它只是交换进程内存),所有这些都是使用来自内核的经过validation的代码。 Xen使用它自己的代码来完成所有这些工作,虽然没有问题,但并不像Linux内核那样经过testing和validation。
  • 全function似乎在KVM上效果更好。

反对KVM的主要观点是性能,但是最近在Linux和Windows VM上使用VirtIO驱动程序的报告似乎使得这一点越来越less。

至于pipe理机器,我用ganeti 。 Ganeti是一个集群虚拟服务器pipe理系统,您可以在其中添加节点,并可以在创build,启动,重新引导,迁移等节点上对虚拟机执行所有操作。它还支持创build镜像磁盘映像的DRBD实例如果其中一个节点失败,则两个节点提供自动故障转移/迁移。 它支持KVM或Xen,但不支持混合集群。 Ganeti是基于文本的,但有一个Web界面项目,做得很好。 使用ganeti + debootstrap,我们可以非常快速地部署/克隆各种types的vms,从磁盘执行LVM快照以进行testing等等,所以我认为它会让你知道。

只要记住,不pipe你select哪一个,都不应该虚拟化像文件服务器或数据库这样的高IO机器,并期望它们执行相同的操作。 在某些情况下,高IO虚拟机甚至可能会降低主机上的所有其他虚拟机的性能。 并非所有东西都可以安全地虚拟化。

编辑:由于你提到的testing和开发,阅读这篇文章 。 我正在考虑组装一些非常接近的东西。

在业务需要可靠且高度可用的解决scheme之前,开放源代码的爱是很危险的。 免费的 ESXi和Hyper-V服务器如此受欢迎是有原因的。 除了支付相对便宜的支持之外,还有更多的专家走来走去。

也就是说, XenServer由Cirtix支持; 而KVM / QEmu是由Red Hat支持的(可能还有其他的,我没有这个意思)。 但只有在某些configuration中,所以这是值得关注的。 Xen本身支持VHD格式,并且VHD文件可以在Hyper-V,虚拟服务器,虚拟PC和Xen之间进行传输而无需修改(VPC的大小限制)。 KVM使用qcow2格式; 没有其他人使用,虽然它可以转换为其他格式与第三方实用程序。 这些服务器还有更less的pipe理工具可用。

如果您只使用Linux,而且确信这种方式很长一段时间(即只要您在那里工作,或者只要另一个战略决策将您的服务器迁移到云或任何地方),您可以尝试KVM或Xen开源。 而且,如果你使用一个发行xen-ready(即半虚拟化)内核(Debian / Ubuntu,至less)的发行版,Xen是一个不错的select。 也许是KVM,但我推荐Xen,因为这是我更熟悉的。 因人而异。 将Xen和Pacemaker结合起来用于虚拟机群集,我们已经做了几次,并取得了良好的效果。

现在,如果你有几个/多个Windows系统,我会花一些钱去XenServer。 付费版本为您提供(IIRC;请检查确认)高可用性和XenCenter,这使基于Windows的控制台变得更加简单。 你也可以在Xen Open Source上运行Windows,但是有点麻烦。 此外,还有免费版本的XenServer,但我觉得它的命令行模糊和困难。 你可以掌握它,但这需要一些时间。

请记住,在使用XenServer时,您将需要“访客实用程序”或“PV驱动程序”。 没有他们,表演将受到影响。

XEN-hy试试看,我们现在使用的最后2年没有问题! 我们使用旧版本