APP下载

数字经济环境下的私有云平台设计探讨

2019-01-10张晓龙

智能物联技术 2018年2期
关键词:瀚海轻舟容器

张晓龙

(网易(杭州)网络有限公司,浙江 杭州,310052)

0 引言

根据2016年 《二十国集团数字经济发展与合作倡议》的定义,数字经济是“以使用数字化的知识和信息作为关键生产要素、以现代信息网络作为重要载体、以信息通信技术的有效使用作为效率提升和经济结构优化的重要推动力的一系列经济活动”。作为继农业经济、工业经济之后全新的社会经济发展形态,数字经济已成为全球经济增长的核心动力。中国信息化百人会报告[1]显示,美国、德国、英国数字经济占GDP比重超过50%,日本、韩国数字经济占GDP比重也超过40%,中国数字经济占GDP的比重为30.3%,低于全球其他主要国家,如图1所示。但中国数字经济增长速度位居全球前列,2016年同比增速为18.9%。

中国数字经济快速发展的势头尚未放缓。IDC(国际数据公司)预测认为,到2021年,全球至少50%的GDP将以数字化的方式实现,而在中国这一数字将达到55%。另据IDC预测,到2019年,中国数字化转型相关的ICT(Information Communication Technology)支出将达到3100亿美元,相比2017年增长35%。这意味着,数字经济时代已经全面来临。不管世界还是中国,数字技术将全面渗透各个行业,行业的数字化将重构价值链。目前,中国各个行业的整体数字化水平还有较大发展空间,且行业间数字化程度差距较大,因而研究数字经济环境下的企业数字化平台的变革,具有十分重要的现实意义。

图1 全球主要国家数字经济规模及占GDP比重

根据IDC研究报告[2],数字经济以云计算为核心技术引擎,以数据为关键生产要素特征。企业上云,是企业顺应数字经济发展潮流,加快企业数字化转型,提高创新能力、业务实力和发展水平的重要路径。作为核心引擎的云计算,全面支撑企业活动的资源架构、数据架构和应用架构,并通过技术优势赋能创新、提效增益,在数字经济活动中发挥驱动作用。如图2所示,在资源架构层面,云平台具备资源共享、集约高效、弹性可扩展等优势,使各类用户灵活地使用计算资源;在数据架构层面,云平台通过数据分类、分层部署等方式,从非功能视角将数据合理布局,提升数据分析应用的及时性、灵活性和准确性,促进数据资源的有效利用及数据价值的充分释放,从而加快经济社会的数字化进程;在应用架构层面,采用云原生架构能够缩短应用程序的开发时间,并将效率转化为竞争优势。

图2 企业上云的三大架构

当前云计算从部署模式上有公有云、私有云以及混合云之分。在中国,由于种种原因,私有云成为不可替代的云计算发展模式。据麦肯锡分析,2017年美国IT平均预算中公有云支出占23.9%,私有云占比仅为5.2%,然而中国的私有云投资仍保持稳压公有云一头的态势。2013年~2017年中、美公有云与私有云支出对比如图3所示。

图3 中、美公有云与私有云支出对比

因此,可以说私有云是中国各大行业数字化创新的基础平台,平台的合理性与先进程度,将成为企业乃至中国数字经济能否在新一轮竞争中占据优势的关键因素。如何正确把握行业变革与技术应用趋势,构建与时代匹配的私有云平台,也成为了众多行业用户最关心的问题之一。本文将结合实践经验,分析数字经济环境下的私有云建设需求、设计思路与功能实现的要点。

1 数字经济时代的云计算需求

经典云计算以资源弹性著称,但随着企业数字化的推进,云计算的功能需求已经发生了变化。当前云计算与经典云计算最根本的差别,就是在资源架构之外还要支撑企业的数据架构和应用架构。从系统构成的角度,则涵盖基础设施平台(如计算、网络、存储资源)、平台系统(如数据库、中间件服务等)以及业务应用系统(如协同办公、经营管理以及运营管理服务)。因而企业在设计私有云平台支撑数字化发展战略时,必须系统化地统筹思考。

笔者以为,数字经济时代的私有云平台设计,应当满足标准化、全栈化和服务化二个核心思路。

1.1 标准化

