EMC毛文波:我亦云云 也谈云计算
2009-08-12 CNET科技资讯网
在结绳记事的年代,最好的计算机就是人,绳子当然就是最好的存储设备。后来计算机和存储设备被封装成大大小小的金属盒子。大的可以有一整个房间那么大(所以IBM曾经预言全世界只要5到6台计算机就够了),小的变得越来越小,也越来越无所不在。如今好,计算机和存储设备开始“蒸发”了,变成“云”的形态从而可以非常容易地在任何地方获取到!从绳子到盒子到数据中心再到云,从稀缺资源到无所不在再到非常容易可随时随地随意获得。技术的进步不仅使计算、存储的形式发生了巨变,也使人们在如何获取计算、存储资源的方式上正在发生着变化。其实这句话说反了:正是由于人们在数据、信息处理的要求上、对于计算、存储资源获取的方式上不断提出新的需求才促使和催生了新的技术进步、发展以满足之。
我们可以先用一种简单的方法对云作一番解释:云计算、云存储实现了让人们用获得服务的方式随时随地获得计算、存储的资源而无需自己购置、管理这些设备。这个简单的说法着重并且狭义地反映了云技术的出现是为满足人们在获取计算、存储资源的方式上出现的新需求:象获得如水、电、气等通常的基础设施服务那样来获得计算、存储服务。从需求推动技术进步发展的角度来讲,云计算、云存储技术的出现很自然。人类活动凡涉及信息方面正在全方位网络化、互联化,所以信息处理向基础设施服务转化也是理所当然,并没有什么特别深奥的道理(或者象笔者常听到的,是炒作IT新概念的“阴谋”,为了掀起新一轮销售热潮 )。当然,把计算、存储这种相当高端的东西归类到通常基础设施服务似乎有点“矮化”云技术之嫌,事实上这样的说法也有局限性。传统基础设施服务的消费使用都是发生在用户端(所谓前端),而云计算、云存储的最显著特点是服务的消费使用主要发生在远离用户的服务端(所谓后端)。既然信息处理要远比发电、水处理等复杂得多,云计算、云存储即便按如上简单狭义理解为一种基础设施服务,则在服务需求、种类及复杂度上也应该远比传统的基础设施服务要有名堂得多。本文试图从几方面把这些名堂做一番梳理。
下一代数据中心的需求
后端数据中心是云技术的一个核心部分。据估计迄今仅在全美国已有7,000多个数据中心。其中绝大多数是在多年前的设计基础上不断添加服务器发展起来的。所以在一个老的数据中心可以看到很有意思的历史痕迹:服务器硬件的技术更新以及不同年代开始跑在不同服务器上的应用软件。如此构造起来的数据中心是非常低效的。通常一个服务器上只跑一个应用。根据McKinsey和Uptime Institute调查,服务器的平均利用率在6%。更有甚者,大约30%的服务器更本就不在提供任何服务!原因是无人知道哪台服务器正在跑哪个应用。若真想要知道,常用的方法是:“把插头拔了,看看谁会打电话进来!” 现在的数据中心已经发展为超大规模。如微软在芝加哥郊外Northlake新建的一个,也许是迄今为止最现代化、最大、最昂贵的数据中心吧:占地4万6千平方米,清一色毛坯简易房,一层楼可以放200个标准货运集装箱,每个集装箱里可以塞进两千五百台PC服务器!
绝大多数的数据中心使用Windows操作系统,也就具有一个共同的缺点:应用与服务器之间存在紧偶和关系,一个服务器跑一个应用。这样做也许是为了避免万一由一个应用崩溃造成的死机而拖累了别的服务吧。所以长期以来在数据中心存在着一个叫做服务器蔓生(Server Sprawl)的现象:每来一个新的服务应用需求就增加一台服务器。如果说服务器越来越便宜这不是个问题,那么为运转大量服务器以及为冷却它们所需耗费的电能呢?维持如此低的服务器利用率当然是不可持续的。
下一代数据中心要采用硬件虚拟化技术。在一个服务器上可以虚拟出若干个虚拟机,每一台虚拟机上可以跑独立的操作系统和应用。不同虚拟机之间有很好的隔离,互不干扰。应用是跑在虚拟机上的。如果一个虚拟机被应用给搞崩溃了,其他的虚拟机不会受到影响。更重要的是虚拟化技术打破了应用与服务器之间的紧偶和关系。因为一个虚拟机实际上是一个软件,可以象文件拷贝一样从一台服务器迁移到另一台。这样的迁移甚至可以在虚拟机不间断服务的情况下进行。通过虚拟机迁移可以大大提高服务器的利用率。虚拟化技术的核心软件叫做虚拟机监控器(Virtual Machine Monitor, VMM)。你可以把VMM看作是服务器上的电子交警,管理服务器上所有的虚拟机,监控它们使用硬件的情况,确保它们互不干扰。VMWare是一家专门从事虚拟技术的软件提供商。VMWare的CEO Paul Maritz(曾经是微软资深人士)这样评价虚拟化技术:“我们把计算作业载荷与硬件分开,这样做从某种意义上我们是在弥补微软所犯下的罪过。” (In a way, we’re cleaning up Microsoft’s sins, and in doing so we’re separating the computing workload from the hardware)。 VMWare已经在2008年9月推出一款全新的“虚拟数据中心操作系统”(Virtual data-center operating system)。VMWare期望用这一技术使硬件资源的虚拟化不必局限于单个独立的硬件,从而可以把整个或若干个数据中心按需求整合为一个计算、存储、网络的资源池。
云服务前端的需求
现在让我们再来看看云服务的前端发展状态及其本质。
目前用个人电脑桌面浏览器是人们接入云端的主要前端工具。但其它形式工具正在层出不穷。云既然具有无所不在的特点,接入点的前端工具就也应该是无所不在。首先是个人电脑正在越变越小、轻、薄、可移动,从而使在随时随地接触云变得越来越方便。请注意,究竟是前端接入工具的轻薄化、可移动化造成了云服务的无所不在,还是云服务这一需求催生了前端接入工具的这些变化?笔者愿意作出如下的说法:从技术发展过程上来说,云技术的发展是与信息技术的发展互为因果的。然而从云的本质上来分析(见下文马上给出),云是本而硬件设备是末。笔者还认为这个说法同样适用于本文所有其他部分对最新呈现技术的介绍。
或许在前端接入工具的轻薄化、可移动化的方面最具有示意性作用的标志是Intel于2008年6月推出的新款处理器Atom芯片。这款处理器是专门为装入所谓的“网络本”(Netbooks)、“网上”(Nettop)电脑与“移动互联网机器”(Mobile Internet Devices, MIDS),主要为网络浏览之用而设计的。超小、省电是其主要特点(比如在低负荷时能主动降低CPU频率以减低能耗)。Atom处理器技术与无线宽带技术结合,轻薄便携的网络本、各种专门化的电脑如电子书(如Amazon的Kindle)、智能手机,等等将使得接入云端之端口正在变得名副其实的无所不在。
然而云服务带来的一个重大变革是从以设备为中心转向以信息为中心。设备包括应用程序只是来去匆匆的过客(现在还有谁能读出软盘?),而信息及人们在信息中的投资则是必须要长期保留的资产(一年换两个手机的人多了去了,而手机丢失的最重大损失恐怕是没有做备份的通信录吧)。所以如上所述的无论多么新颖的,目前甚至可以是相当昂贵的前端硬件设备都会过时,有的甚至会很快过时,变为一文不值!云上什么不容易过时?信息!不仅不过时,许多信息必须长期保存,而且越久越有价值。VMWare的CEO Paul Maritz解释道:今后在云上每个人都将会有一个伴随终生的个人数据体,这样的个人数据体不会被捆绑到任何一种机器上,虽着机器的过期失效而失效。如何实现这样一种属性呢?虚拟化技术再一次发挥作用(虚拟化技术在下文中还要发挥重要作用)!注意,在这一节里虚拟化是针对前段技术而言的。VMWare的虚拟工作站大概是一个众所周知的前端虚拟技术应用的成功例子。然而更酷的是VMWare已经为本公司员工实现了虚拟桌面计算机,可以由中央集中管理。操作系统及应用都不是跑在员工面前的PC上,而是跑在数据中心的虚拟机上。这样的虚拟机理论上可以被任何一种前端PC硬件所使用。所以早晚各种前端硬件工具都会被同样的技术虚拟化。硬件的过时,应用软件的过时,在云上都不再是一个问题!
用户对易用性与服务质量的需求
行文至此我们着重讨论了云服务对企业用户的价值。个人用户也可以通过云服务更加容易和方便地管理其个人信息。
由于信息化产品的多样性,人们使用不同的设备和技术管理着自己的个人信息。目前,大部分的个人信息可能存储在用户的电脑、手持设备、智能电话或不同的网站上。由于这些信息的杂乱和分散,这使个人信息管理变得非常复杂。比如,很多人使用操作系统(如Windows)的桌面文件夹来存放文档和照片,但用户对文件搜索可能遇到困难。而有些人甚至懒得费力用文件夹来管理自己的文档,而完全依赖记忆或低效笨拙的文件查找功能来定位这些文件。如果考虑到个人信息通常分散在不同的设备和网站上,用普通桌面文件夹来管理文件的方式根本不能完全满足用户对服务质量的新需求。随着个人数字信息的自动在线存储和备份,随时随地访问以及安全共享和发布的巨大需求,个人信息管理也不可避免的转移到“云”计算的环境中。云个人信息管理的目标是安全可靠地访问和组织所有你的信息,并保证你可以在任何时间任何地点,使用任何设备访问到这些信息,且从不会丢失。而且今后连接前段设备与后端数据中心的通信的主干部分是光纤,所以通信带宽与速度都不会构成云服务质量和可靠度的瓶颈。
Decho公司是一家新成立的云计算公司。Decho的含义是“数字的回声(Digital echo)”,其含义是用户在个人数字空间中来回存取信息。Decho的目标是帮助个人和商务人士存储和管理位于云端的所有数字信息。Decho的服务如同一个“天空中”的Windows文件管理系统——当然只是更好、更易于使用。Decho技术能将不同的个人设备上的所有信息自动化地组织在一起。用户能更加容易地使用信息浏览、精确搜索、文档或图片共享等功能。使用人工智能技术,软件将会自动检测到新内容并创建包含新内容条目的虚拟文件夹。Decho公司的Mozy产品是一个云服务式的自动数据备份系统。Mozy的用户可以对Mozy指定其拥有的各种存储设备,使这些设备上的数据能够被自动备份到Mozy的服务端。《商业周刊》杂志在2008年12月16日有这样一个有趣的报道。一个小偷去年5月份闯入一位叫做Zikakis先生位于伯明翰的办公室而偷走了他的笔记本电脑。那时,Z先生可能永远也不会想到他丢失的电脑有一天还会被找回来,于是他很快就买了一台新电脑。谢天谢地,Z先生是Mozy的用户,所以他用新电脑连接到网络很容易便恢复了他所有丢失的笔记本中的数据。在尝到了Mozy备份服务甜头的同时,Z先生还奇怪地发现从备份服务恢复出来的数据中多出一些不属于他的照片和其它文件。这时他意识到这些新文件正是属于他被盗的电脑的现有主人。于是他对照片和文件进行调查,终于发现了一份含有姓名、地址和手机号码的文档。在警方的帮助下,Z先生终于意想不到地重获他丢失的电脑。这则故事说明了Mozy的可用性以及可靠的服务质量,使得其用户能获得超乎寻常满意的体验。
云计算和云存储服务可以对个人用户零乱的数字生活引入秩序。个人信息的管理是云服务为个人用户提供的核心。使用云服务个人用户能更加容易地管理自己的信息,不会因为设备的故障而中断或丢失珍贵的数字生活。在云服务中提供容易使用和便于管理的个人信息整合技术,将是云服务商为大量个人用户提供优质服务而追求的一个重要目标。
用户对安全的需求
由于云计算为用户带来的信息技术服务成本的显著降低和信息管理的极大便利,所以推动云计算前进的力量将势不可挡。在推动云计算的进程中,另一个广为关注并让客户担忧的问题是云计算的安全风险问题。由于云计算存在的一些新的特征——特别是计算过程发生在“云”端,所以其安全风险涉及到诸多方面,比如数据隔离、数据隐私、用户特权访问、数据恢复能力、服务商的生存能力等等。服务商的服务转包也可能会导致IT风险、法律问题和一致性风险等新的云计算所特有的问题。
当用户(企业或个人)的敏感数据在云端处理的时候,由于处理过程并不在用户本地进行,所以用户无法对风险进行直接的控制。尽管有些云服务商具有很高的知名度和可信度,但也有可能由于疏忽而雇用了一个恶意的云数据中心管理员,而这个管理员将有能力控制用户的敏感数据。在不同的国家和地区,企业或个人的信息可能还需要符合该国家或地区规定的隐私法规。而在云计算环境下,用户根本无法知道其数据存储在何处,甚至不知道是在哪个国家或地区。云服务商如何担保其数据存储和处理是符合该国家和地区的隐私需求将是一个新的问题。
目前所有云服务商在信息安全上至多使用了通常的网络安全技术如SSL安全通信协议保护端与云之间的数据传输,SSH安全隧道协议让用户安全登陆在云上的平台,并使用加密技术来保护外存磁盘上的数据。但是当用户数据在后端服务器的内存(RAM)中计算处理时,则必须是以明文的形式才能进行处理的。由于现有云计算服务解决方案几乎都使用商用操作系统,这是云计算中一个重大的安全隐患——大量的黑客技术正是通过商用操作系统存在的漏洞来攻击它所服务的应用程序载入内存中的数据。提供内存数据的保护和隔离将是云计算的重要安全需求之一。云服务商不仅需要新的安全技术来提供满足用户需求的安全服务,而且还需要向用户作出担保:服务级别协议(Service Level Agreement, SLA)要求对各种服务(计算、存储、网络和安全服务等)承诺服务质量进行定义并能履行其违约责任。就安全需求而言,云服务商仅仅依靠良好的声誉、违约责任赔偿等通常的商务标准是不够的,这并不能减轻用户对其云端数字财产安全风险的担忧。原因是信息安全的损失往往很难量化。如何保护用户的数字财产免受黑客(包括来自云服务商本身)的攻击,如何做到安全服务SLA的可审计性,这是云计算安全问题必须面临一个的挑战。
EMC中国实验室参与的“道里”研究项目便是迎接云计算的这个安全挑战。该项目致力于云计算环境下关于信任和可靠度保证的全球研究协作,道里研究团队包括复旦大学、武汉大学、华中科技大学和清华大学这四所中国顶尖技术高校。道里项目结合可信计算技术和硬件虚拟化技术实现用户可验证的安全应用隔离和行为规范,加强对云计算和云存储服务中的用户数字财产的保护。可信计算技术通过增强体系结构的安全来提高计算平台的安全性。可信计算联盟TCG (Trusted Computing Group)是行业中的一个标准组织。TCG技术使用一个称为TPM的安全芯片和一套可信软件栈来实现可信计算平台。在X86平台中,TPM被安装在输入/输出控制器(I/O Controller)总线上,那么它可以“监听”到每一个从外存装载入内存的软件。在平台的启动过程中,TPM能够记录整个启动过程中按序装载的所有软件。TPM记录软件加载过程是为了向关心该平台软件状况的人进行报告,比如该平台是一台云服务器,而关心者是云服务的用户。可信计算技术的主要优势是能够对平台的启动过程进行度量,将数据保护与平台的身份特征进行绑定,并能实现计算平台的相互认证。这里所说的度量,就是一个可以被审计的证据。因为TPM中使用了公钥密码技术,度量的结果是可以被第三方检查的。
硬件虚拟化技术是用一个直接跑在“金属”硬件计算平台上的叫做“虚拟机监控器”Virtual Machine Monitor, VMM的软件(这是我们在本文中第三次遇到虚拟化技术,可见其与云的密切相关性)来模拟“金属”硬件的指令。VMM运行在系统软件栈的最底端,具有最高的执行特权,能主动管理CPU、内存、输入/输出等物理硬件设备。所以VMM在运行时不仅可以抵制其它软件的攻击,实现自身的运行时完整性保护,而且可以管理其他程序的内存空间,防止内存中用户代码数据被未授权篡改或访问。另外,与典型的商用操作系统相比,VMM只需要不到1%的代码量,其提供的功能接口和实现机制也相对简单,所有也有理由认为VMM相对于操作系统可以被更正确地实现。因此,一个正确定制的安全VMM可以作为主动可信计算基(Active Trusted Computing Base, ATCB)对重要服务软件提供主动的保护,对应用程序提供细粒度的安全隔离。
道里研究项目结合可信计算和虚拟化技术来加强计算平台的安全,使得云服务商能够在公共云计算平台中提供虚拟私有云计算服务(Virtual Private Cloud, VPC),这将是云计算安全技术发展的一个重要方向。简单的说,虚拟私有云之于公共云计算有如虚拟私有网络(Virtual Private Network, VPN)之于公共网络。无容置疑,虚拟私有云相比公共云将提供更多的增值服务。但就实现方法而言,虚拟私有云与虚拟私有网络在技术上有很大的差异。我们可以用密码和身份认证技术在公共网络中实现虚拟私有网络。然而,对于虚拟私有云来说,仅仅依赖加密解密和身份认证技术并不能在公共的“云”中虚拟出一片私有的“云”,这是因为云计算服务中计算过程发生在远端,在接受计算服务时数据不能加密,信任问题要比虚拟私有网络复杂得多。虚拟私有云的实现需要对云服务提供者的内存储器和CPU寄存器作一种非加密方式的保护,使得租客的代码和数据在云服务提供者的内存和CPU寄存器中以明文形式被处理时仍然得到私密性及完整性的保护,避免被其它租客或攻击者窃取。道里项目提供的虚拟私有云计算服务为云用户提供应用程序级别的安全隔离,并保证用户代码和数据的私密性和完整性,是从真正意义上降低了云计算的安全风险。
有关云的怀疑论
云计算作为一个概念从一出现就引起许多疑问。它到底是个什么新东西?一个特别标准的问题是:云是网格的新名字吗?它与网格计算的差别究竟在那里?另一个标准的“怀疑论者”问题是:云是否是新一轮的IT概念炒作?笔者也的确为这几个问题琢磨了好久一段时间。正是因为找不到非常简单干脆的回答,才决定写下这篇“我亦云云”,或许可以作为对云服务的一番梳理,希望能够帮助自己理清思路,看看是否能对如上问题的回答起到一点帮助作用。
笔者最近看到一篇对于云的系统性否定论述“Don't buy cloud computing hype: Business model will evaporate”,Chuck Goolsbee 2008年12月31日发表于SearchDataCenter.com 博文网址如下
http://searchdatacenter.techtarget.com/news/article/0,289142,sid80_gci1343864,00.html?track=NL-456&ad=682470&asrc=EM_USC_5480225&uid=7781411#
该文从用户角度和数据中心角度两方面进行论证,得出结论:云概念必然在数年内死去。从用户角度论证,是因为云服务不可靠而且在安全上不具有可审计性,所以用户不会把重要应用放到云端。其结果云计算只能为一些非认真的应用提供服务,所以必将缺乏赖以持久生存的商业运营模型。从数据中心角度论证,数据中心的建造和运营维护如此昂贵,云计算仅仅为非认真应用提供服务,怎么可能长得了!
至于担心云服务在今天较低的可靠性,同样的担心也在中央市政供电发展的早期出现过。早期市政供电的主要消费者是家庭和商铺为照明所用。大工厂、大制造商都采用私人发电装置以防市政供电故障而造成停产,生产比照明可是要认真得多的事!直到20世纪初,全美国有5万个私人发电装置,而中央电厂只有3600座(Nicholas Carr: The Big Switch, Rewiring the World, 中译本:IT不再重要,互联网大转换的制高点—云计算,闫鲜宁译,中信出版社2008)。今后的云是否会仍然会不可靠,是否在安全上仍然不具有可审计性从而只能偏安于“非认真应用”一隅?目前的数据中心仅仅为“认真应用”提供服务可却是使用率极低,那么含有正在飞速发展壮大的空转部分的数据中心今后是否反而倒会具有持久生存的商业运营模型?这些也都是笔者亦云了的话题,仅供参考。
结语
云计算、云存储作为一种基于服务的信息处理、管理模式,为用户带来了使用信息技术的良好增值体验,提供了信息管理的便利,并可显著降低IT软硬件维护成本。云服务的出现有其必然道理。云的强劲生命力是人们对信息技术无穷无尽的新需求所赋予的。云也产生了许多新东西、新事物、新问题和新挑战。这些问题需要我们突破思维的框框去研究、探索和解决。