《云计算架构技术与实践》,云计算技术架构


 

摘要:      

        2014年9月,由华为公司云计算首席架构师顾炯炯编著,清华大学出版社出版的华为云计算首部著作《云计算架构技术与实践》一书正式问世。

        云计算概念诞生至今已发展了约八年时间,这八年来,相比云计算诞生初期,云计算技术条件、行业和市场环境均发生了巨大变化,广大读者对云计算的认知需求,也从当初的粗浅概念阶段,发展到希望深度探索的阶段。

       作为华为云计算的首部著作,该书以云计算架构技术为核心,从讨论云计算发展为起点,围绕云计算架构涉及的核心技术与商业实践进行展开。论及的核心技术包括计算、存储、网络、数据、管理、接入、安全等,涵盖了云计算的最新趋势、原理、特性与实践。

       该书适用于企业IT部门首席信息官、IT主管、IT技术工程师、技术类人员、IT技术公司员工、互联网公司员工、教育机构师生等。

 

作者介绍:

 
      《云计算架构技术与实践》第一作者顾炯炯,昵称“大师”,作为华为公司云计算首席架构师,主导完成华为公司云计算操作系统(FusionSphere)和融合基础设施(FusionCube)的技术规划与架构设计,支撑华为公司的ICT战略转型、云计算数据中心及电信云化解决方案,完成浙江移动、上海联通、上海健康云、新加坡StarHub、华为桌面云及数据仓库等数百个云计算项目的商用落地。曾任华为公司融合IMS解决方案首席架构师、华为公司移动软交换产品首席架构师,拥有已获授权并发布的个人专利30多项。
      参与该书编写的还有华为云计算产品线的架构师团队骨干以及公司大牛们。

 

 

权威推荐

“希望云计算架构技术与实践一书的所有读者,在了解到云计算技术的同时,都能够积极的投身到云计算产业实践中来。只有更多的人认识到云计算的价值,才能挖掘出更多云计算的价值,云计算产业才会有源源不断的动力来蓬勃发展,相信各位读者中的很多人都将成为云计算产业的中坚力量。”
----李德毅   中国工程院院士,国际欧亚科学院院士

“云计算从概念到大规模实践,短短数年间迅猛发展。它与诸多行业深度融合,带来了颠覆性的创新,凸显出巨大应用价值和发展前景。读到华为公司云计算首席架构师顾炯炯新著《云计算架构技术与实践》,我倍感兴奋。著作概括了华为的云计算构想,表明华为云计算布局已走在行业的前列。”
---- 杨叙     英特尔全球副总裁兼中国区总裁

导读
        什么是云计算?美国国家标准与技术协会(NIST)对此有这样一个权威和经典的定义: “所谓云计算,就是这样一种模式,该模式允许用户通过无所不在的、便捷的、按需获得的网络接入到一个可动态配置的共享计算资源池(其中包括了网络设备、服务器、存储、应用以及业务),并且以最小的管理代价或者业务提供者交互复杂度即可实现这些可配置计算资源的快速发放与发布。”
        云计算的核心可以用五大基本特征、三种服务模式,以及四类部署模式来概括。五大基本特征是:按需获得的自助服务,广泛的网络接入、资源池化、快捷的弹性伸缩,以及可计量的服务。三种服务模式为:云基础设施即服务(IaaS),云平台即服务(PaaS),以及云软件即服务(SaaS)。四类部署模式可以划分为:专有云(私有云)、行业云、公有云,以及混合云。
         从各类云服务的创建、部署以及消费角度来描述云计算的实质,意味着云计算天然要求支持面向服务的能力。现代企业通常会将其IT基础设施、业务平台以及软件即服务的对外开放作为其整体端到端企业信息架构SOA解决方案中重要一环来执行。当然软件即服务(SaaS) 其实作为一个流行多年的话题,其最早出现是在云计算概念出现之前,已经不是什么新鲜概念了。
         以亚马逊2006年3月13日发布的S3服务为起点,到“云计算”概念2008年最早被Google提出,至今已有八年多的历史了, 其核心理念已广为人们所传播和接受,也经历了方兴未艾的发展。当云计算还处于概念炒作的初始阶段时,云计算一度成为IT业界、媒体传播渠道、乃至所有涉及IT信息化、政府宏观规划、关系国计民生的各大垂直行业关注的焦点,云计算也因此成为街头巷尾热议的 “时髦”话题,然而与此同时各种关于云计算的商业和解决方案也应运而生,各类理念和包装良莠不齐、不一而足,反而让大家对云计算到底能做些什么,对其潜在的客户到底能够解决什么实际问题,能够带来什么样的实际价值感到迷惘,使得大家对云计算的未来前景产生了怀疑。
       关于云计算的社会价值与意义,我们常常用一句话表达云计算的目标诉求:“未来让人们像用水和用电那样使用云计算”,这里人们是将云计算视为一种“水和电”那样无处不在、人类社会日常生产和生活过程中必不可少的基础资源。这里我们用“电力”来形容云计算可能更为恰当一些,因为电力是用来驱动上一个工业文明时代最关键的生产资料。电灯、收音机、电视机、电冰箱、电风扇,乃至于自动化生产线等无不需要依赖于电力驱动。相比电力,云计算则对应于当前的知识与信息时代进行任何信息分析与处理的生产资料,用于支撑ERP/CRM/Email/BI大数据乃至金融实时交易数据处理等所有维持企业业务正常运作所需的按需获取、按需分配的关键资源。
      从技术架构演进的视角来看,有人将云计算视为自IT领域冯•诺依曼计算机架构诞生之后的第三次里程碑式的变革,是对传统计算架构与计算模式的颠覆与创新。也有人认为云计算无非是一种商业理念上的包装,所谓“新瓶装旧酒”,只是各个IT厂商用来“促销”自己产品的一种“营销活动”,并没有带来根本性的技术变革,也并没有给IT架构带来根本性的变化,那么真相究竟是怎样的呢?
