当虚拟化正在从一个好奇心转变为一个时髦的口号的时候,许多白皮书和研究报告要解决的核心问题之一是性能隔离问题。简言之,性能隔离是在这种时候出现的:你有不同类型的工作量,每一个工作量一般都在独立的服务器上运行,所有的工作量都在同一个处理器上的虚拟机上运行,每一个工作量都不知道其它工作量的存在。
这个问题的讨论没有过去那样多了。用谷歌搜索可以查到许多优秀的论文。但是,这些论文都是2007年的。Arstechnica.com网站总编Jon Stokes说,为了观察这些问题的真实性,他最近在"The Server Room"栏目发起了一场讨论,询问IT专业人员最近是否遇到性能隔离问题。他的讨论的得到了三个回应。这个不科学的调查支持Stokes提出的有关虚拟化在过去的几年里如何发展的一个假设。
具体地说,虚拟化在2006年的技术新闻报道中主要是关于处理器和ISA扩展的硬件故事;然后,虚拟化在2007年变成了在不同的虚拟化方式的性能和性能隔离之间进行权衡的软件故事;在2008年的过程中,虚拟化完成了它作为管理软件和生态系统故事的转变并且一直保持到现在。
这个讨论谈到了在选择一个性能隔离不再是一个问题的虚拟化计划的时候更广泛的生态系统的相对重要性,如管理工具、技术支持和灵活性等。这不是因为不同虚拟化方法(BT、半虚拟化和操作系统托管的虚拟化)没有对工作量的互动产生影响,因为他们明显地有这个影响。它们很可能继续有这个影响。但是,现在,这些类型的考虑与其它因素相比就不值一提了。
管理员还可能把性能敏感的工作量或者容易产生严重错误的工作量保留在自己的机器内,仅仅整合其任务不是决定性因素的那些服务器。
至于完全没有明显的兴趣做更多的性能隔离基准测试和对这个问题进行新的研究,最可能的解释似乎是很难提出一个足以代表对广大的用户有用的工作量组合。Stokes说,工作量组合是指两件事情:1)整合到同一台服务器上的实际的应用程序组合;2)强调这些应用程序的一种方法,即每一个应用程序代表一种典型使用方式。
即使你可能解决了第一个问题,第二个问题也许是不可能解决的,因为客户群的规模不同以及所有不同的性能变量互动的方式是不确定的。换句话说,为 100个客户服务的一个应用程序组合和使用方式在为150个客户服务的时候也许会出现故障,也许为1000以下的用户服务都没有问题。
总之,作为选择一个虚拟化解决方案的主要考虑,虚拟化工作量的性能隔离已经不再是一个问题了。从现在开始,真正的问题是可管理性、灵活性和可靠性。