大概两年多前,脑极体的一位编辑离职了,“罪魁祸首”就是一个关于云原生的选题,这直接让他心理防线崩溃了。真不是他太脆弱,绝大多数人看到云原生的复杂内容,恐怕都会怀疑人生。
点开云原生计算基金会(Cloud Native Computing Foundation,CNCF)的沙盒,你会看到数百种不同的应用和解决方案,令开发者眼花缭乱;云厂商们的云原生产品,有的甚至超过了 100 款。
市面上关于云原生的科普,画风往往是这样的:《一文了解云原生四要素》《细数云原生的 5 大特征》《浅谈云原生架构的 7 个原则》《云原生应用的 12 要素》…… 看起来都很专业,但是中英混杂、陌生概念无数,而且不同云厂商、不同机构的说法还各有不同。甲方和读者只是想搞清楚火爆的云原生究竟是什么东西,又不是要考研…… 最后大多数看不懂的普通人只好躺平,任技术人士们自嗨。
云原生概念火了多久,就科普了多久。难以说清的原因有很多:
一是技术体系庞杂。云原生并不是一种特定的技术,而是围绕云计算的应用逻辑,搭建起来的一系列具体技术和产品,不同的云厂商往往会从不同的角度给出各自的解释。看看这张 NCNF 的云原生知识图谱,谁看了不迷糊?
另一个原因是云原生本身还在不断演进发展之中。其定义、特征、核心技术等都在不断发展,比如 2015 年云原生计算基金会(CNCF)成立,对云原生定义进行了修改,2018 年定义又进一步完善。今天还是十二要素,转眼又变成了十五要素;刚合并 Docker,随后又宣布弃用。这样快速变化的局面中,要清楚地记住云原生各种名词,属实有点难。
想要从一个明确且公认的客观定义来理解云原生,确实是很困难的一件事。不过,IT 世界里流行一句话:“语言只是工具,思维才是最重要的。”同理,了解云原生的根本,思维才是最重要的。
《云原生发展白皮书(2020)》中也指出,云原生是面向云应用设计的一种思想理念,能够充分发挥云效能的最佳实践路径。
云原生究竟是一种什么思想呢?我们觉得,云原生其实就是企业上云的本土化策略。
大家可能见过很多海外企业来到中国,或者中国品牌出海,都需要结合当地消费者的经济、文化、生活习俗等,进行一系列融入性调整。同理,比起简单将数据和应用迁移到某朵云上,一开始就生于云、长于云的“云原生”,更具吸引力,也被认为能更好地发挥云服务的优势。这是很多企业,尤其是非数字原生的实体企业十分看重的。
云原生,就像一个云世界里土生土长的土著,被看好它的人们视作优质偶像、未来顶流的潜力股。那么,从 2019 年的爆红至今,云原生究竟发展到哪一步了?
从虚火到实红:云原生这三年
云原生概念有很多,这里我们从比较客观的时间线来梳理一下,看看云原生是怎么被一众“星探”们挖掘追捧并成为网红的。
大多数人会追溯到 2010 年,WSO2 公司 CTO Paul Fremantle 在博客里也提到“Cloud Native”的概念。不过关于云原生核心技术之一容器,则可以追溯到更早的 2003 年,谷歌提出了一个可扩展的分布式文件系统 Google File System。
2013 年,Pivotal 公司 CTO Matt Stine 在推特上提出,云原生是一系列技术的集合。同年,开源容器软件 Docker 发布,以 Docker 为代表的容器技术开始兴起。
2014 年,谷歌发布 Kuberbetes 开源项目,这也是目前容器编排使用最广泛的工具。
2015 年,Matt Stine 在《迁移到云原生应用架构》一书中提出了云原生的技术特征,包括十二因素、微服务、敏捷基础设施、基于 API 的协作,反脆弱性等。同年,CNCF 成立,将云原生定义为容器化封装、自动化管理、面向微服务。
2017 年,Matt Stine 重新归纳了云原生的六个特质,Pivotal 官网则给出了云原生的最新定义,概括为 4 个要点:容器、微服务、DevOps、持续交付。
2018 年,CNCF 又新增了两个定义:服务网格(Service Mesh)和声明式 API。同时期,几乎所有主流云计算供应商如阿里云、华为云、腾讯云等都加入了 CNCF,Kubernetes 和容器成为云厂商的既定标准。
细水长流之后,云原生在 2019 年迎来了概念爆炸的元年。主流云厂商都开始宣布全面上云,并大力推广、开源云原生相关技术。《云原生发展白皮书》显示,2019 年中国云原生市场规模已达 350.2 亿元,由大中型互联网企业主导云原生产业发展。
2020 年,云原生热度继续升温。调查显示,中国社区的 CNCF 项目使用量增长了 64%,2 个来自中国的项目 Harbor 和 TiKV 毕业,使用量出现跨越式增长。
2021 年,全球云原生应用持续走高,Forrester 数据显示,组织中容器和无服务器技术的使用率在一年内都增长了 75% 以上。
这有点像一群经纪公司推出了“云原生”这名练习生,没想到真的戳中了 B 端客户的审美点,迎来了爆发增长。“云原生”热度一直持续,已经从虚火变成实红了。
云原生,戳中了企业的哪些审美点?
企业是不会因为一个虚幻的概念或者趋势,就用真金白银来买单的。显而易见,云原生能够爆发,还是在于相关技术或产品,戳中了云计算客户的审美点,成为数字化的刚需。
其实企业采用云原生就和搭建本地团队一样,都是看到了一些本土化的妙处。
1.快速响应。海外企业想要适应中国市场,最好的方式当然是雇佣中国人来快速响应用户的需求,同理,越来越多的企业需要通过数字技术、线上软件进行作业,这时候就需要更快响应、更快扩容、更为敏捷的云服务,来替代传统机房和 IDC 这样的传统 IT 基础设施。仅仅是用上云来替代服务器还不够,一些企业还希望将业务和服务也搬上云,这就需要从应用开发到部署维护都在云上完成,容器等云原生技术在上云和迁云中的优势自然受到欢迎。
2.降低成本。相比海外高管外派到中国,雇佣本地人的成本也是大大降低了。而企业在上云、应用开发、运维等过程中,对 IT 人员的需求也越来越多,但传统实体企业显然不是 IT 技术人员的首选,而且用人成本也是企业难以承受之重,这时候云原生通过一系列产品、工具、方法,可以加速软件开发进程,减少相关资源的投入,降低运维人员的压力。这对于企业推进数字化是非常有吸引力的。
3.场景化方案。本土化策略当然不是随便抓来一个当地人,而是根据行业特性如零售、汽车、制造等有针对性地搭建团队。以前,云商场大多是提供云服务器、CDN、消息中间件等基础设施,但对于一些数字化转型的实体企业来说,更倾向于购买解决方案,将云服务器、硬件、API、AI、边缘计算等各种能力,一起打包购买,这种针对企业需求提供场景化产品和解决方案的商业模式,也让包含基础设施和应用服务的云原生成为云厂商的新机会。
4.自由度。企业在上云过程中,本能地不希望被某一朵云彻底绑定,无论是从降低成本的角度,还是容灾、安全的角度,将业务负载分别部署到不同云平台是大势所趋,而混合多云就要求应用能够在不同平台、公有云、私有云和混合云上分布式部署,并且可迁移,而基于 Kubernetes 和容器的一系列云原生改造,则能够更好地应对迁移问题。
换句话说,市场需要新的云计算,而云原生的各种技术和方法论,恰恰好满足了企业客户的需求,是云市场向前发展的必然潮流。
优质偶像云原生,需要怎样的业务能力?
大家可能会问,究竟怎样的云原生才算优质偶像呢?其实云原生的业务能力既有基本的唱跳 RAP(划掉)微服务、容器、DevOps,也有新近加入的 AI、安全等能力。这里帮大家简单梳理一下。
首先就是微服务。
就像偶像都得看脸一样,几乎每个云原生的定义都包含微服务,这可以说是云原生的安身立命之本。与微服务相对应的就是单体服务,即部署到某一台主机或一个进程里的服务,如果主机坏了,服务就不能用了。而微服务则是一组小型服务,每个服务都以一个独立进程的方式运行,仅实现一种功能。这样一来,开发更加敏捷,微服务的每个组件都可以独立自治,只迭代改进某个模块即可,二来系统容错性、可靠性也更强,一个或某个微服务出现故障时,其他微服务不会受到影响。
微服务早在 2014 年就被提出了,为什么伴随着云原生的走红才被看重呢?答案就是容器技术的发展。
微服务虽好,但运行在虚拟机上,虚拟机之间互相通信,形成错综复杂的关系,管理起来就非常麻烦,还会出现资源浪费的情况。而容器技术,就以集装箱的方式将一个应用的资源打包在一个容器内,再通过 Kubernetes 这样的容器编排器,就能够很好地管理资源与应用数据,成为微服务的最佳载体。2016 年,Kubernetes 在三大编排中胜出,成为目前最为主流的容器编排器,也是 CNCF 孵化的第一个“毕业”项目,成为云原生基础设施的事实标准。
随着微服务的增多,服务与服务之间需要通过内部网络或外部网络进行通信,如何管理这些服务,就带动了服务网格(Service Mesh)的出现。
Service Mesh 是轻量级的网络代理,提供一个代理实例 Sidecar,将对应的服务一起部署在环境中,并形成一种网络状的依赖关系,这种架构使得服务网格可以处理服务之间通信的任何问题,如负载均衡、服务发现等,同时将所有指标数据提供给运维人员观测,对流量进行控制,通过加密服务间通信、认证服务等实现更高的安全性。
所以,Service Mesh 也成为下一代微服务的架构基础。
微服务的开发离不开开发人员的努力,传统 IT 基础设施还需要开发人员考虑服务器等基础设施和底层资源,而云服务的普及,也推动了 Serverless 全托管计算服务的出现,Serverless 让研发运维与基础能力、基础设施、服务器解耦,消除了底层基础设施的开发和运维等工作,可以自动弹性伸缩,大幅降低了资源容量规划的难度,开发人员只需要聚焦在核心业务、编写代码即可。
除了开发环节,云原生也为 DevOps 带来了质的飞跃。DevOps(Development+Operations),弥合开发和运维之间的鸿沟,能够大大提高软件开发质量、缩短开发周期、确保持续交付。而相比于传统 IT 基础设施,云原生的容器技术和 Kubernetes 编排,让跨平台应用成为可能;Service Mesh 提升了运维和管控的灵活性;Serverless 则让运维对开发透明,根据资源自动扩缩容。DevOps 又反过来推动了容器技术的发展。
随着越来越多的应用和服务向微服务、容器化迁移,API 网关成为微服务集群的入口,连接微服务化的业务架构。而云原生的 API 设计理念,则是声明式 API—— 即需要向系统声明期望的运行状态,如果出现于期望状态不一致的情况,Kubernetes 这样的云原生工具就会根据声明做出对应的操作。
采用声明式 API,一旦系统中的组件出现故障,只需要查看声明状态,就可以确定需要执行的操作了。而传统的过程式设计,则是描述达到期望状态的一系列操作,出现故障往往要逐个排查哪一步操作出现了问题。显然,声明式 API 大大减少了开发和运维人员的工作量。
云原生技术的渐次落地,也影响到了许多传统的云计算技术,比如要满足原生弹性伸缩、智能运维、跨平台迁移等需求。传统的数据库也需要转变,以云原生的形式进行交付,于是出现了 DBaaS(DataBase as a Service,数据库即服务)。
企业在引入云原生的时候,本质是希望上云赋智,获得运行 AI 模型进行训练推理的能力,这就推动云厂商研发出基于云原生的 AI 系统,通过容器技术和编排调度能力,对机器学习的算法进行资源弹性调度,以满足 AI 对高性能算力的需求,提高 AI 训练推理的效能,让 AI 服务在云上应用时更加稳定高效。
上云之后如何确保安全,云原生也带来了截然不同的解题思路。相比传统安全机制的碎片化、复杂化,云原生安全体系模糊了服务器和硬件终端的物理边界,让零信任等技术趋势得以落地,可以实现统一的身份接入、统一的全局管理、统一的网络安全连接,覆盖企业上云的全流程、全方位、全环节,催生了云防火墙、网络微隔离、Web 应用防火墙、应用层鉴权、云安全中心等云原生安全产品和技术方案。
不难看出,云原生确实是一个宝藏优质偶像,代表了一种可扩展、高效,能够给企业数字化、云化带来非常多切实有效的助益。不过,要想成为顶流,可能还欠点火候。
虽不达亦不远矣:云原生的顶流之路还有几步?
成功卡位在客户的审美取向,又有很强的业务能力,云原生的爆红似乎指日可待。但要客观看到,云原生走向产业的过程中,还需要跨越一些现实问题。
一方面,云原生虽好,但规模落地尚待时日。
首先,不是所有行业和企业都看好云原生。公有云是云原生的基座,然而对于一些数据敏感的行业及企业来说,还是更倾向于在本地服务器或私有云上部署,比如金融、医疗,以及电信、政府 / 国防领域的开发人员使用公有云的比例就相对较低。
其次,实体行业的云原生改造需要心智培养。《剑指云端:引领企业 IT 未来的最佳实践》一书中曾提到,云迁移是一项艰苦的工作,数字原生的网飞公司,云迁移就用了整整七年,才完成全面迁移,过程中选择了云原生方法,几乎重构了自身所有技术方法,并从根本层面改变了企业的运营方式…… 将网飞全面改造成一家云原生企业,是一项费时费力的大工程,更何况大量非数字原生的实体企业。这些企业往往已经投入了大量资产建设物理机或虚拟机,要一下子迁移到云原生,需要在成本、组织结构、业务流程、人员培训、企业文化等各个方面一同转变,这个过程的风险和成本都是比较高的。
当然,这三年来我们也看到各个头部云厂商在积极地布局云原生生态,通过人才培养、行业共创、产教融合等方式,不断降低云原生的认知门槛。比如阿里云的云原生人才培养合作计划、华为云的全球化云原生交流平台 “创原会”、 腾讯云发布的云原生成熟度标准体系和“云原生开源白皮书“等,伴随着云原生的开源开放与标准化,去拓展企业的云原生实践,培养用户心智。
另一方面,白热化导致同质化,云原生竞争进入差异化赛道。
对于云厂商来说,在日趋同质化的市场竞争中需要新的热点来赢得新用户,而随着“云原生”成为市场新风口,很快又成为云厂商竞争白热化的焦点。
大量云原生技术都是开源的,头部云厂商投入研发,可以很快打造出自己的云原生产品,结合各自沉淀的大量云技术与产品,很容易就打造出了各类“最全云原生产品体系”,形成了乱花渐欲迷人眼的局面。
比如各家都会强调自己拥有微服务、容器化、Mesh、Serverless、DevOps 等云原生能力,能够满足企业对敏捷、弹性、可靠、低代码甚至无代码的需求。反而没有了记忆点,又进入了同质化竞争的怪圈,最后企业客户还是看谁家价格低、谁家渠道关系好选谁。
不过,近两年来,一些云厂商也已经开始打造差异化的云原生能力。比如从底层硬件角度,已经出现了专门针对云原生的芯片,充分释放服务器性能,从而降低用户使用成本;还有的厂商将 AI、知识计算等技术与云原生结合,推出持续优化云上应用 AI 的效能,加速行业 AI 落地,专门满足企业业务智能化的需要;还有的云厂商将自身的核心技术,如 AI、影视渲染、数据库、存储等,构建更具特色的云原生解决方案。
面对数字时代,非数字原生企业很容易产生隔阂和焦虑,云原生提供了一种迥然不同的数字本土思维,它根植于云、生长于云、应用于云、运行于云,与企业的转型焦虑紧紧胶合在一起,将这个原本抽象的概念推向了爆火。
可以预见的是,随着云原生更多地嵌入产业、云服务逐渐变得无处不在,未来有一天,我们将不会在意什么是云原生,因为所有的企业都是云原生企业,所有的云技术都是云原生技术。
在这之前,高速成长的云原生仍然值得我们关心,并期待。
本文来自微信公众号:脑极体 (ID:unity007),作者:藏狐
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。