回顾企业IT架构演进的整个历史,我们不难看到,冯•诺依曼架构的第一台计算机诞生以来的前30年,计算高度集中化、支持多用户多任务的大型机和小型机是企业IT的主流形态,构成IT系统的软硬件堆栈各层之间缺少统一的工业标准,呈现出内聚与耦合的特征,仅少数厂家拥有提供端到端高度复杂化的IT系统软硬件的能力。那个时代的IT系统造价高昂,往往是少数高端企业才能拥有的“奢侈品” 。
于是,20世纪80年代,以x86服务器和PC系统的诞生为标志,企业IT系统迎来了第二次里程碑式的变革:从All in One、全封闭的软硬件栈走向了水平分层的网络、存储、服务器、操作系统、中间件、应用层等多层次水平分工的架构,各层之间接口标准化、规范化,极大简化了每一层的技术复杂度,各层IT产业链获得了大繁荣与大发展,涌现出一批优秀的专业化厂家,聚焦于提供该领域内质量最佳的产品和解决方案,IT系统终于开始走入“寻常百姓家”。
       然而,所谓“物极必反”,当这个架构分层发展到一定阶段,弊端逐步显现。由于企业IT的层次太多,各层之间集成交付的难度越来越大,尤其是当今企业软件应用已从单一实例应用,迅速走向大规模分布式应用,一个关键业务的部署往往需要涉及到服务器、网络、存储等各方面基础设施资源的协同配合,业务驱动的基础设施层服务器、存储、网络资源的集成管理配置和按需供给成为影响企业IT快速响应企业业务需求的关键制约因素。同时软硬件各层的开发虽然实现了解耦,部署和运行态仍然是软硬件耦合绑定的关系,因此跨服务器的资源出现忙闲不均时,依旧无法有效利用IT资源。
     随着企业信息化进程的不断推进,企业IT系统的使用者和维护者们逐渐发现,分层架构体系也存在着诸多弊端:
软硬件开发态解耦,但部署和运行态并未解耦。
生态链大繁荣的同时,多厂家硬件异构集成与管理的复杂度越来越高。
企业信息化的重心向软件转移,但计算、存储、网络硬件弹性供给能力及其相互协同的不足,越来越成为软件价值提升的制约性因素。
       那么,是否存在一条IT架构演进路径,可以在代价最小化,也即在不对现有软硬件堆栈做颠覆式改动的前提下,有效应对上述关键痛点与挑战呢?
       答案是肯定的,这就是IT领域的第三次里程碑式演进变革:从PC+服务器时代迈入云计算时代,通过虚拟化与云调度管理技术,将来自不同厂家的、多台烟囱式,彼此孤立和割裂的计算、存储、网络设备在逻辑上整合成为一台“超大规模云计算机”,为上层的软件提供弹性的按需资源供给的能力,从而实现软硬件部署过程与运行态的解耦,屏蔽软硬件异构多厂家差异性与复杂度,并填补计算与存储之间的性能鸿沟。
        其实大家也许已经注意到,我们谈到云计算驱动的第三次IT架构变革浪潮,其实早在云计算理念问世前的几年时间里,在众多互联网厂家中已被多次实践过,并且取得了巨大成功。那么普遍意义上的企业IT的云化重构又与互联网成功的实践之间存在着什么样的关联呢?
       Google、Facebook的“云计算机”,是服务于其特定商业模式和业务应用,比如搜索类、社交类应用,而企业IT云化架构所期望的“云计算机”,则面临着大量的,形形色色的面向传统IT基础设施架构开发的企业应用和电信应用,他们的应用场景需求既有相同点,也存在着巨大的差异化。
        相同点在于:
