友友姚宏宇:云计算平台所必需的一些基本属性解析
姚宏宇:各位领导、专家和同行,大家下午好!我今天报告题目是“基于云计算技术的新一代企业信息系统基础架构”,前面两年是我们在一些大型企业的实践经验。我今天跟很多人开玩笑说,我已经是四朝元老了,因为我从第一届云计算大会就开始参与。讲了三年,第四年该讲什么?遵照我以前的惯例,公司的东西我讲得少一点,技术层面的东西我会讲多一点,今天我还是从技术角度来讲云计算这个问题。
首先,现在云计算技术其实是有很多的说法。因为我做这个事情比较长,大概总结了一下,现在主要的流派渊源。不是说这里面点的公司就是唯一的,只是说有这么几种做法,在目前的基础架构来说。第一个,大家形成了共识,就是说云计算是从互联网公司发源出来的,互联网公司里面,我认为Google、雅虎和亚马逊这三家公司目前还是最前列的。第一个Google派别,大家读了他2003年的几篇文章,大概就规划出云计算平台的架构,这个平台的特性早期是以搜索为中心,所以整个设计都是围绕搜索业务来设计的。据说,从前年开始,Google也开始上线他的第二代系统,估计再过两年,他又该发表文章,大家又可以学到新的东西了。雅虎是我第一家工作的公司,他的云平台和Google的区别,雅虎在早期的时候,他上面有互联网上各种各样的应用,所以他建的云平台必须满足几百种、甚至上千种不同应用的需求。亚马逊有点混合,他上面既有EC2或者S3的服务,用了一些虚拟化的技术,用了一些分布式文件系统的技术,但是他的主营业务电子商务反而有他自己的特点,因为他最主要是学院派,他原来研究的方向是可靠网络的通信,所以他们那边整个设计会偏向网络。传统的IT企业,其实五年之前,包括IBM、包括甲骨文、VMwave都没有提虚拟化,IBM和甲骨文是传统架构的统治者,我觉得目前感觉上是以保护他现有市场更偏重一点,所以卖的还是以他原有的产品为主,甲骨文可能在这方面走得更快一点。
回过头来说说我们的经验,虽然我们的公司比较小,但是做过几个比较庞大的系统,包括几个很大的民营企业的IT系统,包括一个很大的部委的IT系统,包括一些互联网公司的IT系统。真正把他外面应用程序剥离开,其实面临的是三个挑战,大用户、大数据、大系统。云计算我觉得从诞生开始,就是为了解决因为互联网进来,网络的广泛使用产生了巨大量的应用、巨大量的数据和巨大量的系统,云计算技术的产生和延展,到目前为止,我觉得未来再过五年,估计主要的目的也是为了解决这三个最核心的问题。
从云的角度来说,因为我们是做基础技术架构的,做基础软件,不做服务。所以,我们有机会接触各种各样不同的做云的公司和机构,其中有专门做公众服务云的,我们叫做2C,也有专门做企业的,就像中兴的罗总提到的商旅e通。我们现在碰到最广泛的需求是建立企业内部的私有云,来为企业内部和后续业务发展做支撑。他们的共性需求,我整理了四个方面,第一个方面是统一的资源聚合、管理和调度,按照需求的逻辑分离规划,提供方便服务业务水平的区分,面向服务的自动化、规划、延展功能,希望采取标准协同,让企业内部各个组件可以相互工作。自动化运维,尤其是最近一年,我们碰到的自动化运维需求非常多,就是在系统管理和调度上,一般企业都不要说非常小的企业,上了大概两个数据中心运维管理对他来说就是一个巨大的痛点,所以我觉得这方面有很多的空间让软件服务商来增长,但是你一定要符合企业的具体需求。
另外一点,就是对分布式系统的资源聚合和协同,海量非结构化数据资源的存储,刚才好多专家已经提到了。现在我已经不吃惊了,比较吃惊的就是关于数据库集群的管理和使用,现在反而是一个比较大的热点,很多公司都很需要。现在叫他一步就跳到纯粹的云计算架构上去,很多企业会犹豫,他希望通过中间过渡的方式,这种需求量比较大。另外一个就是分布式计算,假如很多人做云计算,可能听说过一种计算模型,现在在我们真正实际在企业经验中发现,很多企业其实需要远远超过能够解决问题的不同模型,尤其是数据内部分析的需求。
在一些公有云的体系里,他们对多租户管理体系、模块化敏捷应用、多模式、多维度的服务交互手段比较关注。但是,相对来说,我们公司会做得少一点,因为我们目前碰到的客户主要是私有云。最后一个是在跟业务对接的时候,统一支撑平台各层面,提供标准应用的应用开发接口。各业务系统之间通过访问实现数据交换,一体化管理。总体来说,他们是希望一个非常弹性的架构,而不是说我现在给你定死了你就这么用,他是希望以后能够可持续发展,他希望不仅是你给我提供一个平台,我能够在上面做事情,假如我有需求,我自己能够往这个平台增加新的东西。
我们碰到的这些企业的具体需求,归总起来,从技术的角度来说,有弹性、透明、通用、动态这四个最基本的特性。我知道大家可能已经听得很多了,但是真正理解什么叫弹性、透明、通用、动态,其实我发现还是不太多。像弹性,要解决达到云计算平台的弹性功能,从技术角度来说,最核心的就是控制损耗,所谓的弹性就是你建了云平台以后,它可以无限扩张,在扩张的同时,你希望增加一个硬件,这个能力就增加一分。其实大家在实践中做写代码的话,就知道这个非常难。怎么样控制损耗,随着硬件和基础设施的增加,你的整个云平台的设施能够增加。第二个要做到弹性,你必须要有状态感知和反馈机制,你知道哪个地方多了新资源,哪个地方资源下线了,你才可以真正做到弹性控制。第三,有了这个能力扩展以后,但是用户在不同的时间点,不同的应用点,不同的业务系统,每时每刻他的需求是变化的,那你怎么做到动态均衡?光是一个简单的负载均衡很难达到这个点,怎么做到动态的?整个平台能力针对不同的应用系统的需求来进行变化。
我这里简单介绍了一下支撑云平台的弹性,其实在技术上有三个关键技术点大家一定要解决。解决透明的话,像容错、互操作性和自管理,这个说起来简单,其实非常费劲。我可以给大家举一个例子,像分布式存储,大家接触得非常多。分布式存储里面最核心的一个问题,是我下面的存储结点出了问题,我的整个系统的业务不受任何影响。现在假如一个结点出问题,其实比较好解决,像Google就可以解决,但是早期是不能解决的,现在假如把它的主控结点做一个热备的话,任何一个结点是可以做到这一点的。假如说一千台机器的话,这些就跟传统的设备没什么区别。假如要求你整个机器范围能够让他10%的结点都失效,你还能不能保证整个系统往下运行?其实这是非常有挑战的事情。
通用,无论从平台层面,现在有很多云计算平台只适用于某一种特定的硬件和组织系统,我觉得这是不能真正定义为云平台的,通用是云平台最核心的要求,就是我可以把这个软件架在不同的硬件和系统上,适应不同的应用。
动态我刚才也提了,像SOA架构、动态调配,这也是保证云平台动态特性最重要的技术点。
虽然写得比较笼统,我们友友系统在做的云计算平台分了三层,为什么要这么定义呢?前面有几位专家,包括浪潮的张总也把整个云计算平台里面的特性划分得很细,但其实你最后仔细想想,云计算最核心的内容是虚拟化,虚拟化不仅仅是像VMwave这样把一台机器虚拟成多台的虚拟化,最核心的是把多台虚拟成一台的虚拟化。这个又要分好几个层面,比如说最底下,我们说的聚合合作,其实最重要是对网络和硬件层做虚拟化,让所有跑在这个虚拟化平台上的东西都能够感知对方,无论你是一百个组件还是一百万个组件,他们都能做协同,他们所交流的信息沟通才能顺畅,这样这一百万个组件才能组织起来。在这个网络虚拟化之上,我这里写了两个,管理加调度,存储加索引,这里最主要的是存储虚拟化,包括让业务系统本身看不到到底是结构化数据还是非结构化数据,到底是数据库还是文件系统,业务系统不应该关注这些不必要的细节,所以说从业务系统角度来说,你必须要做到让他有一个存储的一层中心进去以后,底下到底怎么实现的,到底用什么东西,他根本不需要关心。
管理和调度主要是对业务系统,因为对绝大多数的IT系统来说,业务流程是一个很复杂的东西,业务流程在以前有很多做ERP的,像BPM流程管理,但是流程管理只是在业务逻辑上的流程管理,你怎么把它和RIT系统上的流程管理,包括我前面提到的动态、容错、透明结合起来。所以,这个我们认为是在服务上的一个虚拟化。就是我用这个服务,然后这个服务是可以串联起来的,但是服务底下依赖的所有东西都可以根据云平台的特性,动态、透明。所以,底下两层是对一个业务系统、一个IT系统所面临的三个不同的层面,最底下是网络,再上面是存储,再上面是服务,这三个层面怎么样做虚拟化的工作。这三个基础打好以后,在上面再建大数据、大系统的管理平台和处理平台,相对来说就比较简单,跟系统软件和硬件就没有关系了,只是一个算法的问题。
我在我们公司内部把这个称之为放之四海而皆准的新一代信息系统架构的构建,我们目前碰到的绝大多数大型组织机构基本上可以分这七块东西。中间通过分布式数据引擎和调度系统作为它的核心,黏合剂把它黏合起来。第一部分是高容错、高性能的数据传输,在大规模分布式应用系统之间进行通信和协作。我虽然标在上面,其实它是整个系统里连贯使用的,所有在这个系统里跑的无论是硬件还是软件,各个模块之间进行交换、通信、管理、交流的主要管道,所以我把它叫做虚拟的网络,它有点像网络层一样,把硬件设备连接在一起。
第二个核心部分,也是一个黏合剂,是底下粉红色的部分,实现针对大规模系统的基于分布式工作流技术和策略引擎的复杂任务的定义,主要用于支撑大规模系统的自动化运维以及分布式计算框架的实现。有了这个东西以后,你就可以把业务系统层面的流程管理和IT系统的流程管理结合起来。
第三个部分是运维监控管理系统,这个部分主要是基于分布式工作流程和分布式策略引擎,主要是用于基础设施管理平台的快速构建,通过自动化方式进行大规模部署。现在我们公司在碰到的案例中,目前来说作为一个商业最大的案例大概有1500个结点,大家知道,管1500个结点,假如人工去管的话,是多么痛苦的一件事情,包括上面的软件分很多的群组,每一个群组使用的软件角色走不一样,所以一定得用云计算大系统管理方式对进行管理。
这三个相对于是核心基础支撑的IT运行体系,下面是跟业务直接相关的,比如说我们现在碰到很多的面临数据采集系统,这个要是设计好的话,也是一个很有挑战的事情。比如说从去年开始到今年在硅谷炒得比较热的大数据概念,其实他面临的第一个概念,就是怎么样从几十、几百、几千甚至几十万的层面上把我需要的数据采集过来。目前市场上并没有一个普世性的通用产品,通常需要定制开发。
数据存储系统现在慢慢变成了所有企业IT的核心,其实所有的企业IT系统,从以前以计算能力为核心,变成了以数据管理为核心,所以这是所有的企业IT系统面临最核心的问题。关系型数据库集群通过集群化的关系型数据库,实现海量强关系型结构化数据的存储和快速访问,并对数据分析系统进行很好的支撑。关联关系比较紧密的数据库,还是以传统的方式处理比较合适。其实现在数据最多的,我发现能够调度出来的是分布式实施数据库,包括你现在做大数据分析很多采集的数据,他的实效性要求比较强,同时他又是结构化,虽然不像关系型数据库这样强结构的,但是是弱结构的数据,这种量会越来越大,而且发现智慧、发现智能,很多数据是从这里面分析出来的。
虽然有了这个数据存储系统,但是你真正要让它变得有价值,你必须有一个比较灵活的、能够支持多种计算模型的数据分析系统。这里,我也提到了有从数据准备到数据挖掘、到结果表现,等等这些东西,最后真正核心需要的是一个类型于能够调度IT资源、调度计算方式的分布式工作流和策略引擎。
后面两种一个是对数据访问层和数据服务层,主要是对数据存储具体细节进行虚拟化,这个在企业应用上快速让现有的企业应用适合新环境的变化,是非常非常关键的。我们在跟很多企业合作,帮助他们建立云平台,或者帮助他们解决现在IT中遇到的问题,这一层要真正做好是非常难的,因为要根据每个企业所处的行业和业务系统不一样,怎么样设计成适合那个企业的数据抽象层和访问层。最后是一个数据交付框架,在服务层面做虚拟化。
刚才讲的是我们在这两年的实践中碰到的很多企业的IT系统给大家做了解释,从我们真正的实践中发现,因为我们友友虽然是做基础软件的,但是我们前几年的主要业务是集中在数据的处理、管理、存储等等方面,所以我们对企业的数据应用变化非常敏感。现在我们发现,整个领域叫事务型应用、通用业务和数据处理应用全部是由数据库解决的。现在我们发现在企业里,真正需要事务型应用的越来越少,典型代表是什么呢?它对数据的鲜活性要求非常高,但是总体用户数量和数据容量都不是太大,这种应用就比较适合用事务型应用,在事务型应用就比较适合用关系型数据库。真正比较大的是通用型数据库,比如说在数据库应用里,你可能需要一毫秒做响应,在实时数据库里,你可能一百个毫秒就可以了。但是它的数据流量会大大增加,基本上是3—4个数量级以上增加,这类应用里面,用传统关系型数据库就不适合了,用现在的一些新型的分布式数据库这种弱结构的数据处理会比较合适。
最后一种叫离线的数据分析,我在雅虎的时候参与过Hadoop的设计。到目前为止,像Hadoop这一类整套云操作平台还是适合用离线数据分析应用,数据性鲜活要求非常低,总用户数量也非常低,但是数据的总容量可能跟前面相比,又有一个2—3个数量级的增加,这种情况可能比较适合做离线的数据分析,比较类型于Hadoop这样的开源技术。
这张PPT中,我们现在看到的传统业务应用架构和新一代业务应用架构的比较,在应用上、用户访问上、数据源上都发现了比较大的变化,适应新一代应用架构,目前你把它叫做云计算平台也好,或者叫分布式计算也好,这一类新的技术体系慢慢会切入很多传统业务架构中的核心部分。
最后是对新一代业务技术有几点思考,一个是数据是企业的战略资产,企业信息系统架构的发展重点从业务应用为核心转变为业务数据为主线。这是我们看到的非常明显的变化,尤其是在大型的企业里,比较市场化的企业里。
第二个,企业信息系统正在迅速演进为大规模复杂系统,用系统工程的思路和方法论去解决其面临的挑战。换句话说,在处理以后大型系统、大型组织架构的IT系统上,一定要有整个系统的看法,而不是一个独立的模块。大家有兴趣的话,我建议大家读一下钱学森老先生的《系统工程论》,很有帮助。
第三个发现,是基于云计算的新一代企业信息系统在技术上具有一定的渐进性,在架构的思考和设计上具有很大的变革性。因为我老听到有人问我,确实是原来接触过一些大型的分布式处理系统的人,觉得云计算和以前的分布式处理系统没有区别。其实我个人的观点和实践觉得,云计算整个技术最核心的是引入了一种组织机制,就是我刚才说的怎么把这么多从硬件层面开始到基础软件到业务系统,甚至到管理、运营维护,所有复杂的点,通过一种组织型机制的变革,把它有机地组织起来,让它能够快速地适应现代业务系统,快速地变化,业务数据量的不停增长。所以,在架构的思考和设计上,我觉得有很大的变革性,但是具体在这个变革性的基础上,具体用哪一块的技术,到目前为止,我看到绝大多数都是以前二三十年积累下来的东西,只不过是怎么样来组织,这是一个新的挑战。就跟以前得过诺贝尔奖金的生物学家说的,生命的本质不在于物质本身,而在于物质的组成。
最后一个就是,很多企业尤其是小企业来咨询云计算平台,尤其是现在这个东西比较热,我们公司通常给他们的建议,就是说正确的使用正确的产品和工具,做正确的事情。首先,不是所有企业现在都需要自己来建云,或者甚至需要用的云平台,每个企业需求不一样。需要用的话,我也是建议假如有公有云服务,很遗憾的是中国的公有云服务到目前为止还是没有很大的推广。第二,就是你每个企业要根据自身的能力、资金实力和需求,来选定合适的东西,你可以选自己开发,可以选开源产品,可以找专业公司帮你服务,总而言之,一定不要为了错误的原因去选择使云计算。
(责任编辑:admin)- “扫一扫”关注融合网微信号
免责声明:我方仅为合法的第三方企业注册用户所发布的内容提供存储空间,融合网不对其发布的内容提供任何形式的保证:不保证内容满足您的要求,不保证融合网的服务不会中断。因网络状况、通讯线路、第三方网站或管理部门的要求等任何原因而导致您不能正常使用融合网,融合网不承担任何法律责任。
第三方企业注册用户在融合网发布的内容(包含但不限于融合网目前各产品功能里的内容)仅表明其第三方企业注册用户的立场和观点,并不代表融合网的立场或观点。相关各方及作者发布此信息的目的在于传播、分享更多信息,并不代表本网站的观点和立场,更与本站立场无关。相关各方及作者在我方平台上发表、发布的所有资料、言论等仅代表其作者个人观点,与本网站立场无关,不对您构成任何投资、交易等方面的建议。用户应基于自己的独立判断,自行决定并承担相应风险。
根据相关协议内容,第三方企业注册用户已知悉自身作为内容的发布者,需自行对所发表内容(如,字体、图片、文章内容等)负责,因所发表内容(如,字体、图片、文章内容等)等所引发的一切纠纷均由该内容的发布者(即,第三方企业注册用户)承担全部法律及连带责任。融合网不承担任何法律及连带责任。
第三方企业注册用户在融合网相关栏目上所发布的涉嫌侵犯他人知识产权或其他合法权益的内容(如,字体、图片、文章内容等),经相关版权方、权利方等提供初步证据,融合网有权先行予以删除,并保留移交司法机关查处的权利。参照相应司法机关的查处结果,融合网对于第三方企业用户所发布内容的处置具有最终决定权。
个人或单位如认为第三方企业注册用户在融合网上发布的内容(如,字体、图片、文章内容等)存在侵犯自身合法权益的,应准备好具有法律效应的证明材料,及时与融合网取得联系,以便融合网及时协调第三方企业注册用户并迅速做出相应处理工作。
融合网联系方式:(一)、电话:(010)57722280;(二)、电子邮箱:2029555353@qq.com dwrh@dwrh.net
对免责声明的解释、修改及更新权均属于融合网所有。