分享到
从云计算到新企业数据中心
 

发布于2011-10-09,IBM

 

摘要

云计算是一种新兴的模型,利用该模型,用户可以在任何地方通过连接的设备访问其应用程序。由于简化了用户界面,基础架构对应用程序的支持对于用户而言是透明的。应用程序位于可大规模伸缩的数据中心,计算资源可在其中动态部署并进行共享,以便能够实现显著的规模经济。由于具有功能强大的服务管理平台,因此在将更多的 IT 资源添加到云时,管理成本基本不会增加。随着智能移动设备、高速无线连接以及基于浏览器的功能丰富的 Web 2.0 接口的不断增加,使得基于网络的云计算模型不仅切实可行,而且还有助于降低 IT 资源的复杂性。 IT 行业的组织公布了形状和规模各异的云计算成果,因而分析人员尝试通过确定各种特征(诸如基础架构外包、将软件作为服务以及下一代分布式计算)来描述这些成果。许多 CIO 都向 IBM 请教:该如何采用云计算的技术和管理方法来提高其数据中心的效率和灵活性。IBM 自上世纪 60 年代开始就一直引领虚拟化领域的潮流,最近又推出了“新企业数据中心”的设想。该设想结合了以 Web 为中心的云计算模型和当前的企业数据中心的优势。它可以采用以请求驱动的方式,为大规模可伸缩且异构的虚拟化基础架构上的工作负载动态分配计算资源。出于安全性、数据完整性和事件处理方面的考虑,IBM 还会对该设想进行优化。IBM 在企业数据中心和云计算方面都具有丰富的经验,因此是唯一能够为客户提供实现该设想的最佳解决方案的企业。IBM 的“高性能随需应变解决方案”(HiPODS)团队一直以来都与全球领先的客户(如 Google 和中国无锡市政府)合作,定义运行具有各种工作负载(从 Web 2.0 应用程序到任务关键型事务处理系统)的数据中心的最佳实践。具体而言,IBM 与客户合作,定义并增强用于运行大规模数据中心的框架,以支持用于托管范围广泛的应用程序的关键功能。现在,该框架包括对部署应用程序和系统的复杂且耗时的流程的自动化、数据中心级别的虚拟化以及对高度数据密集型工作负载的支持。客户希望该框架包含面向服务的架构上的可靠且安全的事件处理。新企业数据中心背后的原理同时适用于处理外包和内部开发的数据和应用程序组件。该框架受到 Web 2.0 客户的启发,这些客户通常拥有数十乃至数十万的服务器,每天处理的访问数以十亿计。IBM 汲取这些客户早先的经验教训,以便为更广泛的客户实现规模经济并提供大规模可伸缩计算支持。我们在建立云数据中心方面所获得的实践经验为迈向新企业数据中心奠定了坚实的基础。本文介绍了新企业数据中心的高级别基础架构服务框架以及底层技术支柱(如虚拟化、自动化、自助式门户网站、监控和容量规划)。文中还讨论了目前已构建的数据中心的价值陈述示例。这些数据中心可以托管各种工作负载,包括 Java? 2 Enterprise Edition(J2EE)应用程序、软件开发测试环境、数据密集型商业智能分析应用程序,等等。

简介

本部分回顾云计算的历史,并介绍 IBM 对于新企业数据中心的设想。下一部分从第 5 页开始,将介绍新企业数据中心的基础架构框架,并讨论虚拟化环境和基础架构管理。最后一部分从第 13 页开始,将介绍现有的云基础架构及其应用。

云计算的演进

当前,云计算是业界的一个重要话题。但它并不是革命性的新发展,而是历经数十载不断演进的结果,请参阅图 1。

图 1. 云计算的演进

上世纪 80 年代末,开始出现应用大量系统来解决单一问题(通常是科学问题)的情况,这就是网格计算的概念,而这种概念又导致向云计算的发展。

