12月16-17日,由CNCF、网易数帆、VMware、PingCAP和阿里云联合主办2020 Cloud Native Day云原生生态大会线上召开,来自联合主办方及字节跳动、Zilliz、百胜中国等公司的17位重磅演讲嘉宾,带来2天主题分享,解析云原生领军企业和组织、头部用户的云原生战略与实践,剖析云原生技术带来的机遇与挑战,帮助云原生技术使用者和爱好者加深对技术的理解,同时推进云原生与企业IT的融合。
在大会的第一天,网易数帆轻舟事业部总经理陈谔结合网易数帆旗下轻舟云原生平台近五年来的三次重大技术变迁,分享了网易及广大数字化进程中的企业在IT、业务架构上的需求演进背后的逻辑,软件生产与云原生之间的关系,以及网易数帆对未来的思考。
陈谔将云原生软件生产分为三个阶段,包括业务架构微服务化阶段、云计算操作系统阶段和应用平台阶段,分别以服务治理与监控体系建立、中间件全面融合Kubernetes、应用视图与运维视图分离为重要特征。他断言,云原生的发展已经历了微服务阶段,当前处于云操作系统阶段,而应用平台阶段的发展也已经起步并将是未来的发展方向。
微服务阶段技术演进的诉求发端于互联网/移动互联网的兴盛,明晰于微服务架构的复杂性。互联网时代,业务方需要在高度的业务复杂性下快速迭代软件。陈谔指出,分而治之是最符合直觉的解决办法,当时微服务架构也已被提出,也但拆分后的技术复杂性是不可忽略的因素,需要和迭代效率放在一起来权衡。 而云计算的出现首先解决了碎片化的计算资源获取问题,剩下的就基于云计算提供一个技术栈来应对微服务架构的复杂性。
针对上述问题,网易数帆在实践的过程中逐渐形成了轻舟微服务平台,包括API 网关、服务治理框架、持续交付服务、全链路应用监控和分布式事务等五个组件。其中,持续交付平台负责调用云计算接口准备计算资源,并将制品发布至云上的各个环境;API网关解决分散的微服务架构作为一个整体应用对外提供接口的问题;服务治理解决服务的注册发现、以及服务间路由策略的问题;全链路监控解决微服务的监控诊断问题;分布式事务中间件解决了服务拆分后事务保障的难题。
微服务大规模应用的后遗症,就是计算资源的生命周期管理、运行时环境维护复杂以及资源利用率低下等。陈谔举了两个例子:一个是大促后弹性资源下线难,将一些节点下线,影响评估是否准确?服务的剩余副本数是否合理?服务是否能自动恢复到目标的副本数?另一个是调整集群调度分布困难,如希望将服务分布在不同的物理节点或逻辑上的服务分组,只能在静态初始化时做到,一旦后续发生变更就无法很好保障。
容器、Kubernetes的出现使这些问题迎刃而解。容器镜像带来了层级化、易于组合/重用的优势,且管理便捷、可与调度、生命周期管理衔接;Kubernetes则带来了L1 CMDB,精准维护集群状态使调度策略变更、故障恢复、扩缩容等生命周期管理相关的操作得以实现自动化,同时还支持业务只需感知Kubernetes API而无需关注IaaS层API。基于此,网易数帆将业务、中间件等负载由Kubernetes支撑,并将微服务支撑能力下沉(即Service Mesh),形成一个云计算操作系统。
陈谔分享了网易数帆云操作系统的三个案例,包括网易内部网易内部的资源利用率优化、高新制造业客户的多云管理以及企业的软件供应商环境统一等实践。(详情请关注后续视频回放。)
网易数帆在实践云OS的过程中也发现了新的问题和新的机遇。
问题是开发人员的技术栈负担过重,微服务架构的采用使得中心化的运维职责部分(如容量规划以及调度策略、网络、存储配置等)卸载到了研发角色,而研发普遍不擅长处理这些工作,“然而我们认为软件生产能力的提升不应以技术门槛的提高为代价。”陈谔强调说。
机遇在于统一的运维界面意味着将特定类型应用的运维标准化、自动化的可能性,从开发到运维转换,作为在软件生产过程中最具挑战的环节之一有望得到大幅的优化。
作为云原生的底座Kubernetes一直没有应用层面的抽象,陈谔认为未来需要将应用的概念分离出来,来降低应用开发人员的认知负担。当前社区的OAM模型的尝试,也是网易数帆重点关注的一个方向。
在以应用为中心的方向上,网易数帆希望基于云原生的普及实现软件生产能力普惠,让更多的人可以参与到应用开发中来,并拥有良好的开发效率。毕竟当前企业数字化的过程中,IT团队的交付能力经常成为瓶颈,一些有价值但不是非常核心的系统往往长期处于需求排队的状态。
陈谔表示,软件生产能力的普惠主要是解决开发能力与运维能力这两方面的问题。开发能力方面通过缩小场景范围、弱化抽象能力、表达能力,提供所见即所得的编辑能力来降低开发人员的认知负担,这也是历史上低代码平台类产品常见的策略。
运维能力方面,运维能力的缺失使非专业人员的代码产出无法融入企业的IT环境成为标准的企业服务,从而仅限于个人或小范围使用,而云原生的技术使我们可以为应用生成标准的运维配置、策略的描述,并且这些配置在云OS的统一运维界面下普遍适用。
网易数帆的实践是打造了能与云原生体系结合的低代码平台,面向初级开发者,面向信息管理系统类的应用,基于MVVM的模型,但开发者无需理解编程语言的抽象、MVVM框架,网络,远程调用等概念,而只需理解业务的数据模型,编写必要的逻辑,并通过可视化的方式拖拽界面元素实现应用。
陈谔介绍,该平台设计成能生成符合云原生标准的制品,如容器镜像与Helm charts,既能在轻舟的容器云中自动部署运行,也能在客户的Kubernetes集群中部署,简单应用可以直接通过容器部署。客户只要有面向K8s的运维机制,无需开发者提供额外信息即可基于制品部署运维,并能兼容客户运维体系的规范。
客户需要更高级的能力时,也能以轻舟平台为云OS来扩展持续交付、自动部署、服务治理、API管理、中间件自动化运维等能力。
在大会的第二天,网易数帆将联合百胜中国分享网易集团及百胜中国的云原生相关技术实践与经验心得,敬请期待!
议题:善于Service Mesh,网易云原生架构转型之路
讲师:网易数帆轻舟事业部微服务平台负责人冯常健
议题简介:云原生技术在企业IT转型过程中发挥越来越重要的作用,但摆在实践者面前的是如何用好云原生技术,发挥其应有的价值。本议题将分享主题网易自2016年开始探索的大规模Service Mesh技术应用与实践,以业务驱动技术架构升级,解析企业实施Service Mesh架构面临的问题、如何应对以及落地关键要素。
议题:基于Kubernetes的微服务实践
讲师:网易数帆轻舟事业部资深解决方案架构师王必成,百胜中国系统架构师申海龙
议题简介:百胜中国作为中国餐饮领军企业,在中台建设过程中,基于餐饮行业的行业特性,结合主流的容器化技术、微服务化技术,打造多云环境,更低成本、高可用来支撑业务的持续发展之路。网易数帆轻舟事业部资深解决方案架构师王必成与百胜中国系统架构师申海龙将介绍百胜中国与网易共建的云原生基础设施体系,架构设计的深层思考,以及云原生在百胜中国业务应用的经验。
B站直播:https://live.bilibili.com/22585337