通过美国感恩节晚餐来类比形容云计算
问一个技术人员什么是云计算,你最可能得到的是一个包含了“灵活性”、“敏捷性”、“宽带访问”、“动态的”、“可度量的”诸如此类词汇的样板化的答案。然而,对于大多数人而言,这些定义并不能帮助他们理解云计算到底能够在他们的IT环境中扮演什么样的角色。正是基于这一原因,我才发展出一套用美国感恩节晚餐来类比的方法,从而有助于为大家介绍云计算的概念。迄今为止,这套方法非常管用,它使我们在与客户沟通讨论时能够形象的呈现可以用云计算达到什么目的,以及云计算与IT目前通常所做的有何不同。
让我们从切火鸡肉开始。每年你都会邀请10位亲朋参加感恩节晚餐。由于你每年邀请的都是同样10位亲朋,因此,经过几年以后,你已经学会如何准确的将一只18磅的火鸡切开,并让每个人都得到足够的火鸡切片。另外,你也知道了到底有多少白色火鸡肉和多少深色火鸡肉。此外,由于你每年邀请的是同样的10位亲朋,你也知道了每个人都喜欢火鸡的哪个部位。结果就是大多数人都很高兴,你也度过了一个美妙的感恩节晚餐。我说“大多数”的原因是一些人会勉强接受自己不太喜欢的火鸡切片,但是他们并不会抱怨,并且给什么都可以。
这几乎就是目前IaaS(Infrastructure-as-a-Service基础设施即服务)所提供的服务的缩影。它提供了一组资源(就像火鸡一样),这些资源被分割为小,中,大等不同大小的虚拟机。它们同模板几乎没有偏离。你可以挑选一定数量的CPU,内存和带宽。用这种方式切割资源池意味着运维可以更方便的管理云环境,确保每个人都能够获得足够的“火鸡”,这能让广大用户满意。基于此,运维能够很方便地监控资源池的容量并制定它的扩展规则。此外,资源池以固定的增量扩容也使采购更容易。
以上内容描绘了通往交付云计算之路的第一步,这一步很好,但却不是云计算;它只是虚拟化。进一步而言,IT组织通常应用这一方法将他们的物理数据中心建模为一个虚拟实体。因此,让我们继续使用感恩节晚餐的类比法,来看一下当我们从虚拟化转入云计算时会发生什么。
今年,怪戾的Joe叔叔从国外回来并将参加你的感恩节晚餐。Joe叔叔的介入使你的环境发生很大改变。举个例子来说,一直以来,Joe叔叔对火鸡的要求完全破坏了你切火鸡的方法。换言之,Joe叔叔希望要一片火鸡,而你通常是把它切成两片。此外,Joe叔叔和Mimi姨妈不能和睦相处,这意味着餐桌座位也要调整。摆在你面前的问题是你要如何招待Joe叔叔,同时仍然能够确保其他客人都有足够的火鸡并且确保晚餐的过程中不会爆发全面争斗?现在,就让我们来谈谈云计算!
重新回到运维的问题上来,你要如何才能动态地分割你的计算资源池,才能够确保让你现有的客户能够继续得到他们期望的服务水平而不用增加资源,(有些情况可能需要增加额外的容量,但在这里所说的情况下,我们假设资源已经有了,但你需要重新分割资源池),也不用因为要与另一个客户共存而影响到别人的性能。这些是当IT组织转入云计算时会遇到的挑战。
IT中传统的方法是每个应用依赖自己专用的硬件。因此,如果一个应用需要更多的存储,IT就把几块硬盘扔进存储阵列中。如果应用需要更多的处理器,IT就把几个刀片扔进机架或者在机架中加入几个节点。这种为应用堆积的方法使得应用几乎不会被数据中心中运行的其他应用所影响,因为数据中心通常会用路由器中有服务质量(quality-of-service QoS)控制的子网来将这些应用分离开。总而言之,只要花费不是不切实际的昂贵和浪费,这种简单的方法也不失为美。当把这些应用放到同一个资源池中并且电力和冷却成本下降,资源利用就会上升,同时管理整个环境的整体复杂性也会成指数增长。这是我们假设你在交付云计算而不仅是虚拟化时会遇到的。
从虚拟化转移到云计算需要大量的计划、培训和新的工具。再次用我们的火鸡类比法,一旦你固定了你切割火鸡的方法,你就会年复一年的用这种方法,不用做任何改变。然而,当Joe叔叔出现以后,要满足Joe叔叔的需求,你需要了解新的切火鸡的方法将如何影响你其他部分火鸡的切法。如果在某种情况下,当大家起身,以便让相互之间说话更自在时,Joe叔叔坐到了Mimi姨妈旁边,那这绝对会是一个在以后多年大家都会谈论的感恩节。因此,你必须要像一个交通警一样,在大家起身时指挥他们,告诉大家哪儿能去,哪儿不能去。
上述情景告诉我们,我们需要工具来支持基于云的容量管理,需要工具支持对虚拟机执行的治理管控,需要自动化和整合工具以使上述任务更简单,这样才不会把所有可用的人力资源都消耗在对物理环境的管理和运维上。反过来,这些工具也会受到服务类目和云经理(cloud manager)角色所支持的。就像你所看到的那样,这对于现有的IT环境是一种全面的改变。
所以,总结来说,希望这篇文章能够帮助你对云计算有更好的理解,让你能够为其他人解释云计算是什么以及实施云计算需要什么。这对于那些想要驾驭这一愿景并将之变为现实的组织来说是非常好的。用动态的方式达到工作量的要求,对现有资源的更好利用,让组织变得更敏捷,这些是实施云计算能够达到的关键结果。