专访网易数帆:开源的云原生之路,能给业务带来什么?

大东BE 发布于 09/14 13:39
阅读 1K+
收藏 11

解锁HarmonyOS核心技能,赢取限量周边好礼>>>

CNCF 发布的 2020 云原生调查报告显示,有 68% 的受访机构在生产过程中使用容器,比去年增长了 39%,相比 2 年前增长 240%;Kubernetes 作为容器技术生态的核心已经无处不在,生产中使用 Kubernetes 的比例已从去年的 72% 增长到了 82%,成为了云原生基础设施的绝对事实标准。

在国内,各大厂商的云原生进程也在如火如荼地进行中。 继年初开源服务网格智能管理器 Slime 之后,网易数帆近日正式开源旗下基于 Envoy/Istio 的云原生 API 网关项目 Hango(函谷),和可视化多租户 Kubernetes 管理平台 KubeCube,初步勾勒出了属于自己的云原生开源生态版图。

作为一家定位为数字化转型技术与服务提供商的商业公司,网易数帆近期开源的两大项目在其云原生生态版图中扮演着什么样的角色?一系列拥抱开源的举措又能够给网易数帆的业务带来哪些助力?

云原生 API 网关

为什么要专门构建一个“云原生”的 API 网关?

网关是“镇守”互联网应用门户的关键流量代理软件。进入云原生时代,用户除了需要 API 网关提供请求代理、熔断限流、审计监控等常规能力外,更多的开始关注云原生兼容性(容器、服务网格等),支撑场景的多样性(七层负载均衡、Ingress、Serverless 网关等),以及更好的性能稳定性。

数帆团队介绍,以往的微服务 API 网关主要在性能、扩展性、云原生适应性以及覆盖场景方面存在不足。

性能方面,Java 异步化网关受限于语言实现,性能瓶颈明显;基于 Nginx 的网关原生功能较少,很多 API 网关常用功能都需要通过外挂插件来扩展实现,难免多一层性能损耗。

云原生适应性方面,传统微服务 API 网关在设计之初都没有融入云原生的架构理念,进入云原生的容器、微服务、服务网格等体系难免“水土不服”;场景方面,以往的微服务 API 网关大多专注于微服务流量治理,在类似的负载均衡器、Ingress、Serverless 的场景无法实现能力复用、技术栈统一。

网易数帆开源的 Hango 基于 Envoy 技术路线的增强实现,让很多传统 API 网关的痛点问题迎刃而解。

082104_deAI_4252687.png

性能方面,得益于 Envoy 原生 C++ 实现的诸多网络代理特性,Hango 在 API 网关常用功能方面均有较强的原生功能和性能支撑,无需额外扩展;云原生适应性方面,Hango 的设计继承了 Envoy 天生的云原生适应性,天然适配 Kubernetes、Service Mesh、Serverless 等云原生环境;场景方面,Hango 设计没有局限在传统 API 网关的范畴,更多希望作为一个通用 L7 网关,除 API 网关外还能够覆盖负载均衡器、Ingress、Serverless 等场景。

此外,Hango 在扩展性方面也在持续跟进 Envoy WASM 社区的进展,逐步让 API 网关的多语言插件扩展成为可能。

更易用的 K8s 发行版

如果说云原生网关 Hango 是网易数帆为了方便开发者技术选型而推出的传统网关替代品,KubeCube 则承载着网易数帆自建云原生开源生态蓝图的宏大目标。

对于一个完整的技术生态来说,操作系统可谓是生态的重要枢纽,将生态中的各个软件与硬件连接起来,从而形成一个生态的闭环。K8s 被业内认为是云原生时代的操作系统,近年各大云服务厂商都推出了各自的 K8s 发行版,大有像 Linux 发行版一样百花齐放的趋势。

目前主流的 K8s 发行版都是为客户提供标准的符合 CNCF k8s 一致性认证的 K8s 集群,并在此基础上进行一些特性、能力的扩展,各自的差异性其实也就体现在这些扩展的能力上,比如多集群管理、多租户隔离等。网易数帆的 KubeCube 也有自己的特色。

在近几年跟国内企业的合作及交流中,数帆团队发现很多企业认识到业务容器化会给自己带来很多收益,但并不知道该如何进行落地。KubeCube 的初衷是想帮助企业简化容器化落地,主要从三个方面着手:

