2016年12月2-3日,业界最大的技术盛宴——ArchSummit全球架构师峰会[北京站]盛大开幕!在大会20多个热门专题中,云计算仍然备受瞩目。不少云企业与云大咖亮相本次大会,这其中当然少不了致力于云计算管理平台系统软件研发、云系统构建、云计算行业解决方案提供及云运营服务的创新型科技公司北京天云融创软件技术有限公司(以下简称:天云软件)。
在大会上,天云软件技术总监牛继宾不仅为大家重点介绍了天云软件核心产品——云管理平台的架构与功能设计,也对云管理平台未来的定位表达了自己的观点。
牛继宾,天云软件技术总监,于2013年加入天云软件。曾任职于IBM和VMware,分别负责小型机虚拟化相关工作与X86相关的虚拟化工作。长期研究云计算相关技术,具有丰富的行业经验。
首先,牛继宾告诉我们何为云管理平台(CMP)。
牛继宾将其总结为两点:第一是管理公有云、私有云形成混合云;第二就是自服务、镜像的划分、计量计费、负载的优化等。总的来说云管理平台是帮助企业在建设云的过程中让资源好管、好用、好控的重要载体,是云计算服务与技术交付的关键一环。
Gartner对云管理平台的具体定义
那么云管理平台与开源技术OpenStack有何区别呢?牛继宾表示,根据目前天云软件自己的定义以及市场上的反馈来看,云管理平台是更广的范围。比如可以把OpenStack看作是云管理平台下属的资源模块,云管理平台可以管理多个不同版本的OpenStack。
牛继宾强调,云管理平台在云计算体系中的地位是承上启下的。云计算最终交付给用户的是一个一个服务。而怎么交付给用户?正是云管理平台将资源管理起来,通过运营和服务界面把服务提供给用户。这是整体的定位,是承上启下的。
云管理平台的功能架构设计
首先,牛继宾为我们展示了设计CMP1.0时第一版的架构,并为我们重点介绍了资源管理系统的设计思路。
天云软件CMP1.0时第一版的架构
资源管理系统
资源管理系统包括物理机管理、存储管理、网络管理、混合云管理及多数据中心管理。
一、物理机管理。目前是基于IPMI的实现,可以做物理机的分配、自动安装、自动服务提供。跟虚拟化的区别就是物理机的分配单位是一台一台的物理机,虚拟化的分配单位可以在物理机上做更小的切分。
二、存储管理。牛继宾说,天云软件在推荐解决方案时也是逐渐扩大分布式存储使用范围,但是它的核心交易系统里面还是有问题,尤其是IOE延迟可靠性不能解决的话,很难做大量推广。
三、网络管理。我们经常介绍SDN的管理,除此之外还有路由、交换机、防火墙,这块的管理需要在上面自动划分网络服务,划分一个VPC或者划分一个子网,需要通过网络管理模块IPI做对接和呈现。
四、混合云管理。由于公有云的CDN、接入等优势,大部分用户往往在用了一部分私有云资源承担它的核心业务系统和数据运营后,还会将部分互联网业务,放在公有云上。这部分资产需要通过云管理平台统一做对接。对接完成之后还有一个很重要的功能就是,上层的应用需要同时使用公有云跟私有云的资源,需要云管理平台去做集群的统一调度,这是混合云管理的一个目标。
五、多数据中心管理。公有云往往会在全国部署多个数据中心,这就涉及到一个云管理平台对多个数据中心的管理。比如说数据中心里把OpenStack作为一个资源池模块,最终是一个云管理平台去做整体平台的运营和服务。
运营管理系统
运营管理系统最终目标就是将资源管理系统、虚拟管理系统管理出来的资源运营成为一种服务。比如说服务目录就是将资源发布成云计算产品,用户申请一个虚拟机、一块存储空间,而怎么做计量计费?怎么给用户发布出去?这是运营管理系统的目标。
虚拟化管理系统
虚拟化管理系统也可以看作资源管理的一个模块,之所以把它拆分出来,因为它是比较核心的模块,需要对它做更精细的设计。牛继宾表示,天云软件曾统计过电信运营商、银行等领域,发现市场上80%以上的用户通过VMware实现虚拟化。
传统应用云化改造对云管理平台功能设计的新需求
第一、 Web接入无状态化。
第二、 App层微服务化。
第三、 数据分布式部署,数据种类越来越多,需要在SQL、NoSQL方面引入开源解决方案。
第四、 数据平台化,应用与数据分离,应用微服务化、数据分布式平台化。
第五、 联机处理分析开源化,包括数据计算引擎开源化、数据集市开源化、ETL开源化。
应用云化与应用支撑对CMP带来的需求与功能升级
一、CMP需支持弹性伸缩。
二、CMP需引入微服务的管理与支撑框架,来解决微服务管理的问题。
三、应用上云以后,需要对产生的监控数据做更多的存储与分析。
四、需支持大数据类、开源数据库类等开源组件对接与管理。
根据以上需求,牛继宾表示,天云软件做了以下相应措施:第一是CMP支持弹性伸缩;第二是资源管理系统引入了微服务的管理;第三是对开源组件的支持,引入了Docker+Kubernetes。
具体每一块的设计过程如下:
第一、 虚拟机的编排过程。这需要引擎,要可以做应用设计,设计完之后要映射到实体,实体就是运行环境,最后是任务管理。所以平台已经设计完成之后它会把应用逐步的映射到机器上做编排之后的运行。
第二、 虚拟机弹性伸缩。监控流量状态,如果发现从一千到一万的用户增量,系统会自动扩展服务器。如果是分布式检索,系统会检索,交易量变多会逐步扩展处理数据的能力。
第三、 微服务治理模块。包括服务注册、服务发现、服务降级、服务调度、服务配置。
第四、 开源组件管理与弹性计算。牛继宾透露,这块是用Kubernetes实现的,是支撑应用逐渐云化引入对开源的需求。
第五、用户数据中心里积累了足够的数据之后,需要去做数据历史趋势的分析。这块对用户很有价值。牛继宾表示,天云软件一开始用Hadoop实现,现在逐步转到Spark上实现。也实现了预测、回归人工智能算法的学习。
容器与微服务化对云管理平台新的架构设计的支撑
左侧是原先1.0架构,右侧为微服务的系统架构
牛继宾告诉大家,原先1.0的部署架构,实际就是用户服务、运营服务。运营服务里面有订单管理、计费管理、AZ配置。所有业务都是耦合的,如果要升级一个功能,整个服务都要升级。这是一个不利的点。
而微服务的系统架构,主要是两个分离:第一个是客户交互与业务逻辑分离,即前台js跟后台java分离;第二个是应用与服务分离,在服务管理基础上,把这些服务都管理起来,前台对服务的使用通过微服务管理平台发现相应的服务,导流到各个微服务节点上。
总体来说,微服务化之后不仅增强了对服务的能力,更是大大提高了效率,加快了产品迭代速度与业务可靠性。
云管理平台未来的定位展望
在演讲的最后,牛继宾还给大家分享了他对云管理平台未来的展望:
第一是精细化管理,管理能力更强。SDS、SDN等的管理,打通编排的所有环节。
第二是计费的细化。我们需要去做基础设施更细的计费,以前按天按月,现在按时按分。
第三是服务+应用的一体化管控。从用户系统的接入到对云服务组件的调用,全流程的管控分析体系,包括对于微服务的云上管控。
第四是混合云管理。公有云是不可阻挡的趋势,私有云和公有云的混合管理也是一个方向。
第五是行业云和社区云的建设与支撑。如果你抓住一种特定的行业或者特定的应用场景,比如说渲染云、高性能计算云等,它的盈利点还是比较多的。
第六是大规模节点管理时,考虑结合AI。针对资源池的运行数据进行分析与运营,形成运维知识的深度学习。
|