计算、存储实现了大规模资源池化、实现了规模经济效益;
分布式架构与负载均衡能力,资源可按业务需求灵活扩展伸缩;
依赖分布式软件在系统整体层面而非单点硬件层面实现高可靠性及高性能保障。
       不同点在于:
    普适性——互联网平台一般仅为其特定业务模型定制,企业云平台则要求具备对异构多厂家应用的普遍适用性;
异构兼容性——企业云平台需要考虑异构厂家硬件的兼容性,需要对企业IT基础设施现有投资的最大化保护;
高性能——互联网业务虽然并发量和注册用户量庞大,但企业高端应用在时延和性能方面却有更高要求;
自动化、虚拟化——互联网业务模式一般为自主开发、自主运营(DevOps,Development和Operations的组合),因此对管理自动化要求不迫切;企业应用则由于应用颗粒度不一,基础设施采购第三方,因此管理自动化和虚拟化基本为必选能力。

      “天下大势,合久必分,分久必合!”,云计算时代IT基础设施演进的下个十年,是从分离重新走向融合的十年:
通过云操作系统,将数据中心多厂家异构的计算、存储、网络资源进行水平融合,对外提供开放与标准化的IT服务接口,实现面向利旧IT基础设施的“融合”;
通过融合基础设施,单厂家计算、存储与网络资源进行垂直融合, 提供模块化、一站式、高性能、性价比最优、面向新建IT基础设施的交付模式。

        无论IT架构如何螺旋式演进, 客户价值和驱动力都体现在:
更低的TCO;
更高的业务部署与生命周期管理效率;
更优的业务性能与用户体验。
       IT基础设施架构从分离重新走向融合,并非简单的历史重复,而是在继承现有成果基础上的创新突破。无论水平融合,还是垂直融合,在核心技术支撑方面并未将现有已形成产业规模的x86 CPU及其服务器计算架构推倒重来,而是在最大限度重用这些成熟产业组件的前提下,借助虚拟化及分布式云计算调度管理软件的作用,将多厂家异构,或者单厂家同构的计算、存储、网络整合为规模可大可小的“云计算机”,从而有效的解决传统IT架构所面临的业务上线周期长、TCO居高不下、企业关键应用性能低下的问题和挑战。

  顾炯炯


 


云计算基础架构

云计算到目前为止架构主要可分为四层,
首先:显示层,多数据中心云计算架构这层主要是用于以友好的方式展现用户所需的内容,并会利用到下面中间件层提供的多种服务,主要有五种技术:
HTML:标准的Web页面技术,现在主要以HTML4为主,但是将要推出的HTML5会在很多方面推动Web页面的发展,比如视频[1]和本地存储等方面。

  JavaScript:一种用于Web页面的动态语言,通过JavaScript,能够极大地丰富Web页面的功能。
  CSS:主要用于控制Web页面的外观,而且能使页面的内容与其表现形式之间进行优雅地分离。
  Flash[2]:业界最常用的RIA(Rich Internet Applications)技术,能够在现阶段提供HTML等技术所无法提供的基于Web的富应用,而且在用户体验[3]方面,非常不错。
  Silverlight:来自业界巨擎微软[4]的RIA技术,虽然其现在市场占有率稍逊于Flash,但由于其可以使用C#[5]来进行编程,所以对开发者非常友好。