很多人都问我们,网格计算和云计算到底有什么区别。它们之间的主要区别在于向工作负载提供所需资源的方式。网格计算的关注重点是将工作负载移到所需的计算资源所在位置的能力,大多数情况下这种位置都是远程的,而且持续可用。通常,网格是服务器集群,大型任务可拆分为多个小型任务,以便在这些服务器上并行运行。从这个角度来看,我们实际上可将网格视为仅仅是一台虚拟服务器。网格还要求应用程序符合网格软件的接口标准。而在云环境中,计算资源(如服务器)可以根据其底层的硬件基础架构进行动态设置或调整,然后提供给工作负载使用。另外,云不仅支持网格,还可以支持非网格环境,如运行传统的或 Web 2.0 应用程序的三层 Web 架构。到了上世纪 90 年代,虚拟化的概念已从虚拟服务器扩展到更高层次的抽象,首先是虚拟平台,而后又是虚拟应用程序。公用计算将集群作为虚拟平台,采用可计量的业务模型进行计算。最近,“将软件作为服务”(SaaS)将虚拟化提升到了应用程序的层次,它所使用的业务模型不是按消耗的资源收费,而是根据向订户提供的应用程序的价值收费。云计算的概念源于网格、公用计算和 SaaS 概念。这是一种新兴的模型,利用该模型,用户可以在任何地方通过连接的设备访问其应用程序。应用程序位于可大规模伸缩的数据中心,计算资源可在其中动态部署并进行共享,以便能够实现显著的经济规模。随着智能移动设备、高速无线连接以及基于浏览器的功能丰富的 Web 2.0 接口的不断增加,使得基于网络的云计算模型不仅切实可行,而且还有助于降低 IT 资源的复杂性。云的优势在于其基础架构管理,虚拟化技术的日益成熟和不断进步为这种管理提供了强大的支持,使云能够通过自动部署、重新构建映像 、重新均衡工作负载、监控并系统地处理变更请求,以便管理并更好地利用底层资源。

新企业数据中心

随着 IT 行业中越来越多的组织公布了云计算的规划,许多 CIO 都向 IBM 请教:该如何采用云计算技术和管理方法来提高其数据中心的效率和灵活性。IBM 自上世纪 60 年代开始就一直引领虚拟化领域的潮流,最近又推出了“新企业数据中心”的设想,该设想结合了以 Web 为中心的云计算模型和当前的企业数据中心的优势,如图 2 所示。新企业数据中心将是虚拟化、高效管理的中心,它将使用以 Web 为中心的云所采用的某些工具和技术,并进行一般化以便可由范围更广的客户采用,另外还进行增强以支持安全的事务性工作负载。通过高效且共享的基础架构,企业能够对新的业务需求迅速做出反应,实时解析大量信息,而且还能根据实时数据做出明智的业务决策。新企业数据中心是一种演进的新模型,能提供有助于使 IT 和业务目标保持一致的高效且动态的新方法。本文接下来的章节将介绍全新的企业级数据中心的高级别基础架构服务框架及其底层技术支柱(如虚拟化、自动化、自助式门户网站、监控和容量规划)。本文的最后部分将讨论实际数据中心实施的示例,这些示例揭示了以下方面的深层次信息:新企业数据中心的哪些特征可以为任何规模、使用情况各异的客户实现最大的价值。

图 2. 云计算和新企业数据中心

架构框架和技术支柱

如图 3 所示,从高级别的架构角度来看,新企业数据中心的基础架构服务在逻辑上可分为不同的层次。物理硬件层已虚拟化,以便能提供灵活且适应性强的平台,从而提高资源利用率。接下来的两层是虚拟化环境层和管理层,它们是新企业数据中心基础架构服务的关键。通过将这两层结合起来,可以确保数据中心内的资源得到有效的管理,并可以快速部署和配置。另外,如本文“业务用例”一节所述,新企业数据中心旨在处理混合模式的工作负载。

图 3. 新企业数据中心的基础架构服务框架

虚拟化的环境

什么是虚拟化?

