# 今天的云原生
即使“云原生”的提出已经有一段时间,但不少人还是会有这样一个问题:究竟什么是云原生?或者说云原生的确切定义是什么?
实际上,当我们接触到很多云原生的开源技术和产品之后,会逐渐发现一个现象——云原生本质上其实并不是一个非常确切的物体。也就是说,云原生其实不存在什么具体定义,它指的是一个不断演进的过程。与其谈云原生的本质,不如我们将它理解为一套愿景。在未来云的时代,我们的软件或者应用是天然的生于云上,长于云上。之所以会出现这样一种现象或这样一个事实,正是因为云计算能够最大程度地去帮助这些软件降本提效,释放软件本身最大的业务价值。这才是云原生真正想要去做的一件事情,所以它并不是某一项具体的技术,也不是某一个方法,更不是某一个具体的科研项目。
# 云原生实际作用
第一个是提升效率,比如说研发效率、交付效率、运营效率。例如我的应用本身通过容器实现了不可变基础设施的这样一套理念,那么它的交付就可以非常简单,我只需要做镜像,交付镜像后它就可以运行在每一个地方;再比如说我们的运维,当你的软件本身已经实现了自运维,那么它的运维的难度和成本一定是降低的,所以我们一定能够借助云的能力去提效。
第二个是降低成本,这里包括了资源成本,也包括了人力成本。比如说通过 Kubernetes 或者说通过容器这样的项目,我的应用可以更好地、更多地去集成云服务,通过云服务来减少运维成本和人力投入,这些都是很明显的成本降低。再比如说我的应用通过云原生实现了上云,又通过云原生架构,可以很快速地进行资源交付和更新的模式,让整个应用的资源成本也变得很低,这同样也是通过云原生技术,让应用能够更好地使用到云的本质能力的一种非常好的体现和实践。
总体而言,你会发现这一套云原生的方法其实是一个很完善的闭环,先不断去地看、不断地去探索如何利用云的特性帮助用户去提效降本,然后把这一系列的方法或者这一系列的思想,总结沉淀成为云原生的概念和方法论,再通过一系列相应的架构和对应的开源项目将其实现,最后再让用户能够去使用这些技术,从而达到释放云计算红利的本质目的。
云原生服务的发展
伴随着云原生整套体系的不断发展,我们会看到,云服务在大量的、频繁地向云原生生态去靠拢,甚至说带来一些革命性的影响。
比如说,今天阿里云的云原生数据库,它实际上就是基于云原生提到的核心的思想理念,比如说无限弹性、高度可扩展,提出了一个全新的数据库架构,使得数据库的本身非常容易去扩展,能够去应付极高的、极为苛刻的流量和海量的数据处理需求,满足今天现代互联网应用的数据库使用的诉求。
再比如说阿里云基础设施,它能够给我们带来极致的资源使用效率,减少了很多层的虚拟化的性能损耗,让容器本身具有弹性,非常容易地去运维部署和管理,并且通过安全容器,通过更强的安全边界,保证容器之间的隔离,使隔离性是足够的。它能够为容器带来极致的物理级别的网络存储和计算性能,这是非常重要的,也是我们的应用通过云原生的理念去使用云计算服务的一个非常典型的例子。