其次:中间层  这层是承上启下的,它在下面的基础设施层所提供资源的基础上提供了多种服务,比如缓存服务和REST服务等,而且这些服务即可用于支撑显示层,也可以直接让户调用,并主要有五种技术;
REST:通过REST技术,能够非常方便和优雅地将中间件层所支撑的部分服务提供给调用者。

  多租户:就是能让一个单独的应用实例可以为多个组织服务,而且保持良好的隔离性和安全性,并且通过这种技术,能有效地降低应用的购置和维护成本。
  并行处理:为了处理海量的数据,需要利用庞大的X86集群进行规模巨大的并行处理,Google的MapReduce是这方面的代表之作。
  应用服务器:在原有的应用服务器的基础上为云计算做了一定程度的优化,比如用于Google App Engine的Jetty应用服务器。
  分布式缓存:通过分布式缓存技术,不仅能有效地降低对后台服务器的压力,而且还能加快相应的反应速度,最著名的分布式缓存例子莫过于Memcached。
再有:基础设施层  这层作用是为给上面的中间件层或者用户准备其所需的计算和存储等资源,主要有四种技术:

  虚拟化:也可以理解它为基础设施层的“多租户”,因为通过虚拟化技术,能够在一个物理服务器上生成多个虚拟 机,并且能在这些虚拟机之间能实现全面的隔离,这样不仅能减低服务器的购置成本,而且还能同时降低服务器的运维成本,成熟的X86虚拟化技术有 VMware的ESX和开源的Xen。
  分布式存储:为了承载海量的数据,同时也要保证这些数据的可管理性,所以需要一整套分布式的存储系统。
  关系型数据库:基本是在原有的关系型数据库的基础上做了扩展和管理等方面的优化,使其在云中更适应。
  NoSQL:为了满足一些关系数据库所无法满足的目标,比如支撑海量的数据等,一些公司特地设计一批不是基于关系模型的数据库。
最后:管理层  这层是为横向的三层服务的,并给这三层提供多种管理和维护等方面的技术,主要有下面这六个方面:

  帐号管理:通过良好的帐号管理技术,能够在安全的条件下方便用户地登录,并方便管理员对帐号的管理。
  SLA监控:对各个层次运行的虚拟机,服务和应用等进行性能方面的监控,以使它们都能在满足预先设定的SLA(Service Level Agreement)的情况下运行。
  计费管理:也就是对每个用户所消耗的资源等进行统计,来准确地向用户索取费用。
  安全管理:对数据,应用和帐......余下全文>>
 

谁给推荐一篇云计算技术架构的文章

  云计算到目前为止架构主要可分为四层,
  首先:显示层,多数据中心云计算架构这层主要是用于以友好的方式展现用户所需的内容,并会利用到下面中间件层提供的多种服务,主要有五种技术:
  HTML:标准的Web页面技术,现在主要以HTML4为主,但是将要推出的HTML5会在很多方面推动Web页面的发展,比如视频[1]和本地存储等方面。

  JavaScript:一种用于Web页面的动态语言,通过JavaScript,能够极大地丰富Web页面的功能。
  CSS:主要用于控制Web页面的外观,而且能使页面的内容与其表现形式之间进行优雅地分离。
  Flash[2]:业界最常用的RIA(Rich Internet Applications)技术,能够在现阶段提供HTML等技术所无法提供的基于Web的富应用,而且在用户体验[3]方面,非常不错。
  Silverlight:来自业界巨擎微软[4]的RIA技术,虽然其现在市场占有率稍逊于Flash,但由于其可以使用C#[5]来进行编程,所以对开发者非常友好。
  其次:中间层  这层是承上启下的,它在下面的基础设施层所提供资源的基础上提供了多种服务,比如缓存服务和REST服务等,而且这些服务即可用于支撑显示层,也可以直接让户调用,并主要有五种技术;
  REST:通过REST技术,能够非常方便和优雅地将中间件层所支撑的部分服务提供给调用者。

  多租户:就是能让一个单独的应用实例可以为多个组织服务,而且保持良好的隔离性和安全性,并且通过这种技术,能有效地降低应用的购置和维护成本。
  并行处理:为了处理海量的数据,需要利用庞大的X86集群进行规模巨大的并行处理,Google的MapReduce是这方面的代表之作。
  应用服务器:在原有的应用服务器的基础上为云计算做了一定程度的优化,比如用于Google App Engine的Jetty应用服务器。
  分布式缓存:通过分布式缓存技术,不仅能有效地降低对后台服务器的压力,而且还能加快相应的反应速度,最著名的分布式缓存例子莫过于Memcached。
  详见阳光云论坛的《云计算的架构》
参考资料:阳光云论坛的《云计算的架构》
 

相关内容