背景
我们正在考虑构build一个虚拟机主机用于QAtesting。 我们的主要目标是能够在自包含的环境中轻松configuration一组虚拟机,以模拟企业中的主要机器。 我们可能在每个环境中都有一台数据库机器,一台应用服务器,一台Web服务器以及一台或两台客户机。
我们希望有两到四个环境同时处于活动状态(即,同时使用多达20个虚拟机),同时可能有另外4个环境处于脱机状态。
基础知识需要大量的马力。 我们不打算在这些环境中testing性能,主要是自动function和集成testing,可能还有一些人工testing。 虚拟机不需要像处理器速度快一样,但我们宁愿不要让它们因慢速磁盘延迟而陷入困境。
题
鉴于这些目标,您认为从硬件的angular度来看,我们应该考虑什么? 这是否值得把它分成几个“小”的机器,而不是一个喇叭大的?
记忆可能是你最大的限制。 检查你的虚拟环境,看它是否可以共享未使用的内存(例如,如果你可以分配超过100%的可用内存)
我们有一个巨大的8核心,16Gbram主机,它将运行大约20个虚拟机。 我认为这将是更具成本效益,多function和冗余有两个主机的一半大小。 然而,只有20台虚拟机,超过4台主机的东西可能难以pipe理。
如果您希望获得更多的function,请在SAN或其他共享存储上find虚拟机,以便它们可以在任何主机上运行。
硬盘延迟将成为一个问题,因为每个服务器将有不同的访问模式,并且可能会隐藏同步错误,因为磁盘迫使每个人都按照一定的顺序(基于接收到请求的时间)进入,慢慢地往下掉。
我会去一个非常快速的驱动器条纹镜像arrays,以限制你的暴露这个问题。 它仍然会隐藏问题(特别是某些竞赛条件),但不是那么多。
用内存加载服务器(16-32GB没有这样做),然后去找一个8核心的机器,或者两个四核心的机器,每个8-16GB。
-亚当
你有没有考虑过使用刀片机箱? 我公司的所有VMware系统都运行在刀片机箱中,从硬件的angular度来看,我们拥有很多的灵活性和冗余性。 您甚至可以拥有“热备份”刀片,还可以添加额外的刀片,或者在闲暇时更换更强大的刀片。
VMWare甚至专门支持惠普品牌刀片机箱中的一些高级function。
我所使用的虚拟化机制需要虚拟主机的内存的静态分配,因此您可能需要在服务器中使用相当大的RAM。
对于较less的大型喇叭机器而不是较多的喇叭机器,值得一提的是,在虚拟环境中,物理主机实际上是所有虚拟主机的单点故障。