阿里云高级研究员蒋江伟:什么是真正的云原生?

图片

蒋江伟,__阿里云高级研究员数据库

而今,云原生成了耳熟能详的热门词,彷佛不提云原生就落伍了,加入 CNCF 也成了云厂商引觉得傲的技术优点。安全

咱们也看到各类云原生的定义,有来自 CNCF 的“微服务+容器+持续交付+DevOps”,也有来自不一样云厂商的说法。2020 年 9 月,阿里云成立了云原生技术委员会,今天我就从云计算的初心尝试谈谈什么是真正的云原生。服务器

狭义的云原生

让咱们先回顾云原生的由来。架构

云计算兴起以后,以 Docker 为表明的容器浪潮,席卷业界,以 DevOps 和标准化交付而广受青睐。在此背景下,Google 创造性地提出了云原生的概念,并发布了开源编排工具 Kubernetes,从统一部署和标准化的角度切入,其后更成立了 CNCF 基金会,成功地杀出了一片天地。并发

2020 年 12 月,CNCF 大使 Ian Coldwater 在社交媒体上说:“Kubernetes 现已弃用了对 Docker 的支持。您须要注意这一点,并做好相应的规划。这会搞坏您的集群。”框架

这说明云原生战略得到了历史性的进展。从这个角度来看,将云原生等同于容器和服务网格,是早期对云原生狭义的理解。less

广义的云原生

那么,什么是广义的云原生呢?因云而生的软件、硬件、架构,就是真正的云原生。运维

咱们认为,云原生更多应该从客户应用的视角来看,部署到云上的应用,必须用到了只有大规模公共云实践才能提供的三类能力的一类或多类,即弹性、API 自动化部署和运维等特性;服务化的云原生产品,如 RDS、EMR 等;因云而生的软硬一体化架构。这,就是云原生。分布式

首先,云原生应用是相对线下传统企业IT物理机上的环境而言,要用云的方式来部署和管理应用,充分利用云的供应效率,要全球部署、即开即用、按量付费。微服务

客户就近获取云的能力,就是所谓弹性,咱们去年出过一本书,书名叫《弹性计算 无处不在的算力》,讲的就是背后的原理,要具有这种极致的弹性才是云原生。在云上提供的 Kubernetes,是经过自动化部署和运维的 API 标准化,实现了云原生。

其次,今天咱们已经看到云原生数据库、云原生大数据、云原生容器、云原生中间件、云原生安全等等概念,这都是在云上能够随意获取的服务化云原生产品,是传统线下没有的服务,有助于得到性能和成本上的增强,这就是云原生

图片

特别值得一提的是以神龙架构为表明的软硬一体虚拟化。虚拟化经历了纯软件虚拟化、通用硬件虚拟化、到如今的软硬一体化虚拟化。

经过计算存储的分离,使用专用的神龙芯片,对虚拟化进行加速,从而达到超越物理服务器的高性能。做为云计算架构的底层,全部中间件和应用层都能从中得到性能的收益,而无需进行任何代码和架构的修改。

此外,神龙架构支撑的是同一套资源架构并池的资源能力,包括 ECI(Serverless 容器)、VM、裸金属等,从而让全部的资源可以统一调度,进而实现最深的弹性。这也是业界第一次实现了统一架构和统一资源调度,被视为中国云厂商的重大技术贡献。

从这种意义上来讲,神龙架构就是因云而生,是典型的云原生。简单而言,若是没有云计算的大规模部署场景,神龙的优点就不能发挥得淋漓尽致。

因此,云原生的初心是在云上的原生,若是缺少云的基本特征,必然不是云原生。极端而言,若是你本身买了两台服务器,放在办公室,上面部署了容器,而后用 Kubernetes 来管理,那就不是云原生,由于缺少弹性、API 自动化部署和运维的能力,连云都不是

图片

CNCF 更多的是倡导一个系统要用什么组件进行架构,这样才能实现互联网架构和运维能力,实现快速迭代、灵活扩展、高效运维。而这些能力的发挥须要这些架构框架基于云,二者结合则为云原生。