私有云作为企业数字化的主平台,一方面要能够长期、持续地支撑企业业务的发展,另一方面要能够和不同的技术相互集成,形成针对各行业不同应用场景的完整解决方案,这要求云平台的技术架构必须满足最主流的开放标准。长久之计,是采用主流开源技术:①开源能够聚集全球优秀开发者的智慧共同打造平台,快速解决问题,超越了单个企业的能力;②开源平台不受任何单个企业控制,企业对开源软件可以有源码级的掌控 (能修复其bug、能调优其性能以及能定制功能特性),更容易招募维护和完善平台的优秀人才,保证平台能有更长的生命力;③可以推动技术标准化并构建良好的生态,以满足企业数字化需求。

1.2 全栈化

企业上云是一个复杂的系统性工程。当前企业在上云过程中,往往碰到各种问题,比如内部信息系统是传统竖井式的部署架构、企业信息化/数字化程度比较低、历史遗留的内部系统比较多且缺少维护、如何迁移业务系统等问题。为了简化企业上云的复杂性,加速企业上云的进程,云平台需要从资源架构、数据架构以及应用架构二个层面提供全栈云服务。否则,企业上云有可能无法取得预期的效果,甚至因为某些不能解决的问题而无法完成上云。

1.3 服务化

业务与云平台的融合,导致用户对系统可用率、迭代频率、资源规划能力提出了更高的要求。微服务架构,也就是将系统拆分成多个可以独立开发和部署的微服务,既可以支持应用快速迭代,实现更好的弹性扩展,也有利于提升软件质量和可用率[3]。因而对微服务的实现与管理的良好支持,成为私有云平台的必备属性。近年来日益成熟的容器技术为企业应用服务化改造提供了轻便、易用的工具,同时也提供了资源利用率更高的任务执行模式。

基于上述理念,结合当前云计算领域的主流开源技术打造了一套完整的私有云平台解决方案,包括基础设施层、平台层、容器层和微服务化支持的全栈能力,可以拆分为轻舟微服务、瀚海私有云和瀚海一体机二款侧重点不同的产品,用于满足不同企业的数字化创新需求。

2 私有云平台设计

2.1 轻舟微服务架构设计

轻舟微服务的设计初衷是打造完整的微服务解决方案,帮助用户解决应用从开发、测试、构建、发布到上线运维的全生命周期管理,以及服务的注册、治理、链路跟踪、监控、诊断和高可用运维等问题。“轻舟”名称源自古诗“轻舟已过万重山”,取业务迭代轻松愉快的含义。整个系统由微服务框架、API网关、容器服务、DevOps、AIOps和测试平台等六大模块组成,并提供图形化的统一控制中心。轻舟微服务架构如图4所示。

(1)微服务框架

因为把系统分拆成多个微服务,这些服务共同完成各项系统功能,需要一套沟通和协作的标准。微服务框架就是要提供这样的标准,它应当便于微服务管理,并降低开发成本,故而微服务框架应当支持服务注册和发现、服务监控、服务的权限控制等统一的服务管理能力[4]。

目前,业界有Spring Cloud、Dubbo等主流开源微服务框架提供微服务需要的基础功能,但仅仅依靠这些框架,企业无法构建一个完整的解决方案,尤其是服务治理高级功能的缺失,如服务熔断、服务降级、服务限流等。在微服务框架层面,轻舟基于Spring Cloud,提供了服务注册/发现、服务治理、服务鉴权、动态配置管理、服务拓扑等能力,并全面兼容Dubbo、gRPC等,支持代码零改动接入微服务框架,企业能够实现已有服务框架的平滑迁移。服务治理与业务解耦,可以最大限度地降低对业务的影响。

图4 轻舟微服务产品架构

(2)API网关

轻舟API网关的设计,旨在实现流量入口管理,对微服务后端的API进行自动化统一发布与知识管理,采用插件式流量复制与分流实现,提高系统的稳定性和响应效率。目前,轻舟API网关提供API发布管理、API鉴权、流量控制、降级与熔断等能力,并支持自定义插件。

(3)容器服务

微服务分拆之后,运维和持续集成工作量暴增,而容器技术能实现环境(操作系统、代码、服务、以及应用运行需要的所有东西)交付的提前,是解决微服务运维难题的神器,笔者团队基于开源Kubernetes打造的Serverless(无服务器)和原生容器服务,支持应用部署和弹性扩容。Kubernetes是当前容器调度与编排的标准,本项目容器平台单个集群支持3万个节点,45万个容器,可以更好地支持应用的弹性伸缩。

(4)DevOps