虚拟化表示能够以较高级别的敏捷性和灵活性提供计算资源,而无需用户掌握底层物理资源的详细知识。在虚拟化的环境中,计算环境可以根据需求的变化动态创建、扩展、缩减或移动。在云环境中,虚拟化在共享、可管理性以及隔离方面提供了许多重要的优点 - 使多个用户和应用程序能够共享物理资源而不会彼此影响。虚拟化能够将一组未充分利用的物理服务器整合为数量相对较少但利用率更充分的物理服务器,从而有助于显著地节省成本,并在新企业数据中心的云环境中实现诸多优势。IT 基础架构的虚拟化具有许多不同方面。由于环境的差异,虚拟化对不同的人而言可能表示不同的含义。一般把服务器虚拟化理解为将单一物理资源映射到多个逻辑表示或分区。逻辑分区(LPAR)和虚拟机(VM)就是该定义的示例。IBM 从上世纪 60 年代开始就在该领域处于领先位置。虚拟化技术并不仅限于服务器。它还适用于存储、网络和应用程序,这些主题可在各自的文章中讨论。

服务器虚拟化的工作原理

在大多数情况下,服务器虚拟化是通过使用管理程序(hypervisor)逻辑地分配和分隔物理资源来实现的。管理程序允许外来操作系统在虚拟机上运行,就好像该系统是在实际的硬件上运行的那样,从而隐藏了其他外来系统共享虚拟机的事实。每个外来操作系统都受到单独保护,相互之间是隔离的,不会由于任何其他系统的不稳定或配置问题而受到影响。当前,管理程序逐渐成为客户机和服务器系统上普遍存在的虚拟层。管理程序主要有两种类型:裸机式管理程序和托管的管理程序。

裸机式管理程序

裸机式管理程序直接在服务器硬件上运行,为虚拟机提供对资源的细粒度时间共享。基于固件的裸机式管理程序的示例包括 IBM? System z? Processor Resource System Manager?(PR/SM?)和 IBM? System i? and IBM? System p? POWER? Hypervisor。基于软件的裸机式管理程序的示例包括 z/VM?, VMware ESX Server and Xen Hypervisor。基于固件的管理程序的开销通常少于基于软件的管理程序。另外,在服务器硬件层实施的虚拟化可以实现最高的效率和性能。System z PR/SM 是一种硬件分区能力,支持以一个高度可扩展、健壮且可靠的虚拟服务器托管多个操作系统映像,而每个映像都位于自己的 LPAR 中。虚拟化功能内置于 System z。System z 还提供基于软件的 z/VM?。因为 z/VM 虚拟化技术支持以较高的效率和资源利用率实现较细粒度的系统资源共享,所以使客户能够在运行其他 System z 操作系统的单台大型机上运行成百上千的 Linux 服务器。System p 使用户能够通过 IBM? AIX? 或 Linux 操作系统请求虚拟化的 LPAR。System p 具有微分区能力,支持系统将部分 CPU 分配给 LPAR。部分 CPU 的粒度最细可达一个物理 CPU 的 1/10。利用微分区和虚拟 I/O 能力,System p 所支持的 LPAR 数量显著增加。而且,LPAR 的 CPU 资源可通过 IBM? Enterprise Workload Manager? 进行管理,它对 CPU 需求和使用情况进行监控,并根据业务策略来决定分配给每个 LPAR 的 CPU 资源量。微分区和虚拟 I/O 使云用户能够使用功能强大的虚拟化基础架构。通过使用诸如 VMWare 和 Xen 等技术,虚拟化现已扩展到 x86 平台。利用这些技术,具有不同操作系统的多个虚拟服务器可以在一台基于 x86 的服务器上共存,并共享该服务器的资源。这样,就使整合在异构操作系统环境中运行以及在未充分利用的硬件服务器上运行的应用程序成为可能。使用 VMWare 和 Xen 的另一个优点是可以实现快速部署。因为虚拟服务器的操作系统映像、配置文件和日志文件都作为文件集存储在主机或管理控制台服务器上,所以虚拟机的操作系统映像可以在一台物理服务器上运行,然后透明地转移或复制到另一台服务器。要部署新的服务器或克隆现有的服务器,只需在现有的物理系统上创建虚拟服务器,然后复制先前保存的虚拟服务器映像即可完成。换言之,无需重新安装操作系统或在其上运行的应用程序就可部署服务器。

