资讯 行业云
此为临时链接,仅用于文章预览,将在时失效

独家对话火山引擎张鑫:未来3年迎来云原生容器巅峰期

作者:杨丽
2021/09/22 11:33

独家对话火山引擎张鑫:未来3年迎来云原生容器巅峰期

作者 | 杨丽

受访人 | 张鑫

雷锋网按:企业对技术路径的选择从来不存在唯一性。当下数字化势头强劲的浪潮下,云原生成为技术的流行方向,虚拟化、容器、微服务组合在一起,面向企业业务提供足够灵活的云服务,会成为下一个普世化的技术栈道。

由尝试容器部署开始,字节跳动的云原生实践在近些年走得越来越快。

2016年6月,字节跳动启用Kubernetes技术栈,开始对业务进行大规模容器化改造,2017、2018年进入阶段性上量阶段,到2018年这一年部署的容器单集群已经达到了上万个节点。

如今,字节跳动已经有超过95%的应用实现了云原生化,从最开始的面向容器部署,过渡到面向服务的阶段,不仅用上了容器编排工具,更是在这之上建立了比较完善的微服务治理体系。2020年,火山引擎作为字节跳动旗下的企业级技术服务平台,正式将云原生的能力开放了出来。

除了没有太多的历史包袱,让这家年轻的企业可以轻装上阵,无需关注替换带来的成本外,更多地还有对技术趋势的判断力和投入,很早就拥抱了云的方式。因而,字节跳动的很多业务一开始就根深蒂固长在了云上,在接下来设计新的业务系统时,也会充分考虑利用云的弹性能力。生于云、长于云,这成为企业可以借鉴的最直白、却又最具有普世化特征的云原生实践路子。

在与雷锋网(公众号:雷锋网)的访谈中,火山引擎副总经理张鑫阐释了他对云原生容器技术的趋势判断、引入这项技术的面临的难点与挑战,以及字节跳动自身过去五年的云原生实践路径。

“从技术曲线上讲,虚拟化差不多经历了十年的发展历程,如今到了商业化的稳定期。同样,容器+K8s从2014年谷歌开源出来到如今,预计未来三年也会达到一个巅峰期。”

但当前Kubernetes因其涉及的维度广泛,包括微服务架构理念、网络、存储等各个层级,导致无论是产品服务商还是企业实践者,都在这个过程中存在不小的技术挑战。

张鑫作为火山引擎云原生应用服务的负责人,也是国内容器产业的早期研究和实践者。以下将呈现这次访谈的完整总结。

初识云原生的四个方向

尽管在技术战略层面,云原生被各大互联网企业列为主要发展方向,但云原生和容器是两个相关,却不能划等号的概念。

一开始,外界可能会比较具象、容易理解的是容器本身,是对资源、应用的一种标准化封装。但拥有容器化部署,可能只意味着企业有了云原生的基础设施,并不意味着实现了云原生应用。从容器到云原生的进化,还是会有比较大的差异。

从云原生核心技术角度判断,云原生进入成熟期应存在东南西北四个方向上的演化:

从技术曲线上讲,虚拟化差不多经历了十年的发展历程,如今到了商业化的稳定期。同样,容器(2013年Docker公司公布技术标准)+Kubernetes(2014年谷歌开源项目)到如今,预计未来三年也会达到一个巅峰期。从产业数字化发展的现状来看,现在各行各业都在如火如荼地进行建设,行业数字化在加速,理论上是一个非常好的窗口期。

中国信通院的一份云原生用户调查报告显示,容器化改造依旧是主流趋势,将容器技术投入核心业务生产的受访用户同比增长2.48%。调研机构Gartner公布的数据显示,到2022年,75%的全球企业将在生产中使用云原生的容器化应用。

但这中间同样存在巨大的鸿沟,也就是上述东西南北向的技术产品,如何能跟前端业务需求密切连接起来。这是需要包括供应商在内的企业,在未来三年快速去落地的事情。

最优先级任务

那么,火山引擎首先会在这四个层面落地哪些事情?

“我们更多在做的是南北向的事情。即向下修炼内功,向上为开发者提供服务。南向是我们认为最关键的内功,任何一个云上应用、系统,最终还是要回归到稳定性、可靠性等问题,这是我们一定要做且目前也做得非常好的事情。”张鑫指出。

首先,字节跳动业务自身就面临着如何在大规模数据量和业务量的情况下,仍然保持足够良好的性能的问题。字节跳动构建有一个非常庞大的数据中心,容纳了近百万台服务器。在云原生基础设施层面,包括将计算、网络、存储上如何更好地与容器技术结合上,团队已经做了很多技术创新。

其次,云原生应用最终还是要提供给开发者使用,如何让开发更快、更简单,这是团队追求的一个重要优先级。

但当前企业对容器的实践也可以具体拆分为三个阶段:

值得一提的是,字节跳动本身存在一个中台的组织形态,它对内会支持很多的业务线进行构建,可以看到很多的应用或功能,其实是基于Serverless的方式进行构建的。