如果把软件的开发和运维比喻成造车和开车,DevOps就类似自动驾驶,能够让软件交付变得高效、低成本,是企业采用微服务的一个核心目标。轻舟微服务DevOps提供了流水线管理,打通应用开发工具链,包括代码、构建、测试、镜像构建、发布、配置、监控等。Serverless容器使得团队无需管理服务器,只需要关注代码,因而可以更好地支持DevOps。

(5)AIOps

自动驾驶汽车也需要定期保养、检查、故障维修,轻舟AIOps是一个为微服务系统智能排查问题的模块。轻舟微服务遵循OpenTracing标准,打印的OpenTracing日志可以对接APM (应用性能管理)和智能化运维服务,这样用户就能很容易地发现故障点。轻舟AIOps包括分布式调用链跟踪/查询、指标异常检测、告警关联分析、故障根因分析等核心能力,并提供非侵入式探针,支持应用拓扑可视化,如图5所示。

(6)测试平台

轻舟测试平台提供了故障演练、API测试和性能压测的能力,用以测试服务和API是否有问题、系统能承受的压力有多大,从而保障业务上线时能正确满足需求。

图5 服务拓扑、调用链跟踪可视化呈现

2.2 瀚海私有云架构设计

轻舟微服务解决了软件架构的问题,但云计算底层还需要资源、数据库、缓存等基础服务。本方案通过把IaaS(基础设施即服务)、PaaS(平台即服务)、容器、和微服务工具链打包在一起,组成了瀚海私有云,如图6所示。当然,瀚海私有云在PaaS层也提供了容器服务,不想采用轻舟的用户也可以使用容器计算服务。“瀚海”的命名,意在海纳百川,打造开源领域的私有云。瀚海私有云平台设计具有开放兼容、互联网级IT、企业级服务能力和混合云支持四大特色。

图6 瀚海私有云产品架构

(1)开放兼容

瀚海私有云全栈基于主流开源技术构建。例如,IaaS层采用主流的开源OpenStack作为资源管理平台,并基于OpenvSwitch做软件定义网络的优化——全球50%的财富100强企业正在使用OpenStack,中国则有将近60%的企业私有云使用OpenStack[5]。在PaaS层,瀚海基于Kubernetes、MySQL、MongoDB、Redis、RabbitMQ、Kafka 等 开 源技术提供容器管理、数据库、缓存、消息队列等服务。这使得平台具有很强的兼容性,对用户而言,这些设计为他们进行业务平台的迁移带来了便利。

(2)互联网级 IT

支撑数字化创新的互联网级IT能力是瀚海私有云平台设计的另一个要点,主要体现在全栈化、规模和性能二个方面。全栈化亦即IaaS、PaaS和轻舟的整合,通过松耦合、高内聚、避免重依赖的设计,灵活地为互联网应用快速开发和弹性伸缩提供便利,这里不再赘述。

规模方面,为了能够支持千万级日活的超大规模互联网级应用,故而针对集群规模进行优化,瀚海私有云OpenStack单集群可以支持5000个物理节点,单租户支持6万台云主机。在容器层面,瀚海私有云单集群则支持3万节点、45万容器的编排。

性能方面,为了使系统支持超大规模业务下“秒杀”这样的极端场景,通过硬件和软件的一系列优化,在裸机容器、网络、缓存、数据库等方面实现业界领先的性能。如网络方面,提供SR-IOV、OVS+DPDK等网络方案,以满足不同的需求;在数据库方面,通过磁盘性能、网络带宽的提升,数据库内核和并发复制的优化,以及云主机网络参数、CPU亲和性(中断)优化等举措,把数据库OLTPQPS提升了36.2%。

(3)企业级服务能力

相比性能,系统的稳定性、安全性、高可用等这些指标对某些业务来说更为重要,而这些指标也被设计为瀚海私有云的基本功。例如,OpenStack组件及依赖的软件本身支持就高可用,瀚海私有云通过集群高容错、数据多副本、多AZ容灾、微服务架构及PaaS高可用设计等,从IaaS、PaaS和容器层立体化地保障业务可用性和数据可靠性。

(4)混合云支持

得益于OpenStack的兼容性、网络连接和资源管理能力,瀚海私有云不但可以跟特定服务商的公有云组成混合云,还可以跟世界上所有主流的公有云组成混合云。

2.3 瀚海一体机设计