托管式管理程序

托管式管理程序在主机操作系统上运行,使用操作系统服务为虚拟机提供对资源的时间共享。基于软件的托管式管理程序的示例包括 VMware Server 和 Microsoft Virtual Server。

基础架构管理

虚拟化是新企业数据中心的基础架构服务的基础技术支柱。其管理层也同样重要,它充当“大脑”或“控制中心”,用于有效地管理整个环境中的资源。接下来的章节将讨论这一层的主要组件。

自动化

基础架构管理是虚拟环境中的主要难题之一。如果只是构建虚拟化环境而未采用适当的方法,那么会增加复杂性,从而使通过虚拟化节省的成本付诸东流。自动化是解决这些问题的关键。必须为新企业数据中心配备工具,以便能促进、简化和支持对提供虚拟服务器资源的物理环境进行管理,这非常关键。

自动化部署

自动化是一种重要的方法,适用于动态数据中心内最频繁执行的两项任务:应用程序的装载和卸载。装载过程将操作系统及其他软件安装到服务器的适当位置并对它们进行配置,以使其能发挥效用。卸载过程指自动回收服务器以作他用所需执行的步骤。装载应用程序通常从部署服务器开始。手工装载是一个费时费力的过程,由多个复杂的步骤组成,如安装操作系统和软件以及配置网络和存储器。这些任务容易出错,通常需要由在系统、存储和网络方面具有较高专业技能的管理员执行。此外,应用程序通常具有特殊的安装和配置步骤。所有这些因素都使得自动化成为以一致的方式管理这些任务的关键。IBM? Tivoli? Provisioning Manager 是我们的云计算解决方案的关键组件。它使云管理员能够编写可以自动安装和配置新服务器和现有服务器的工作流程。它支持快速高效地构造和管理 IT 资源。

自动化的保留和调度

管理计算资源的关键是能够了解当前和未来需要多少容量才能满足新的请求。如果没有了解这一点,你就不能准确地预测可以支持的客户数量,也无法确保维护一组稳定的应用程序。另外,使用 IBM? Websphere Application Server 通知部署状态和资源可用性的 Tivoli Provisioning Manager 提供了调度资源的部署和回收以及保留资源以供今后使用的能力。

自助式门户网站

自助式门户网站提供系统化的请求处理和变更管理能力。服务提供者理解必须允许客户或客户代表通过 Web 门户网站请求服务或查看当前所已部署服务的状态。新企业数据中心必须能够灵活地处理并快速执行变更请求,以满足快速变化的业务需求。应该使用由请求驱动的部署系统来处理用户对新服务的请求或变更现有服务的要求,例如,允许用户延后服务结束日期,以及添加或除去资源需求。图 4 显示了向服务(项目)添加资源的样本截屏,图 5 显示了修改项目结束日期的样本截屏。

图 4. 向项目添加资源的样本抓屏

图 5. 修改项目结束日期的样本抓屏

监控

对于任何环境而言,监控资源和应用程序性能都是非常重要的环节。在虚拟化的环境中,监控任务更为困难,也更为关键。监控的优点包括:收集历史数据,以帮助规划未来数据中心的资源需求并优化虚拟化资源的部署;捕获实时数据,以便能快速应对意外的资源需求;衡量性能服务级别协议(SLA)的符合性;主动生成警告和详细数据,以便能快速检测和解决应用程序问题;报告应用程序的资源使用情况数据,这对于相应地分配成本非常必要。

