云计算在许多方面只是互联网的一个比喻词,亦即计算和数据资源日益迁移到 Web 上的比喻词。不过,区别也是存在的:云计算代表网络计算价值的一个新的临界点。它提供更高的效率、巨大的可扩展性和更快、更容易的软件开发。其中心内容为新的编程模型、新的 IT 基础设施以及实现新的商业模式。 为何要实现云计算? “云的兴起并不仅仅是使杂耍表演者兴奋的另一个平台。它无疑会变革 IT 行业,它还将会深刻变革人们的工作方式和公司的经营方式。” 云: 远远优于廉价计算 云计算为按需提供 IT 资源创造出更高水平的效率和经济性,与此同时,开创出新的商业模式和市场机会。尽管许多人都把目前的云计算产品和服务视为纯粹的“Pay by the Drink”计算平台,但他们确实显示出两种相互依存的主流 IT 趋势的趋同性。IT 效率 — 最大限度地降低成本: 公司正在通过像虚拟化这样的技术将其 IT 成本从资本费用转变为经营费用。云计算起初作为一种改进基础设施资源部署和利用率的方法,但在充分利用此基础设施中最终产生一种新的应用程序开发模式。业务敏捷性 — 最大限度地增加回报: 通过快速面市、集成化应用程序堆栈、即时机器映像部署和千万亿次级并行编程,使 IT 成为一种竞争利器。云计算被利用为一种使投入运营时间 (Time to Service) 发生革命性变革的关键性方法。但是,不可避免的是,这些服务必须建立在同样具有创新性的快速部署基础设施模型之上。 云计算使 IT 机构能够极大地提高硬件利用率,并能够在极短时间内升级到巨大容量,而不必频繁地投资构建新的基础设施、培训新员工或颁发软件许可证。云计算还创造出新的机会,使人们能够在较短时间内使用更少投资构建一种更高级的网络服务。 “到 2011 年,早期技术采用者将会抛弃资本支出,转而作为服务来购买其 40% 的 IT 基础设施。... ‘云计算’即将起飞,因而将会把应用程序从特定基础设施中解放出来。” 云计算是关于效率的技术。它提供一条以承担得起的成本实时按需部署和访问从单个系统到巨量 IT 资源的一切事件的途径。它使持有信用卡的任何人均能利用高性能计算和高容量存储。而且,由于最佳的云策略建立在开发人员已经知道的概念和工具基础之上,云还具有重新定义 IT 与开发人员以及开发人员所依赖的业务单元之间的关系的潜力。 降低资本支出 — 云计算使公司可以通过像虚拟化这样的技术将 IT 成本从资本支出转变为经营费用。
《纽约时报》需要将其档案 (1851 年到 1980 年) 中的 1100 万篇文章和图像转换成为 PDF 文档。其内部 IT 部门认为这项工作需要花上七个星期时间。而一名使用运行Hadoop (一种类似于 MapReduce 的开放源工具) 的 100 个 Amazon EC2 简单 Web 服务接口实例的开发人员,花了不到 300 美元,在 24 小时之内就完成了这项工作。 编程更快、更灵活 云计算不只是硬件问题,它还是一场编程革命。敏捷、易于访问和轻便的 Web 协议 — 与很普及的水平扩展架构相结合 — 可以加快新应用程序和服务的开发周期和面市时间。新的业务功能现在只需一个脚本就可解决问题。 加快了周期 — 云计算模式为开发新一代应用程序和服务提供一种更加方便快捷的方法。更快的开发和测试周期意味着企业可以用几个小时时间就能完成过去通常需要数天、数周甚至数月时间完成的工作。 增强敏捷性 — 云计算比任何其他模式更能适应变革。例如,Animoto Productions (聚合(Mashup) 工具制作商,这种工具可以从图像和音乐创建视频) 使用云计算仅仅用三天时间从 50 台服务器扩展到 3,500 台服务器。云计算还可以提供一个更大的选择更轻便和敏捷的开发工具的范围,因而简化并加快了开发过程。 其效果立竿见影,创建服务的灵活性得到前所未有的增强,而且大大加快了开发周期。但是,与此同时,如果这些工具没有真正实现开放性,开发灵活性就会受到 API 的限制。云计算可以为开发人员带来一个生产率新时代,但前提是他们建立在可以联合而非集中的平台之上。但在编程文化即将要在云中使用的语言里正在发生着一场重大变革。 现在,经过集成化和优化的开放源 Apache、MySQL、PHP/Perl/Python (AMP) 栈已成为构建和部署新型 Web 应用程序和服务的首选平台。云计算将会成为采用一系列甚至更新、更轻便、更敏捷的工具的催化剂,这些工具包括 lighttpd (一种开放源 Web 服务器) 、Hadoop (支持数据密集型分布式应用程序的免费 Java 软件框架)、MogileFS (一种能够在任意数量机器之间实现水平扩展的文件系统),等等。 抓住新的机会: 云生态系统 但是,云计算不只是在少数基础设施供应商的产品上繁殖 Xen 映像栈。它还涉及一个新兴生态系统,其中包含提供像用于云抽象的 On-ramp 这样的计算资源的辅助服务、有助于部署的专业服务、像分布式数据库这样的专用应用程序组件,以及用于全部 IT 提供商和消费者的虚拟专用数据中心。这些服务可满足从单个开发人员和小型新创企业到大型企业不等的客户的要求。而且它们还在继续扩大虚拟化水平,而虚拟化是云中一个提供更高水平基本服务抽象的关键架构组件。 云计算的起源 基本上,云计算只是一种把 IT 资源当作服务来提供的手段。几乎所有 IT 资源都可以作为云服务来提供:应用程序、计算能力、存储容量、联网、编程工具,以至于通信服务和协作工具。云计算最早为 Google、Amazon 等其他扩建基础设施的大型互联网服务提供商所采用。于是产生一种架构:大规模扩展、水平分布的系统资源,抽象为虚拟 IT 服务,并作为持续配置、合用的资源进行管理。 这种架构模式被 George Gilder 在其 2006 年 10 月在 Wired 杂志上发表的文章 (标题为 “信息工厂” (The Information Factories) ) 中进行了详细介绍。Gilder 所描写的服务器庄园在架构上与网格计算 (Grid Computing) 相似,但其中网格用于松散结合的技术计算应用程序,而这种新的云模式则应用于互联网服务。 “在此架构中,数据大多驻留在互联网某个位置的服务器上,而应用程序则运行于 ‘云服务器’ 和用户浏览器上。” 云和网格都被设计为可非常高效地进行水平扩展。二者都能经受得起个别元素或节点的失败。二者都按使用情况收费。然而网格通常处理批作业,并且有明确的起点 和终点,而云服务却可以持续运行。此外,云扩大了可用资源的类型 (文件存储、数据库和 Web 服务),并且将适应范围延伸至 Web 和企业应用程序。与此同时,实用计算 (Utility Computing) 的概念成为 IT 设计和运营的一个焦点。就像 Nick Carr 在其《大转换》(The Big Switch) 一书中所指出的那样,计算服务基础设施开始与作为公用设施的电的发展相似。如果您可以在需要时以按需付费形式购买计算资源,那不是非常美妙吗? 就最终用户而言,云计算意味着没有硬件购置成本、没有需要管理的软件许可证或升级、不需要雇佣新的员工或咨询人员、不需要租赁设施、没有任何种类的基建投资,而且还没有隐性成本。只是一种用仪表测量出来的、根据使用情况支付的订购费或固定的订购费。只是用您所需的量,而且只按使用量付费。云计算实际上把实用模式 (Utility Model) 推到了新的水平。它是一种新颖和演升的实用计算形式,其中许多不同类型资源 (硬件、软件、存储、通信等) 可即时合并和再合并成 为客户所要求的特定能力或服务。从用于 HPC 项目的 CPU 周期到用于企业级备份的存储容量,再到用于软件开发的完整 IDE,云计算都可以实时提供几乎任何 IT 能力。在许多情况下,各种各样的机构和个人都喜欢作为一种服务来购买 “计算”,而且那些已经在建超级分布式数据中心的公司毫无例外地会选择作为一种服务来提供这种基础设施。 利用云计算 那么个人或企业如何利用云计算趋势? 这不仅仅是把包含您整个软件栈的机器映像加载到一个公用云 (如 AWS) 上的问题,因为还可以通过多种不同方法来利用此基础设施并探索新商业模式的生态系统。使用云基于公用的商业化云的服务产品的数量和质量都在快速提高。使用云对于新创企业、研究项目、Web 2.0 开发人员或想要 “加载并执行” (Load and Go) 的特定用户来 说都是最佳选择。如果您现在是一个新创的互联网企业,您的投资者就会要求您最大限度地减少 IT 支出。这当然不是云的目的所在。掌控云一般来说,企业使用公用云来执行特定功能或工作负载。云对于下面几项任务来说是一个非常具有吸引力的替代选择:开发 和测试 — 这也许是对于企业 (不只是新创企业的开发人员) 最容易的云使用案例。如果您还不知道项目是否通过概念证明 (Proof of Concept),为何要等着给服务器发出指令呢?
— SmugMug 首席执行官 Don MacAskill 扩大 — 云为您提供一个在需要服务时处理峰值负载或预期波峰的新选项。这对于企业来说是一个非常具有吸引力的选项,但也可能是最困难的使用案例之一。成功取决于应用程序有状态性以及与可能需要在两个站点之间复制和均衡负载的其他数据集的相关性。 实验 — 为何要下载新软件的演示版,然后安装、许可和测试软件呢?将来,软件测评可以在需要购买许可证或支持之前在云中进行。 构建云 成为云 云服务提供商可以: 公用云、专用云和混合云 一个公司可以选择使用某个服务提供商的云或者构建其自己的云,但是否始终都是要么拥有一切要么什么也没有? Sun 公司看到一个把两个基本选项的优势调和起来的机会。 公用云由第三方运行,而且可以把来自许多不同客户的作业在云内的服务器、存储系统和其它基础设施上混合在一起。最终用户不知道运行其作业的同一台服务器、网络或磁盘上还有哪些用户。 专用云是处理数据保护和服务级问题的公司的良好选项。专用云是由单个客户所拥有的按需提供基础设施,该客户控制哪些应用程序在哪里运行。它们拥有服务器、网络和磁盘,并且可以决定允许哪些用户使用基础设施。但是,即使是感到构建专用云时间紧迫的人士都有可能希望同时在私有基础设施和公用云空间里运行应用程序。这就产生了混合云这一概念。
|