OpenStack和Kubernetes强大的管理能力,都得益于丰富的组件和概念设计,但对于用户而言,二者在实际应用中有一个共同的难点,就是比较复杂。为此,本方案做了针对性的设计。在容器层,基于Kubernetes的逻辑隔离等特性进行自己的封装,避免将Kubernetes的API和所有的概念都直接暴露给普通用户。在IaaS层,设计了云计算全栈一体机——瀚海一体机,希望结合互联网化IT基础设施和瀚海私有云的优势,通过软硬一体化的方案,打造一款私有云领域装备齐全的“航母”,让企业无需组装就能直接开出去,海空一体地作战。

瀚海一体机吸收了上一代云计算一体机的优势。第一代一体机,是把软件和硬件打包在一起,解决的是快速交付云平台的问题;第二代超融合一体机,主要是针对计算、存储、网络割裂的问题,进行资源层面的融合,提升资源利用率,并降低运维难度和成本;瀚海一体机,则在PaaS和微服务成为企业竞争力的当下,直接给企业交付业务架构需要的所有云计算技术层次,解决的是业务研发效率提升问题,让客户只需要专注业务,加速数字化创新。

3 私有云应用实践:以网易为例

网易私有云平台自2012年在内部上线以来,至今已经稳定运行6年,支撑了内部95%以上的互联网业务云化,包括网易考拉、网易云音乐等日活跃用户达到千万级的大规模业务。据团队测算,仅考量资源层面,私有云就为公司节约硬件采购成本近5亿元,而平均资源利用率提升了4倍,运维效率也提升近4倍。

瀚海私有云之上,轻舟微服务也已经在网易内部支撑了多个业务线的发展,电商、教育、音乐、金融等业务,包括云计算业务本身,都已经逐步通过微服务化来提升交付能力和软件可用率。例如,网易考拉将电商平台进行微服务化,以数十个小团队并行开发,独立发布、迭代,借助轻舟微服务支持高效协同,迭代次数从每天2次提升到了1000多次。同时,由于分布式架构对整体可用性的加持,以及APM实时调用追踪、自动化测试等能力,网易考拉软件产品质量也实现了52%的提升。

基于轻舟微服务带来的迭代效率和高可用性,网易考拉得以快速、低成本地完成从跨境电商到综合电商的转型,通过稳定、可靠、体验出色的互联网平台,连接数亿用户与无数低价、高质量的商品,有效促进了电商行业的良性竞争,推动了中国消费升级的进程。

4 未来私有云平台设计展望

未来几年,企业将会把更多的业务放在私有云上,因而私有云平台将不断随着业务应用的发展和信息技术的变迁持续演进,为所有产业的数字化创新提供核心动能。在业务支撑上,私有云将继续沿着标准化、全栈化和服务化的方向,将更多的基础能力与业务解耦、平台化,实现按需供给,进一步解放业务团队,为更多的场景和业务负载提供支持,驱动企业数字化创新。而从技术架构本身来看,私有云平台在可用性、稳定性、可靠性、性能、可扩展性、成本等方面的优化,仍将是一条没有止境的路。

以网易云为例,在微服务层面,轻舟微服务一方面将不断完善智能化运维、分布式事务等功能,另一方面也将无缝支持下一代微服务Service Mesh(服务网格)技术,并提供高性能Sidecar服务,进一步将微服务治理的能力下沉到平台层,让开发者可以更加专注于业务。

在基础设施服务层面,瀚海私有云平台在通用计算领域,将结合最新硬件特性,通过软件定义技术以及软硬件一体化优化,充分发挥硬件性能。同时,瀚海私有云平台也会面向人工智能领域进行深度性能优化,提供更高性价比的人工智能基础设施服务。

在平台系统服务层面,面向不同业务应用场景(如IoT/区块链等),瀚海私有云平台将不断研发新的托管免运维的平台服务,进一步降低不同业务场景下业务研发构建系统的复杂性,使企业研发更高效。

5 结语

技术创新始终是经济增长和社会进步的原动力,在数字经济成为主旋律的今天,针对数字化创新的需求,设计了一套满足企业资源架构、数据架构和应用架构需求,支持互联网级IT能力的完整的私有云解决方案。未来,将围绕数字经济变革,基于开放技术,联合生态合作伙伴提供更加完善的云计算解决方案,不断满足企业数字化创新的需求。

猜你喜欢

瀚海轻舟容器
一叶轻舟
Different Containers不同的容器
难以置信的事情
Dramatic change of the self-diffusions of colloidal ellipsoids by hydrodynamic interactions in narrow channels∗
沧海轻舟
瀚海阑千百丈冰
一路轻舟乘东风
轻舟
香梨:瀚海的果实
取米