中国IDC圈2016年9月5日报道,9月1日由工业和信息化部指导,中国信息通信研究院、中国通信标准化协会主办,数据中心联盟承办的“2016可信云大会”在京隆重召开。在私有云可信云开源解决方案分论坛上,北京中油瑞飞资深架构师孙杰发表了题为“企业私有云建设的实践与思考”的演讲。
北京中油瑞飞资深架构师 孙杰
以下是演讲全文:
很高兴来到这里和大家分享一下能源行业的私有云的建设实践和思考。我叫孙杰,是中油瑞飞的自身架构师。
首先看一下云计算这个概念,在2006年的时候,谷歌的高级工程师克里斯托弗向谷歌的CEO施密特当时提出了一个自己的想法,施密特非常支持他,最后做了一个谷歌101计划,正式提出了云计算概念。云计算这个词大家觉得很具有浪漫主义色彩,首先你可以想到云规模很大,而且是可以动态伸缩,它的边界不模糊,而且飘忽不定,但是又确切在某一个地方。这其实是谷歌的商业模式和技术模式完整结合的理念。如果把云计算改成沙计算,可能就没有任何魅力了。它看起来很美,其实云计算初期投入的时候,它的投入比很大,在大企业里做私有云,首先你得去建数据中心,房地产就是很大的成本。我们要去做私有云,或者你在企业里面选择混合云这种方式,其实你都面临着很多选择。首先看第一个,公共云。世界上第一是AWS,还有微软的Azure,还有阿里云、UCloud。还有私有云技术,像VMware等。还有很多技术,像PHP、Java、Ruby、Node.js还有Python。很多的数据库,大家知道这个云,如果在企业里面,很多都是Oracle,我知道的能源业、金融包括其他一些制造业,很多数据库现在还是Oracle。很多的存储,商业的有Vsan,其他的有Ceph,等等。其他的还有Caches和Queues等等,很多的架构。在前期的时候你去选择云的时候,你怎样能把原有企业系统的技术和现在开源系统结合起来,其实大家都面临很多选择,在企业里面,以前可能是传统的技术,现在是开源的技术,首先面临两种技术路线的选择,你是要走传统的商业路线还是要走开源的路线,当然这个路线一旦决定,对你今后云的发展具有非常大的挑战,包括你的技术和人员的投入成本。
除了刚才讲到的太多选择,第二个是问题来了,你如何集成上述的众多系统,不管是你的前端、中间件还有很多后端的数据库,还有你的实时监控系统,再有是你的排障和优化,其实我们说到一个云,你把它搭建起来、部署起来,正式的走到生产线上,你会面临更多的问题就是排障和优化的问题。稳定性特别是在国有这样的大型企业和制造业,稳定性相当重要,丝毫不亚于电商行业。如果它的业务出现比较大的,比如说因服务器或云不稳定造成业务整体的不可用,对于企业来说,影响也是巨大的。另外如何在系统遇到平静的时候进行服务的升级。因为像很多企业现在估计用的还是VMware比较多一些,VMware在现在的市场上,最早大家知道它在2013年的时候大概30%左右,在2014年市场占有率达到55%,这个额度是比较高的。现在在很多传统大型企业VMware用的还是比较多的,VMware的升级相对来说会比较简单,但是像OpenStack的升级会有比较大的问题,比如像很多企业以前是基于OpenStack E版或G版去开发系统,如果后期OpenStack升级了,到了G版或者M版,那你可以平衡升级吗,至少在H版之前是做不到这一版的,H版之前,OpenStack你要升级要在另外一套资源上再搭一版,然后才能升级过来,所以对企业来说这完全就是比较大的挑战。另外是在网络、系统、运维、数据和管理上如何做到安全,很多大的公有云它的安全其实都有自己很独到的一面。如果你把云搭建起来之后,我们面临的问题就是要高效的管理,第一个架构的设计,第二个是搭建配置,然后是7x24小时监控,还有7x24小时排障。我们在做技术选型的时候做过很多方面测试,其实会发现在虚机,首先举个很简单的例子,比如一个业务需要200台虚机,批量做虚机就会产生一个并发的问题。像VMware里并发默认是8个,在5.0版,比如到6.0可以改一个参数,可以并发16个,但是批量做200个虚机,你并发16个,你觉得是很大吗,其实不大。在公有云上如果批量做几百个虚机,他可能不需要几分钟就可以完事,但是在VMware实现不了这一点。怎么可以让它并发更高,经过我跟同行的讨论,我发现有的单位可以把VMware并发做到40个,他怎么实现,就是在架构上做优化。批量做虚机要有镜像,一个模板镜像大概5G,如果做200个虚机大概1000G,这样的流量你要在很快的时间内写到相应的存储上等等,你觉得它是很容易就实现的吗,你需要对架构做很多的优化,你在每个机群里面挂存储,如果后端只挂一个存储,也不可能实现并发很多个,会需要很多个存储。OpenStack架构默认可以10个并发,如果可以改得更高,也可以并发50个、100个。但这时候要调了,如果并发通过10,需要做好几个NPI,同时后端存储,如果仅仅是以前的HDD硬盘,你也达不到更高的运算,这里面要做很高的优化,要做参数的调整,然后才可以并发更多个。这里面都有很多设计,还有人做过很多测试,比如上海,他们可以把OpenStack并发达到2000个,他们后面是把数据库都改了,同样它对存储也做了很多优化。架构设计首先决定了你在很多层面能不能达到企业要求的高速高效和敏捷度。另外是搭建,以前OpenStack搭建是比较麻烦的,要通过命令行,有时候可能要一两天,现在很快了,可以在几个小时之内搭建OpenStack环境。另外是监控,像7x24的监控对企业来说是比较重要的,因为像这种故障,像银行里面它的故障,半小时之内的停机和宕机都是非常大的事故,在能源行业同样也是。开源的很多方案存在很多问题,如果你不做优化,在企业里面是不能直接上的。另外是排障,出了问题要很快排除故障,故障在企业里面讲究分级,有些故障可以放后慢慢调整,如果是那些虚机的宕机或者虚机的不可用,要即时恢复业务系统。排障是非常重要的,运维的压力比以前传统的压力更大,企业所有的业务系统分为不同的级别,在能源行业大概84个子业务,要保证一小时之内必须解决故障。所以说排障在很多开源的产品里面做的还不是特别好。
看一下AWS是行业老大,一个卖书的企业领导了整个云计算的行业。2015年它占全球市场份额是31%,超过了第二名到第五名的微软、谷歌、IBM、Salesforce。AWS在全球以地区和可用区域为单位形成12个地区,超过40个区域的数据中心布局,管控服务器超过130万台,支撑其全球云计算业务。形成以EC2、S3、AVPC、Amazon Elastic MapReduce等核心技术为代表的完整云计算解决方案。提供包括基础架构资源、数据库、开发平台、大数据分析、应用程序和部署服务等在内的丰富服务能力。
再看看Azure,行业老二,Azure市场在2015年增长非常快,占全球云计算市场份额9%。全球部署了24个数据中心,仅2015年到2016年新纳入了5个数据中心,在数据中心上的投资超过年度研发预算。2016版的服务中也开始支持容器技术。
再看阿里,最早云这个概念是2006年提出的,最早阿里云做公有云是2006年。阿里云从2014年起,在云数据中心建设布局方面提速,目前已有包括美国、欧洲、俄罗斯、印度、日本、新加坡等在内的12个云数据中心。以大规模分布式计算系统“飞天”和DRDS等为代表的完整的核心技术解决方案。
大家看到AWS、Azure和阿里云为什么逼格高,首先他们在资金、人员和技术方面都有着巨大的投入,第二个是云数据中心的布局在一定程度上将左右未来云计算市场的份额和经营业务范围。像AWS和Azure、阿里云都有超大规模的技术研发团队,实现了对核心技术的完全自主可控、持续研发完善。各核心技术的广泛应用使其功能、性能、成本等指标成为云计算领域的事实标准。像公有云是一家独大,我做完之后,你上面的广大的散户和个人的小企业,你上到公有云上,你遵循我的标准。如果你大企业做私有云,你的这种云要完全匹配大企业的技术架构,不能说让我原有的业务完全适用你的公有云平台或者私有云平台,必须要match我的业务和系统,不是说我来适应你的。另外基础架构云是对各云计算厂商最为重要的支撑。在2012年很多大企业开始建私有云的时候为什么会选择VMware,因为在这个时间节点我们还看不到成熟的产品,在那时候OpenStack大概也就是G版和H版,还存在很多问题,不管在安装部署还有高可用性和扩展性方面都存在很多问题,在这个时候我们很多大的企业没的选择,只能选择VMware,只能说你当时发展的不好。但是反过来看现在的VMware,现在在国内很多企业都已经逐渐撵上或者赶超它,近些年包括从2015年开始,VMware反额在逐年下降。
VMware建设的私有云我们称它为传统的私有云,第一个,它的特点是核心是缺失的,底层技术仍使用VMware、EMC高端SAN存储、高端网格设备等成熟的商用软、硬件产品,缺乏自身核心技术,无法实现全面的自主可控,底层核心技术仍依赖厂商支持。第二个是厂商绑定,全面X86化,全面X86之后可以抛弃小机,但是你的虚拟化软件、高端SAN存储仍然无法避免厂商绑定。另外是发展单一,传统的现有技术方案以及基于现有技术方案的运维成本不足。最后是能力差距,传统企业的经验主要集中商业套装软件的安装、优化、管理和运维。
OpenStack为什么会强势生长,首先它是一款逼格很高的山寨产品,可以看很多网页,都是这么叫的,因为很多不同的厂商在OpenStack里面做了很多相应的功能和相应的项目,集合起来,理解成是比较大的积木,可以按照企业的架构自己去搭积木搭架构。用在OpenStack我觉得这不是典型,是另外一个创新。有人可能会觉得华为手机也是个山寨,但现在华为手机明显要比苹果在国内卖得好。另外经过这么多年发展,OpenStack几乎成为云计算的事实标准,这是你不能否认的东西,现在传统企业为什么要向开源靠近,为什么要拥抱开源,因为开源产品是传统企业弯道超车的机会,如果你还使用传统的服务器、传统的高端技术,你的建设永远都会是推动比较大的投入,包括人员还有设备的投资,包括管理上都是这样的。开源产品,我们可以结合自己企业本身的特点,以前OpenStack都是IaaS层的产品,今天为什么要讲这个行业,OpenStack要真正走进企业,必须要做针对行业的解决方案。开源产品在企业里面怎么去用,当然它有很多坑要填,在OpenStack里面就有很多问题,比如HA做得不太好,监控做得不太好,备份做得也不太好等,再看看它的存储。Ceph将成为传统存储的掘墓人,Ceph从目前的角度来看是跟OpenStack结合好的一款存储软件产品。而且Ceph是应用广泛的分布式存储解决方案,开源产品拥有无与伦比的生命力,Linux最早诞生的时候也是在服务器市场是非常微弱的,但经过十几年的发展,Linux在企业服务器市场绝对是第一的占有率,微软包括在我们这种大企业,微软的产品、微软的服务器都不足10%。开源产品对我们提出很多新的要求,现在开源产品都提软件定义,以前是硬件定义,很多人说只要把硬件熟悉就行,现在是软件定义,软件定义就有很多新的要求,要懂一些程序语言,要懂开发,要懂怎么优化。这时候对人员有比较高的要求。
大型企业私有云,如何定义一个大型企业私有云,首先云基础设施和软硬件资源都建立在自己的防火墙内,在大型企业里面自建私有云和虚拟私有云,一个企业建了私有云之后他多余的能力怎么办,就可以形成一个行业云。在企业内部,你的使用者,就是企业内的各个部门,在这个时候肯定要提到租户的概念,你要做权限的分级管理,像现在很多企业做私有云的,权限的设计和企业的业务流程都匹配的不太好,因为每一个企业都有自己的认证和角色控制的要求。其他的是企业自身和第三方代运维等等。
企业为什么会需要OpenStack,架构开放,北向标准,生态系统丰富。另外不会绑定到一个厂家,南向异构接入强,异构hypervisor,异构存储,异构网络,异构物理设备,其次是扩展性好。在商用中存在的问题,具体是在部署上可以更加优化,像OpenStack、VMware的部署就有两层,像OpenStack有很多组件,装的时候相对来说会比较麻烦。性能方面做得还不太好,像Ceph这一块,现在SSD的性能发挥不太好,集中性做的也不太好。在这一块它跟企业真正的商用是有距离的。
OpenStack怎么才能用好,开发人员认为是使用姿势的问题,用户认为要稳定可靠,不能老宕机,老板认为多招几个牛X的开发和运维来搞定。
构建安装部署这一块,构建云自动化部署能力,提高运维效率,要支持不同的系统。另外是刚才提到的云平台的升级,在H版本之前,OpenStack不能平滑升级,如果在在企业里面从业务连续性角度来说,必须支持平台的平滑升级。还有管理模块避免单点故障,保障可靠性。另外是连续性,规避系统任何单点故障。还有增强的HA,另外是满足跨数据中心互联要求,OpenStack级联方案,现在只是实现了级联,还不能对业务切换产生很好的效果。再有是运维自动化,在大规模运维场景下,将重复高度的工作,基于监控数据智能决策触发,实现无人参与的自动操作的运维能力,称之为运维自动化。再有是DevOps开发,开发运营,包括质量保障,这三者都是相互协作的,咱们的这些程序,开发出来之后要很快得到验证,验证之后在测试区进行预上线,再到生产区,在你的质量反馈等等。
展望未来,拥抱开源,在中国,在亚洲,在全球,OpenStack已经成为一种趋势。众人拾柴火焰高,全生态就是王道。未来三年,OpenStack将成为企业去V首选。
谢谢大家。