云计算的 3 张面孔

  • 胡键

2009 年 7 月 2 日

话题:SOA架构云计算DevOps

最近,EMC 的 VP,Chuck Hollis 在其博客上发表了题为《云计算的 3 张面孔》的博文,对“什么是云计算和什么不是云计算”进行了讨论。他认为,云计算和传统 IT 的重大不同主要集中在 3 个方面:

……云计算代表了对 IT 传统方法的颠覆,表现在 3 个重要方面:

  • 架构(构建方式)
  • 运营(运转方式)
  • 以及消费(付费方式)。

在架构方面,Chuck 认为,与传统 IT 中的每个应用有自己专用的服务器、存储等资源不同,在云计算中,所有资源(服务器、网络、存储)都是以一定规模共享,可动态访问的。

其目标不仅是通过共享提高效率,而且是要交付响应率——这种能力可以让应用或工作负荷在需要的时候快速地得到更多资源,无需进行不必要的预分配。

对于云计算环境的运营,Chuck 指出,所需的运营人员要少得多。这幕后的功臣要归结于其支撑技术平台的标准化。正是标准化,使得流程标准化得以简化;进而,标准化的流程又简化了自动化。与之相比,传统 IT 使用的技术就要庞杂多了,可能是不同的服务器、网络、操作系统、存储等等。

至于消费模型,Chuck 则表示“按使用付费”和“计量(Metering)”并不是云计算的特点,因为它们在云计算出现之前就已经存在了。在他看来:

云计算真正带来的变化是让我们可以安心地面对资源的超额认购。在典型的 IT 环境中,服务器资源和存储带宽是按“近最差情况”准备的,一般来讲,这导致大量资源被浪费了,因为“近最差情况”并不是经常出现。

在云计算中,你是为平均情况而非“近最差情况”而准备。要是你需要大量的资源,可以假定从共享池中获得。

在对云计算的 3 个方面进行简短讨论之后,Chuck 开始了对“什么是云计算和什么不是云计算”的讨论。

首先,Chuck 并不同意“所有云都是被外包,在 IT 之外”这一假设,并且明确反对将云计算按照构建人和运行位置来定义。

精通 IT 的组织要构建自己的内部云并没有什么理由。而且,要是你一直在跟踪私有云的讨论,你就会发现非常鼓励以这样一种方式去构建它:在内部资源和外部资源之间动态进行选择。

Chuck 接下来批驳了他认为的第二种错误观点。

我一老听到的第二种说法是,要想完全地利用云,应用就必须被重新思考、重新构建和重新编写。我经常从那些想要卖新工具的厂商那里听到这种说法。

在我看来,这完全是胡说八道。

随即,他抛出了自己所认为的云计算:

拿随便一种应用来讲,把它放到虚拟机里面,按照以上说的 3 个原则(架构、运营、消费)来运转。瞧!你已经有了一个云计算的定义。

对于第二种说法,Chuck 并不反对。但他认为,那些更应该是作为一种选项出现,但作为云计算的定义,它们不是必须的。Chuck 还给出了这一说法的另一版本:

第三,以上关于应用的言论有一个更让人难以捉摸的版本:应用必须是多租户的(它们必须知道有多个组织在使用同一份代码),必须清楚安全性、必须清楚服务水平协议、必须清楚地理位置、必须清楚……

Chuck 对以上说法报以了强烈地嘲笑,直言它们都是荒谬不经。在他的眼里,以上问题都属于基础设施层面,而非应用层面。他写道:

应用有权利搞清楚它周围的世界,然后就它们要做什么和怎么做自己进行明智的决策。但是同样这应该是一种选择,而不应该是一种必备条件。

现有技术无法解决云计算的超大伸缩性需求,必须要发明创造出新的技术。对于这一点,Chuck 同样也给予了否定。他认为,确实存在着超大的云,它们有可能需要一些新技术作为支撑,然而这种云只是例外,而非必然。使用现有的技术,同样也可以构造出高效且较大规模的云。最后,对于另一个假设:所有云都需要细粒度的计量和收费,Chuck 同样也给予了否定。

或许您未必完全同意 Chuck 的看法,如果真是这样的话,InfoQ 非常欢迎您的不同意见。

SOA架构云计算DevOps