夏日炎炎,HDG华为开发者汇线下沙龙的第四站在杭州一家静谧的咖啡馆举行。来自华为SPO运营部的系统设计专家赵纯利的演讲时间并不长,但是内容却非常丰富。他表示,CloudOpera IES产品是华为针对运营商打造的ICT运营系统,CloudOpera生态圈也是今年第一次启动运作。在杭州站,面向开发者介绍的内容十分全面,涵盖了CloudOpera IES的概念、价值、产品设计架构、应用场景、北向开放能力,他希望开发者对CloudOpera IES产品能力有一个全面了解。
现场实录如下:
大家上午好,我首先自我介绍一下,我叫赵纯利,来自华为公司SPO业务运营部,目前也在做CloudOpera IES产品的设计工作。
我们今天介绍的这个产品叫CloudOpera IES,CloudOpera是我们产品解决方案商标的一个名字,叫CloudOpera。IES是我们系统的名字,IES叫做基础设施操作系统,这个IES的产品是我们华为公司最近两年给运营商构建的电信的操作系统。之所以叫它操作系统,我们希望通过操作系统的模式,能够让电信的基础设施的资产,包括它CT的网络,以及IT的资产,能够统一的协同和编排,统一的使用进来。同时通过IES系统的平台,把电信运营商的IECT的基础设施的能力,以API的方式提供给行业开发者,我们基于这些API能够构建更多的开放能力的APP的应用。
我们来看一下今天交流的几个主题,首先我们花点时间讲一下IES系统的架构,为什么我们来设计这个系统,以及它未来在电信网络里面处在一个什么样的位置。这样一个系统对于开发者来说是它开放了哪些能力能够给我们使用,基于这样的能力我们能做什么事情。后面的两个议题会分别来介绍一下目前我们实验室的环境,我们知道这样一个系统对于开发者来说要搭建这样一个系统代价是非常大的,所以我们在实验室为大家准备了实验室的环境,大家可以基于远程实验室的环境做我们的开发验证。后面会介绍一下如何基于北向的IES做一些APP的应用开发,里面结合了具体的例子,看一些具体的步骤。
我们开始第一个议题,我们知道过去的几十年里面电信运营商每年都投资了大量的资产用于构建电信的基础网络,我们对这些基础网络大概做一下归类,它主要包含了几类的资产。首先有一个面向全国构建全国互联省际和城际的互连网络,包括城市接入的MS网络。在这个网络里面用到的一些主要设备,包括了IP的路由器,包括交换机,也包括光传输的设备。另外就是基于这个骨干网络之上,它的一个无线和有线的接入网络。包括大家现在手里面拿到的手机,所用到的3G和4G的网络,以及从企业的办公地点,包括企业的园区,到运营商的城际接入网,这一段的专线网络。除了这些网络的资产之外,其实运营商还投资了大量的资金,用于建设运营商的IT的资产,用于建设它的数据中心,但是这一块它目前还没有完全开放出来,主要还是自由的IT的系统在用。
我们说这样一个电信基础设施庞大的网络,电信的运营商每年投入了大量的成本在这个上面,但是实际上它目前面临着一些问题。首先我们在使用这张网络的时候,它的业务开通的速度,我们说现在企业如果在这张网络上开通一个专线业务,通常需要三天,甚至七天的时间。另外这张庞大的网络它的维护基本上是分地域、团队,按专业分,并没有一个统一的系统,能够把整张网统一的管起来,进行自动化的运维。所以在维护上也面临着一些问题。由此而带来的是它的开放性,因为它没有这样一个系统,导致它的这些网络的,虽然有很多基础设施的资产,但是它没有办法把这种能力使用起来,以API的方式,以开放API的方式把它提供给我们的行业开发者。所以正因为有这些问题,在面临互联网实时的在线的消费,这种体验的时候它就面临着很大的压力。所以这也是为什么我们提出CloudOpera IES这个产品的初衷。
我们希望通过这样一个操作系统,能够帮助运营商把它的基础设施的资产,把它CT的资产,IT的资产,统一的管理起来,进行统一的使用。对于我们开发者来说,提供统一的开放的API,我们可以在这个API的平台之上,开发更多的行业的应用,行业的APP。我们也希望借助这个产品,能够把大家,把运营商,包括华为的专家,包括开发者,汇集在一起,大家一起基于这个产品来构建一个生态的系统,就像我们基于安卓或者基于windows操作系统所构建出来的一个生态一样。
基于这样一个系统,有一些关键的部件来满足上面的诉求。首先需要有一个统一的接入能力,能够把运营商各种网络资产,以及它未来的SDN、NFV的资产,包括它IT的资产,能够统一纳入到这个系统里面,统一管理。另外在这个上面有Orchestration的部件,其实它就是协同和编排。协同和编排大家怎么去理解呢,上面讲到我们开通一个专线,企业专线需要三天甚至七天的时间,原因就在于一条专线很可能是跨了不同的地市,跨了不同的网络,在开通的时候没有一个系统,它需要配置。我们希望它在这个系统上面,通过这种操作进行统一的协同,我只需要在这个上面,由这个系统可以直接的操作下面的设备,和这些设备完成交互。
这个是保障的部件,这个部件做什么用呢?它用来监控网络的运行状态,网络有没有出故障,故障点在哪儿,如何有效的在下次资源协同的时候规避这种故障,是用来做这个作用。在这个之上就是我们openAPI的开放,我们基于这些基础设施的能力,通过API的方式把它提供给我们的开发者。
我们再来看一下这样一个系统在未来的运营商网络中的位置,现在运营商的网络也在不停的发生变化,运营商的网络本身也在通过这种SDN、NFV的技术来改造传统的电信网络。所以未来电信的网络不会是纯粹的物理网络,它通过SDN和NFV的技术,会把一些现在设备商运行的软件化的东西,包括电信的服务,以软件的方式,来它未来部署到各种节点的IT的数据中心里面去,通过这种方式来提升网络的灵活性。IES的系统未来在整张网络里面的枢纽的位置,我们可以看到它未来所有的,它是未来我们所有运营商的团队,包括我们的开发者,包括行业的用户,去使用下面的基础而是资产的桥梁。所以这样一个系统未来的位置非常重要。
这个是它的系统架构,这个架构非常复杂,我们不打开来看,但是我们记住几个关键的要素,几个关键的点就可以了。首先这个系统要能够把我们所有的基础设施统一的进行协同编排,如果还是像以前那种运营商各自的网络,各自的运维团队去运维,是不可能拉通的,对于资产的使用效率也不可能提升。另外一个是如何把这些资产统一的接入到这个系统里面来,我们知道其实运营商的资产,下面的基础设施资产不可能由某一个设备厂商完全提供,它不同类型的网络,不同类型的资产,都是由各自的设备厂商来提供的。如何把这些设备的资产都能够以一种无差别的方式接到我们的系统里面来,进行统一的使用和编排,这是面临的一个问题。这个第二个议题会详细的展开讲,我们是如何做到这一点的,怎么快速的修复,有没有一些自动化的手段来完成这一事情。这块我们刚才也提到了,面向运营商的,面向传统的OSS、DSS的集成对接,面向第三方开发者的开发,我们希望大家在这个位置能够开发出更多的APP,满足不同行业的要求,使得我们在电信资产的使用上,能像我们使用互联网的资源一样,这么快速,这么方便。
我们说这样一个IES的系统实际是一个全服务化的架构设计,所以它所有的能力都是以服务的方式对外呈现。我们先来看一下Orchestrator ,就是协同的这部分,它的能力。它是一个开放系统,首先这块安全的接入非常重要,因为它要避免非法的潜入,非法的用户的访问,所以要有安全的接入。HA这块包含了我们本地和异地的备份,我们刚才也看到了IES系统处于运营商网络的关键位置,未来它是运营商的关键的运营资产,这个资产如果是没有很好的可靠性的保障机制,一旦出了问题,对运营商的影响是非常大的。
工程能力,我们这个系统是和公有云,和亚马逊的云,和阿里云的关键的区别,因为像亚马逊或者阿里他们维护公有云的系统,一直在这个系统上面构建能力。但是对于我们IES系统来说,未来是要不放在运营商那儿,可能每个运营商都需要有这样一套系统。这样在工程的复制能力上对它来说是非常有特性的。我刚才提到统一的业务生命周期管理,包括业务的地域,就保证了我们能够快速的开发新的业务,以及快速的把运营商的基础设施的盈利,提供新的API。
多厂商的接入这个部件,其实就是用来解决这种异构系统,比如说我们底下的这种设备,接入的设备有不同的设备厂商来提供,有不同的特性,怎么把这些不同厂商的设备,不同的硬件的备件能够快速的接到我们IES系统里面来,这就是这个架构,这个服务所完成的工作。它实际上允许我们基础设施的提供商,能够以自定义的方式,就是自己开发驱动插件,接到这个系统里面去。就像我们在windows开发驱动一样。
这个统一的资源管理和统一portal,是我们给运营商提供的一个运维的界面,就像操作系统里面,我们进到操作系统里面有资源的管理,有保障的管理,有驱动的管理,我们可以通过portal完成这个工作。这个是我们在Orchestrator上面提供的服务。
这块是保障,Assurance,这个保障我刚才讲了,主要就是监控运营资产,就是电信基础设施资产它的运营情况,主要包含了报警啊,性能的指标是否正常,包括一些数据中心里面的资产以及使用,它的流量的管理,包括资源的健康性,来完成这些监控。一旦这种出了问题,它如何快速的修复。SDN也有保障,主要保障这些管道,包括Cloudvpn的健康监控,SDN的网络质量分析,以及它的流量预测,提供这些能力。这个服务化的服务目前可以看到已经有很多了,但是在这个服务化的架构下面,我们未来还会有越来越多的服务开放出来,对我们行业也会体现出越来越多的基础设施的API的能力。
我们上面讲了IES的一些架构,包括它的一些服务能力,我们下面来看一下它实际的案例。这个是我们的一个应用案例,这个案例讲的什么呢?因为我们很多时候流量是有突发性的,比如说开办一个体育赛事,或者现在巴西开奥运会,在短时间内,一定周期内在某一个点的流量是有很大突发的,如果是按照传统的方式,比如说就需要提前在这个节点购置新的物理的设备,然后提前很长的周期把它库存下去,然后进行调测。它借助NFV的手段,虚拟化的手段,通过软件的方式实现动态的部署,根据需要的时候在流量突发的时候,又把新的电信的运营软件布存在数据中心里面。在赛事完了之后,就可以把部署的资产,不需要在这么大的里面,就可以把电信服务去掉。但是底下的数据中心虚拟化的运行的硬件平台是通用的,那一部分硬件资产可以被其他的应用。这样一个是它播放的时间、周期大量的缩短,另外一个它对于硬件资产的使用率会大幅的提升。
这个例子是我们在上海联通的一个解决方案,上海联通现在在做一个什么事情呢,我们知道上海联通有它自己的运营资产,有自己的网络,现在在IES的平台之上构建了一个园区服务的平台,通过这个服务的平台来打通联通的数据中心到企业的园区这样一个管道,以及数据中心里面的资产。对于企业来说,他只需要在这个平台上,根据自己的要求来申请带宽,申请他的存储,他的虚机的资产,就可以实现企业的,可以说你只需要准备你业务的东西,拎包入住就可以了,不需要重新购置IT的资产,搭建自己IT的网络。所以这种对于企业来说,它的成本,IT的构建成本,以及构建企业的效率上面会有很大的提升。
我们上面讲的是CloudOpera IES的系统架构,这个架构主要是为了助大家更好的理解北向的开放能力,上面对于架构的部分大家可以记住几个关键的点,首先它的定位在未来的电信网络里面是处在运营商运营枢纽的位置,会把运营商所有的电信的基础设施资产、IT的基础设施资产统一的协同起来,并且以API的方式把这种能力开放给开发者。我们下面再看一下它开放了哪些能力。
这样一个开放系统它的开放性体现在两个方面,一个是南向的开放,南向的开放就是我们把运营商的各种基础设施资产,不同厂商的设备,不同厂商的业务特性,能够接到我们IES系统里面来,这是IES系统往上面提供服务的一个基础。另外一个开放性就是在北向上面,我们会基于这些基础设施的能力,编排出我们开发者、我们行业需要的API的能力,在这一层上我们都是以rest的API的方式提供给大家使用。在这个上面面向的是个人啊,家庭啊,以及企业啊,包括行业啊,都可以进行API去做创新。
我们看一下它目前开放的能力,目前开放的能力包含了两个层面,一个是原子化的能力,一个是场景化的能力。这两个区别在哪儿呢?首先就是原子化的能力,其实是更贴近基础设施的能力,它提供了云的服务。我们说IES是一个基础设施,未来会整合云的,包括CT的服务,所以包括这种公有云,像VDC,DC的连接,以及虚拟化的VService服务,包括像防火墙啊,DHCP的一些服务。这个智慧监控就是提供给我们系统自运维、自监控的能力。这个里面除了这些以外,还有一些管道的能力,像传统的SDN的管道,传统的光传输的管道。这个operation的API是我们开放给运维的,因为要保证这张网络的正常运行,运维是很重要的方面,借助这个API可以更好的运维整张网络。上面场景化的API是在原子的API基础之上我们进行了编排,编排之后对于大家的使用会更(22:27),一站式啊,带宽调整啊,三屏VPN的硬管道,还有很多新的特性,一些防DOS的攻击配置。在这个位置可以通过Service线的方式编排在云化的管道里面,提供这个服务。还有一些在管道之上提供一些安全设备的传输,因为像金融、银行类的服务对于安全性的要求是很高的。
这个是视频会议,视频会议有一个特点,就是对于带宽、时延,要求高带宽、低时延的质量,这样的话都可以通过这种CloudVPN的专线,针对不同的要求,满足不同场景的使用。而且通过这些API,不像我们原来这种,直接向运营商申请,在运营商内部需要走一个人和人沟通协调的流程。可以直接基于这个系统,完成自动化的构建,所以可以实现类似互联网实时按需的体验。
这个就是云网一站式的协同,这个例子就是刚才我们讲到上海联通的时候,它就是这个产品。运营商把自己的数据中心,以及它的管道都开放出来,通过一个智慧园区的平台都开放出来,开放给中小企业。中小企业可以在这个平台上根据自己的要求,实时的申请这种带宽,申请云里面的资源。
视频分发加速这个地方大家怎么去理解呢?我们都有经验,以前看视频的时候,其实很好在线的看视频,至少在十年前我们很少在线看。有两个原因,一个是经常卡顿,看着看着就断了,要么就停在那儿了,要么突然花屏了。为什么会有这个原因呢?关键的原因有两个,第一个原因是网络带宽不够大,当大家都看这个视频的时候,所有的内容都从这个视频源服务上面过来,到最终的开发者,这个地方会把带宽瞬间撑大,会导致它的带宽的拥堵。另外一个原因,本身视频的位置一般放的是比较高的,比如我们在杭州看一个视频,这个视频源的位置了可能在北京,如果大家都走这儿请求,传输的线路是非常长的,它的时延保障不了。针对这种情况,IES做了一个事情,一个它会通过(26:18)的保障系统实时的监控链路上的带宽,一旦发现某些带宽的配置被撑大,会根据一些配置的策略,来实时的调整,把这个带宽调整到和流量,和这个视频所需要的流量相适应,这是一种。另外一种它可以通过VCDN的动态部署,在末端的用户看视频之前,提前把这个视频源的内容下载到本地,这样我们本地的用户再看这个视频的时候,直接拉取的是本地视频的资源,这样保障了时延。
这个叫智能的WAN分流,这个怎么理解呢?我们知道从企业的分支,它实际上发出的流量,它的访问对于互联网,对于宽带的访问诉求有很多。而且对于一个企业来说,经常为了保障网络的可靠性,很多时候是租用不同运营商的宽带。它的访问诉求也不同,有访问internet的,有访问公有云的,以及访问企业数据中心的。以及企业内部的应用里面也分很多种,有视频的,有办公的。针对这些应用的流量,以及怎么样合理的调度到这个带宽上面去,合理的WAN网络资源上面去,使得这个流量和带宽达到最优的配比。
自监控的API实际上是提供给租户和运营商运维的,我们前面讲这么多的服务,它实际上都是在做资源发放的配置。这些资源发放到基础设施的设备上面之后,它的运行状态是怎么样的,运行是不是正常,在哪个节点有没有出问题,这些是需要监控的,一旦出了问题,要采取一些自动的,或者是人工的修复手段。所以自监控的管理就是提供给企业,和提供给运营商这样一种监控和管理网络的一种手段。
这个可以说是我们目前开放的API的分类,我就不一个个的解释了,像这种就是原子化的API,大家用起来是需要有一些比较深厚的技术背景。但是有一些场景化的API,相对来说简单一点,目前情况下大家可以基于这些场景化的API,做一些开发。
我们来看一下目前在实验室准备的情况,这个是实验室的环境,在这个实验室的环境下我们提供了几个关键的部件。首先是底层网络的模拟,这块网络的模拟包含了几个部分,首先是企业办公位置的模拟,相当于企业的办公环境。这个中间是一个VPN,就是企业的分支,因为企业到数据中心里面有一段网络的,所以这个是一个VPN的网络。这一块模拟的是运营商数据中心的资产,在这样的情况下,企业可以通过IES的系统,来申请和使用运营商所开放的数据中心的资产。这个就是我们的IES系统了。
上面这一块是什么呢?这是我们基于我们的行业,或者我们的开发者基于IES的开放能力,它所开发的APP。针对这个实验室环境的使用,大家可以在开发者网站上申请,或者通过邮件的方式,然后我们会根据大家的要求,在实验室里面尽量准备一个环境,满足大家的开发诉求。
这个是目前我们实验室里面所开放的能力,因为实验室的环境准备没办法把目前我们产品所有的能力都在实验室的环境里面呈现给大家,所以个是我们挑的一个最主要的场景。包括主要是CloudVPN的服务,这个是一个场景化的API的使用接口,下面这个是原子化的服务的接口。原子化服务的接口也可以完成上面CloudVPN业务的一些能力,但是使用起来就会相对复杂一点。如果大家对技术研究比较深入,可以去用这块的能力,甚至可以基于这一块的能力,编排出更多的场景化的API。
我们再来看一下基于这样一个环境怎么去开发,这个是整个基于IESAPI开发的一个流程。其实这个过程很简单,首先我们现在有一个华为开发者的网站,里面有一个ACT能力的开放,我们在这个网站上就可以获取到IES所开放的一些API的详细介绍,所以这次我们在这个之后就可以在我们本地开发APP,或者用我们IES实验室所提供的开发者的环境,完成这种APP的开发和调测。这个是我们实验室环境的调测,对于我们调测完的APP有一个上线的过程。
APP环境在准备的,我们刚才说实验室的环境有企业的分支,有数据中心,有VPN,有我们的IES的系统,还有APP应用的服务器。实际上我们开发的APP不存在这儿,这个APP会调用CloudOpera IES的API,来完成下面资源的调度。这个地方是一个CloudOpera IES的例子,这个例子里面用到了三个API,一个是创建这个CloudVPN的业务,就是从这个企业的站点到云的数据中心里面,打通这一部分的管道,同时包括这个里面虚机的配置,都可以在这个开通的布置里面完成申请。这个开通完成之后会有一个激活的步骤,怎么把这个业务实际真正的让它运行起来。这里是一个查询运行的结果,为什么需要这个步骤,因为我们知道下面这个资源编排涉及到很多,涉及到网络,涉及到运营,涉及到企业站点,这个执行是需要一些时间的。所以在这个上面我们可以根据它的指令下发之后,它的一些响应,实时的查看它的一些进度。
这个是我们目前这个demo所涵盖的一些内容,大家可以看到从开发的准备,到APP的开发,以及到完整的数据代码,大家都可以在这个网站上去获取。我们这个没有语言的要求,但是我们这个demo的事例是基于java的环境,因为它的接口本身是基于resd,是完全开放的,其实对我们应用的开发没有任何语言的要求。
我们看一下,这个就不展开讲了,这个只是大家理解一下,它的请求和响应都是基于,一个是基于resd,然后请求响应的报文全部都接上。这个我们搞互联网的都是比较容易理解的。几个关键的地方大家可以关注一下,一个是这个接口,这个是创建VPN的接口,里面有一个配置的策略,因为这个配置有可能是不成功的,不成功之后如何消除下面被占用的资源,有一些策略。在这个命令执行之后会返回两个数据,一个数据是业务的标识,就是业务创建成功之后会有一个标识,这个业务是什么。另外一个就是这个业务操作的标识,这个操作标识我们刚才讲到这儿会有一个查询VPN的执行结果,因为你下下去之后,要实时的看它的执行的进度。这个地方会通过(36:55)的ID来调用这个接口,我们可以看到这儿填的就是(37:02),来查询业务执行的情况,看看有没有执行成功,执行的进度是执行成功了,还是执行失败了,执行失败了有没有恢复成功。
我们的demo就讲完了,其实整个今天上午这个议题的介绍我已经介绍完了,最后说一下除了上面的技术之外,我们还有一些开发者的其他执行渠道,包括我们现在海法者社区的,微信的群,大家如果过程中有什么问题,都可以随时的通过这个群进行求助。