云原生生态大会Day1,网易数帆揭秘云原生软件生产力三重境

12月16-17日,由CNCF、网易数帆、VMware、PingCAP和阿里云联合主办2020 Cloud Native Day云原生生态大会线上召开,来自联合主办方及字节跳动、Zilliz、百胜中国等公司的17位重磅演讲嘉宾,带来2天主题分享,解析云原生领军企业和组织、头部用户的云原生战略与实践,剖析云原生技术带来的机遇与挑战,帮助云原生技术使用者和爱好者加深对技术的理解,同时推进云原生与企业IT的融合。

在大会的第一天,网易数帆轻舟事业部总经理陈谔结合网易数帆旗下轻舟云原生平台近五年来的三次重大技术变迁,分享了网易及广大数字化进程中的企业在IT、业务架构上的需求演进背后的逻辑,软件生产与云原生之间的关系,以及网易数帆对未来的思考。

陈谔将云原生软件生产分为三个阶段,包括业务架构微服务化阶段、云计算操作系统阶段和应用平台阶段,分别以服务治理与监控体系建立、中间件全面融合Kubernetes、应用视图与运维视图分离为重要特征。他断言,云原生的发展已经历了微服务阶段,当前处于云操作系统阶段,而应用平台阶段的发展也已经起步并将是未来的发展方向。

云原生的起点:干掉微服务架构的复杂性

微服务阶段技术演进的诉求发端于互联网/移动互联网的兴盛,明晰于微服务架构的复杂性。互联网时代,业务方需要在高度的业务复杂性下快速迭代软件。陈谔指出,分而治之是最符合直觉的解决办法,当时微服务架构也已被提出,但拆分后的技术复杂性是不可忽略的因素,需要和迭代效率放在一起来权衡。 而云计算的出现首先解决了碎片化的计算资源获取问题,剩下的就基于云计算提供一个技术栈来应对微服务架构的复杂性。

针对上述问题,网易数帆在实践的过程中逐渐形成了轻舟微服务平台,包括API 网关、服务治理框架、持续交付服务、全链路应用监控和分布式事务等五个组件。其中,持续交付平台负责调用云计算接口准备计算资源,并将制品发布至云上的各个环境;API网关解决分散的微服务架构作为一个整体应用对外提供接口的问题;服务治理解决服务的注册发现、以及服务间路由策略的问题;全链路监控解决微服务的监控诊断问题;分布式事务中间件解决了服务拆分后事务保障的难题。

高潮:云OS基于K8s整治资源管理,简化环境维护

微服务大规模应用的后遗症,就是计算资源的生命周期管理、运行时环境维护复杂以及资源利用率低下等。陈谔举了两个例子:一个是大促后弹性资源下线难,将一些节点下线,影响评估是否准确?服务的剩余副本数是否合理?服务是否能自动恢复到目标的副本数?另一个是调整集群调度分布困难,如希望将服务分布在不同的物理节点或逻辑上的服务分组,只能在静态初始化时做到,一旦后续发生变更就无法很好保障。

容器、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管理、中间件自动化运维等能力。

免责声明:本站部分作品来源于互联网,由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议,更不为其版权负责。如有对本站内容有任何问题,请联系我们邮箱: kejiquan@vip.qq.com 会在第一时间处理。丨本文信息:科技圈 » 云原生生态大会Day1,网易数帆揭秘云原生软件生产力三重境