IBM Tivoli Monitoring 可监控由 Tivoli Provisioning Manager 部署的服务器的运行状况(CPU、磁盘和内存)。这需要在每台云服务器上安装 IBM Tivoli Monitoring 代理程序并配置 IBM Tivoli Monitoring 服务器。代理程序收集来自云资源的信息,并定期将这些数据传输至监控数据仓库,即 IBM? DB/2? 数据库。该监控服务器包含 3 个组件:IBM? Tivoli? Enterprise Monitoring、IBM? Tivoli? Enterprise Portal 和数据仓库。 Tivoli Monitoring 不仅可以监控个别的服务器,还可以监控服务器集合。用户可通过 Tivoli Enterprise 门户网站查看每个受监控资源的详细信息,并且可以将这些信息与云门户网站完全集成起来。另外,用户可以直接在云自助式门户网站上查看表示服务器运行情况的摘要信息。图 6 显示了 CPU、内存和磁盘的摘要信息,这些信息在某个项目(可能包含多个服务器或资源)级别进行了整合。

图 6. 项目摘要

容量规划

云计算模型减少了应用程序级别容量规划的需求。应用程序可以向云请求资源,并且能够在一小时之内获得所请求的资源。对于需要多项资源的应用程序,可以提交其他请求以获取更多资源。因此,与传统的数据中心相比,准确地预测应用程序的容量需求对于云而言已不那么重要,传统的数据中心最多可花费 6 个月来订购和安装专用于应用程序的硬件。另一方面,从数据中心的角度而言,虚拟化使得容量规划更加困难而且更加重要。过去,数据中心可以通过应用程序进行预测,了解订购的硬件,基本可以避免对硬件自身进行调整。通常,数据中心只需要确保自身有能力支持个别应用程序所规划的硬件。但是在云环境下,将安装大量不同的应用程序。因此,现在由数据中心负责预测所有应用程序的平均或总体资源需求,并提前订购足够的硬件而不依赖于应用程序所有者的请求。容量规划的基础是监控现有使用情况,并追溯历史数据。可以根据先前的活动预测长期的趋势,并根据对业务规划的了解进行调整。在新企业数据中心内,典型的容量规划方法在大多数情况下都适用。由于云使用共享相同物理资源的虚拟化资源,因此使得容量规划变得更加复杂。相反,容量规划并不需要考虑个别应用程序,但可以简单地跟踪和预测云中所有应用程序的总体情况。有时,个别应用程序可能对于整个数据中心影响很大,或者该程序需要初始容量,而该容量在一个较长时期内不会有机地增长。为了满足这种需求,IBM 使用其“性能和容量估算服务”(PACES),先前称为 Sonoma。PACES 是一种基于 Web 的服务,用于评估性能,规划业务模式、产品工作负载以及用户自定义工作负载的容量。PACES 容量规划引擎以涉及排队理论的数学模型为基础,并使用过去实践活动所积累的经验数据进行微调;IBM 根据最近项目的成果定期对底层模型进行验证。目前,全球各地各个 IBM 部门(例如 IBM 技术线部门、IBM 销售部门、IBM 全球企业咨询服务部和 IBM IT 架构设计部门)的员工都在使用 PACES。客户往往在求助于 IBM 时具有自己的应用程序框架和性能目标。PACES 对这些复杂的关系进行建模,然后提出令人满意的配置解决方案,或预测用户所指定配置的性能。当前,PACES 支持由种类繁多的工作负载以及大量硬件(如 IBM System x?、System p、 Sun 和 HP)组成的大型库。图 7 显示了样本 PACES 目标规范屏幕,图 8 显示了样本 PACES 估算结果屏幕。

图 7. 样本 PACES 目标规范屏幕

图 8. 样本 PACES 估算结果屏幕

 
分享到
 
 
     


专家视角看IT与架构
软件架构设计
面向服务体系架构和业务组件的思考
人人网移动开发架构
架构腐化之谜
谈平台即服务PaaS
更多...   

相关培训课程

云计算
Windows Azure 云计算应用开发

 
 

组织简介 | 联系我们 |   Copyright 2002 ®  UML软件工程组织 京ICP备10020922号

京公海网安备110108001071号