简介: 云原生是近几年最火爆的技术热词之一,几乎所有的云计算产品都会或多或少跟云原生发生关联,云原生正在重塑整个软件的生命周期。但到底什么是云原生?云原生带来的最大的技术创新和未来机会是什么?以及,围绕云原生,是否可以构建出一套云上的开发和运维体系,打造新一代研发平台,实现研发效率的最大化?
作者 | 叔同
来源 | 阿里技术公众号
云原生是近几年最火爆的技术热词之一,几乎所有的云计算产品都会或多或少跟云原生发生关联,云原生正在重塑整个软件的生命周期。但到底什么是云原生?云原生带来的最大的技术创新和未来机会是什么?以及,围绕云原生,是否可以构建出一套云上的开发和运维体系,打造新一代研发平台,实现研发效率的最大化?
以下内容整理自阿里云云原生应用平台负责人丁宇(叔同)在阿里内部的技术分享,希望帮助技术同学更好地理解云原生。
丁宇(叔同)
我经常在电梯里听见一些同学在讨论云原生,大家会问云原生为什么这么火。我们将时间线倒推20年,当时最流行的是企业软件架构,企业使用ERP、CRM做信息化改革。十年前,消费互联网开始崛起,那个年代最流行的是互联网技术;而今天是产业互联网盛行的时代,在云计算快速发展的背景下,企业需要加速数字化创新,打造数字韧性能力,云原生应运而生。
一 因云而生的云原生
什么是云原生?这是很多同学都关心的问题。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统做出频繁和可预测的重大变更。
云原生是一种新的计算方式,让应用能够充分使用云的计算优势。只有结合云原生所提供的云服务,改造应用的架构,才能够更好地使用云原生技术,以及更好地构建弹性、稳定、松耦合的分布式应用,解决分布式复杂性问题。此外,对架构的改造还意味着相关的开发模式、交付方式、运维方式等都要随之改变,比如,采用微服务架构重写应用、用声明式 API和自动化工具升级运维方式等。简单来说,云原生使得整个软件的生产流水线都发生了巨大的变化,而具体的变化程度又取决于企业对云原生的使用程度。
那么,云原生和云计算的区别是什么?我们认为,云原生是云计算的再升级。云计算的优势是资源、计算、存储、网络的池化,这种池化带来的好处是大规模的集约性管理,弹性、分布式无处不在,它可以用一种API进行运维管理,从而实现管理的自动化。今天,云原生技术只有跟云结合起来才能实现它的使命,去构建那些具备高弹性、可扩展、松耦合、容错性好等特性的系统。
云原生和云计算结合在一起是什么?就是云原生产品。今天,阿里云对于云原生有一个定义,叫生于云、长于云,因云而生的产品、技术、软件、硬件、架构,我们认为它都是云原生。以阿里云为例,