目前来看,多数企业仍处于面向容器、面向服务的第一二阶段,而在产品层面,字节跳动已经开始着力于向第三阶段发力。

独家对话火山引擎张鑫:未来3年迎来云原生容器巅峰期

一股新兴势力

站在客户层面,不同类型的客户对引入云原生容器服务是会比较明显的差异的。

其中,互联网行业成为云原生采用率占比最高的行业。首先,互联网企业对云原生的应用深度和广度都非常大,也愿意为高ROI技术买单。

尤其是头部的互联网企业,其资源能力极强,且业务形态非常复杂,往往会选择开源深度定制+自研的方式进行技术实践,原因在于其业务体量足够大,能够通过哪怕1%的性能提升而带来比较高的ROI。

相比之下,很多腰部的互联网企业可能很难为了提升1%的性能或成本,而投入大量的研发团队。字节跳动最近的一项调研也发现,将互联网行业客户群体进一步拆分,其中像在线游戏等垂直行业,其云原生的采用率占比已经超过80%。

对于传统行业而言,近些年来因其数字化转型的业务驱动影响,使得他们对新技术的拥抱越来越高。

如金融、零售电商、工业互联网、生信医疗、智慧政府等行业,因其数字业务创新的驱动,有了越来越多互联网相关业务。从团队最近一段时间的服务观察,这些行业对新技术的拥抱也越来越高。

举个例子,在生信医疗领域,随着蛋白质测序、基因分析等业务持续涌现,以及医疗基础数字化建设的推进,企业需要越来越多的算力,构建更加敏捷的应用系统。此外,生信医疗行业本身也在着力打造一个基础科研平台,以打通医院、高校在科研方面存在重复造轮子的数据孤岛问题。

企业需要追求新技术吗?

外界有言,谷歌早在2003年就已经对自身实现了容器化应用,而其后多年一直作为秘密武器秘而不宣。依靠这项技术,仅在运维成本方面每年就能节约一半的费用,这无疑大大提升了企业自身的竞争优势。

曾就职于这家企业的张鑫,目睹过谷歌每天20亿个容器计算集群在跑。

在他看来,对于企业而言,不会单纯将追求尝试新技术为目的,尝试新技术,仍然需要业务驱动。因此从业务角度进行划分的话,首先就要看企业是不是有足够多的敏态业务,然后基于此进一步衡量使用新技术进行改造的ROI。

容器技术在更多有状态应用场景中的延伸,导致IT基础层架构相应地也在持续优化,比如对存储、数据库的能力要求,对开发运维环境带来的复杂度问题,以及对大规模计算存在的短板。

从应用角度来看,无状态应用、有状态应用、稳态应用等等,不同应用进行云原生化的ROI、难易程度是有差异的。

容器环境下,有状态应用经常会遇到的一个问题是,如何做数据的持久化,这对企业存储的要求发生了改变,如选择何种存储系统,是否可以满足分布式存储性能?数据能否跟上层的应用编排结合起来?业务调度时,是否需要考虑数据的亲和性?

再往后,分布式存储本身还依赖于强大的网络体系,这就要求容器本身需要自带有相应的解决方案。如何基于RDMA做高性能传输,是否能直接在硬件层面,如基于智能网卡做硬件卸载……等等这些技术难点。

但换个角度看,这些问题也为很多云原生容器厂商提供了很大的空间。因为这些能力并不是在开源的技术体系内就能够解决,这也是火山引擎希望发力的领域。

对于这类应用而言,首先迁移就会有一定的难度,它们可能是一些商业套装软件,可能跑在非x86架构上;其次,如果将这类应用构建完后,未必会产生很多的回报,可能不需要解决高弹性等性能问题,也不需要敏捷迭代,甚至都不建议花很多的精力和风险来换取回报。

云原生时代的新机遇

云原生,还将影响各家云厂商对于标准的理解和共识。

一是要形成标准。否则不同厂商之间都有一套封闭系统,彼此间将很难进行兼容,且厂商自身也很难做大,企业自身也会面临越来越多的技术孤岛。

其二,云原生会推动标准的形成。此前容器Docker之所以流行,是因为它定义了一套从应用打包、封装、运行的一套管理标准,Kubernetes也是建立了一套对容器如何进行编排的一套标准。虽然未来还会有越来越多的技术如Serverless、aPaaS、低代码等,但容器+Kubernetes其实已经解决了很多这些根本性的标准化问题。

“这个状态是比较乐观的。”张鑫最后指出。

据雷锋网观察,对开放理解的差异,因不同标准组织涉及的商业利益的平衡策略而不同。当下这个市场,竞争局面依然掌握在国际化云厂商的规模经济效益中,如何在技术层面有所突破?在赢家通吃的市场中,一起做开放标准,一起开发开源软件,以抵消市场领导者的优势地位或许才有出路。

(雷锋网)

文章点评
相关文章