1. 简化 K8s 能力获取,提升 K8s 可观测性和可运维性:不管是单节点 POC,还是多节点高可用的生产环境均可一键部署,快速获得基础环境。同时将资源管理、日志、监控、告警等落地过程中必不可少的能力做到开箱即用。

2. 简化多集群稳定性管理:业务服务生产环境容器化,必然需要多集群,通过为多集群提供统一的身份识别、访问控制、在线运维工具等,提升多集群管理效率,同时保证在异常情况下,各集群可以保持自治,使业务应用无感知。

3. 简化企业级能力的获取:企业容器化改造还是为了能够降本增效,那资源共享及隔离是一个绕不开的问题。KubeCube 总结了实际遇到的客户案例,抽象了多层级的租户项目模型,并以此进行了访问权限、配额等隔离,在资源共享的同时,保持必要的隔离性。

此外,随着近几年国际环境的变化,更多企业认识到自主可控的重要性,越来越多的企业底层环境采用国产“芯”,KubeCube 支持目前主流的国产处理器及操作系统,使容器化落地更顺畅。

众人拾柴火焰高

包括此前开源的 Slime 在内,网易数帆目前已经开源了包括网关、K8s 管理平台、Service Mesh 等在内的云原生项目,构建了一个肉眼可见的云原生开源生态版图。这些开源项目在网易数帆的商业模式中扮演着什么样的角色?公司又能够从这些开源项目中得到什么呢?

网易数帆轻舟产品总经理陈谔告诉我们,开源“众人拾柴火焰高”的模式对于当前基础技术创新的价值已经毋庸置疑,数帆乃至网易一直坚持开源开放的技术路线,他们陆续开源多个源自内部实践的云原生项目,既是回馈社区促进社区更加繁荣,促进用户实践,也是希望项目能够更好地演进,与整个生态融合。

从商业的角度来看,数帆轻舟所规划的云原生软件生产能力是构建在云原生的软件基础之上的,他们希望提供给客户的是基于云原生基础技术栈上的软件生产能力,因此有更多企业能更标准、更优雅的使用云原生的基础技术就是对其业务成长最大的帮助之一。“所以我们在云原生方向的开源整体来看就是围绕着用好 Kubernetes,用好 Istio 这样云原生的基础技术栈的方向去设计。同时用户如果选用了我们的开源项目,那么进一步用上轻舟的产品也就更加平滑。”陈谔说。

此外,网易数帆近年来也加深了与 CNCF 等国际开源组织的合作,并以贡献项目和代码等方式持续加深网易在国际开源社区中的影响力,坚持“上游优先”的开源社区准则。

陈谔介绍:“我们已成立了开源委员会对云原生领域的开源工作进行推进管理,去年我们开源的 Curve 分布式存储系统已在填报捐赠给 CNCF 的流程,KubeCube 等项目也有计划贡献给 CNCF 基金会。同时我们在 Envoy、Habor 等项目都有核心功能的贡献,例如 Envoy 的 tracing 能力增强, Lua script 的支持,Habor 的远端复制功能、webhook 功能等,整体较为重要的功能贡献有十余项。”

独行快,众行远

放眼国内目前的云原生技术生态,仍面临不少的挑战。

首先是云原生技术在企业的成功落地往往需要有一些组织层面的支撑,例如协作关系是否能向 DevOps 转型,是否有能够负责技术架构落地的架构师或团队。

其次是开源社区的成熟度、参与度,需要有更多的开发者、企业投入到云原生相关的开源社区贡献中去,只有开源而没有社区会使项目的活力大打折扣,以至于影响到长期的生命力。

独行快,众兴远。在各行各业提倡技术国产化的大环境下,开源已然成为各大技术厂商建立自主技术生态的首选发展路线。陈谔认为,在国产化趋势下开源、尤其是国产开源有助于加速知识、经验通过技术社区的传播,普遍提升国内 IT 从业者的技术能力,企业将从开源社区获得更多的支持,加速技术栈的进化。同时,好的开源项目也能快速促成技术栈的标准化,从而更好的形成可服务于企业的技术生态。

受访嘉宾介绍

▲ 陈谔网易数帆轻舟产品总经理,网易杭研云计算技术中心与运维保障中心负责人。现负责网易云原生产品线建设,对内主导集团互联网业务基础设施与PaaS层技术栈的云原生演进,并全方位打造运维、开发、测试相关技术平台,促进集团软件生产提效。对外打造轻舟云原生、低代码产品线,实践网易数帆数字化基础软件战略。

加载中
0
flenz
flenz

直接叫网易云多好

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部