不少人会问,某个开源软件是不是云原生?这个要看它的架构。以开源数据库为例,若是其架构上仍是针对传统的单机和小规模,那就不是云原生;若是保持开源的接口兼容性,同时作了云原生改造和从新设计,运维和管控都充分利用了云的基础能力,那就是云原生的软件和服务,如阿里云的 PolarDB 数据库。

多云和混合云加速了云原生

历史的发展老是曲折的,由于相信因此看见,也老是一波三折。在盘山公路上前行时,每每眼中只能看到有限的视野

图片

为达到更高的性价比、容错和效率,业界产生了多云和混合云。多云是客户将业务负载分别部署到不一样的公共云厂商,而混合云更可能是客户将业务负载部署到公共云和专有云上。

多云是竞争的产物,虽然亚马逊和阿里云一直认为用户用一家的云就够了。而混合云的产生角度不一样,它是为了知足客户分步上云的意愿,同时知足部分行业监管合规的需求,而构建的一种云架构。

不管是多云仍是混合云,云厂商为了下降业务分布式部署的难度,让客户更容易接受,都会敦促客户对业务进行单元化改造,由于 Kubernetes 解决了标准化部署和迁移的问题。

同时除了 Kubernetes 和容器以外,每每涉及到使用公共云带来的弹性、加速等等服务能力,以及数据库、大数据、音视频等系统的云原生改造。可见,Kubernetes 加速了狭义的云原生能力。

云原生芯片

从计算芯片的角度而言,云计算带来了全新的应用场景,从而对 CPU 提出了新的需求,也就是云原生芯片。 

好比阿里云的神龙芯片,就是云原生芯片。它是整个设备的核心,由于经过它可让神龙服务器完彻底全具备虚拟机的特性,包括虚拟机的接口。

基于神龙芯片的神龙 MOC 卡在整个架构中具备重要做用,它具有丰富的管理接口和对外数据接口,能够帮助咱们实现弹性裸金属服务器具有的这些功能。

CPU 的多元化正在逐渐成为现实。首先是英特尔的对手 AMD 的崛起,虽然都是 x86 体系,但其芯片在性价比高以外,性能和特性也日新月异;其次,x86 架构以外的发展很是迅猛,除 Ampere 的 ARM 服务器芯片外,自研的 ARM 体系正成为不少云厂商的选择。

图片

AWS 的 Graviton 2 自研芯片使用 64 位 ARM Neoverse 内核定制而成,设计思路是多核加每核单 Thread 负载,每一个内核都旨在经过尽量多的、彻底独立的内核来交付实际工做负载,力图成为最节能的处理器。

微软也在设计一款用于数据中心的 ARM 处理器,这是微软的重大战略举措,微软认为,本身的芯片更适合某些需求,更具成本和性能优点。

云原生 CPU 正呈现一些共有的特性:主频不须要特别高、功耗要特别低、独立运行的核、多核架构能更好地支持服务网格的应用、有成熟的软件生态等等。

用云原生的思惟用好云原生架构

对于云计算的用户来讲,理解什么是云原生尤其重要。不是简单地使用容器来定义本身的系统,而是在设计、开发、部署等周期中,使用原汁原味的云原生系统,将会带来巨大的竞争优点,充分享受云计算的红利。

云原生不只是实践,更是一种理念,带来的是时代变革。开发人员的开发环境也要生在云上、长在云上。使用相似无影这样的远程工具,让产品设计文档、开发调试环境、部署工具、测试过程、POC 验证、资源消费等等,所有基于云来进行。

因此,云原生带来的是思惟的变化,是文化的变化,是新时代的生产力,远远超越了 CNCF 定义的 Kubernetes 标准接口,是将来使用云的标准方式。 

什么是真正的云原生

咱们很幸运,咱们正亲历一个迈入云时代的历史性进程。 

多年之后,新一代的新新人类,他们会更幸运,他们接触的一切计算环境都是云原生的。他们天生就会认为,云计算资源是无处不在、取之不尽、用之不竭的,他们不会关心云资源在哪里、有多少。就像今天咱们使用自来水同样,没有人会费劲心思考虑水从哪里来

图片

因云而生的软件、硬件、架构,就是真正的云原生;因云而生的技术,就是云原生技术。

相关文章
相关标签/搜索