多核与虚拟化时代 IT世界如何发展

IT的世界每隔几年好像可以消停几天。处理器总是越来越快,存储容量越来越大,带宽也成倍增长,随后这些技术所支持的工作量能够把它们的疯长稳定住一段时间,但这样的日子通常很短。还在不久前,Windows Active Directory域控制器还要求小型的IT商店拥有一台自己的专用服务器,但现在几乎没有人提到它了。

也是在不久前,Microsoft Exchange在大多数企业里还像是一头800磅重的大猩猩,但它现在已经可以被塞到一台虚拟机或者是中间层服务器里了。而且即使是大如SAP的那些应用,在强大的现代多核CPU面前也突然变得像小孩子的玩具了。

在过去的两年里,随着CPU性能、存储密度以及网络带宽的巨大提高,许多曾经让人头疼的问题已经不再那么痛苦了,那么接下来会发生什么呢?

如果历史可以借鉴,我想说将要发生的事情会是新软件的井喷,其中的大部分创造性和有用的代码会利用到硬件性能提升带来的优势。

例如Intel新推出的Westmere-EP芯片中采取的AES-NI指令。在我做的性能测试中,AES-NI在AES加密任务中得到了400%的性能提升,将一个851MB文件的加密速度从13.5秒减少到3秒。这是个巨大的成就,这意味着全硬盘加密工具在利用新的指令加密时将不会有明显的性能降低。加密交换将会变得非常普遍,处理大容量和高安全性的数字交易将不再需要专用的加密卸载或CPU时间容载量,这可能就是我们一直在寻找的帮助我们锁上大门的那把钥匙。

另一方面,现代的CPU中不断增加的内核数量让从前那些感觉有些困难的软件解决方案变得重新具有吸引力。比如软件RAID,不久以前是否应用它还颇让人举棋不定,它能够提供显著的性能提升,但对CPU周期的要求却影响了服务器的核心职能。但现在它已经不是一个大问题了。人们会说,哎呀,为什么不单独分给它一个核心呢?你至少还有三个或五个。

于是很自然的,这一切都会进一步推动我们进入虚拟化,这将不仅成为主流,而且会成为唯一的流向。首先,虚拟化是那些非线程应用可以继续存在于越来越多的线程世界中的唯一途径,几乎没有例外。非虚拟的服务器成为珍稀品种只是时间问题,嵌入式的hypervisor的统治即将到来。事实上,主要的硬件厂商已经正在开发并且发布了以虚拟化为中心的服务器和刀片服务器,抛弃了传统设计和使用模式。想象一下这样的世界吧,这里绝大多数服务器都是专门为运行数十台虚拟服务器而设计的,拥有几十个内核,几百GB的内存,而且几乎没有内部存储。这个现实正在敲我们的大门,虽然现在还不是主流,但我保证他们很快就会成为主流了。

在过去的几年里,CPU核心的战争看上去很简单,就像Schick和Gillette在剃须刀的刀头里放刀片的比赛一样。其实想想当年,一个刀片也够用,但现在看来却完全不行。在IT界基本上也就是这样一回事。仍然有数百万台的单核心服务器在消耗着大量的电力,运行着那些在虚拟机和物理机上性能没什么差别的应用。时间、折旧和预算将最终解决这一问题,但我们应该做的是让它加速到来。事实上,随着 Westmere-EP的发布还有AMD即将发布的12核心Magny-Cours,我们要等待的时间不太久了。

因此振作起来吧。如果你运行着一个小型的IT商店,那么你将看到你的整个底层架构被缩小塞到两台或三台 1U服务器里。如果你运行着大型商店,那么你很快就不会再对着死气沉沉的物理服务器发愁了,它们会变成一个大型的虚拟机中几乎看不到的一系列齿轮。相信你们当中有些人已经开始这样做了。

很早以前我就已经为虚拟化摇旗呐喊了。现在它的鼓声越来越大,而且几乎每天有新的情况出现。事实上它已经不仅仅是一条可供选择的IT道路了,它会迅速的成为唯一的出路,我们不要再浪费时间了。