云原生,Cloud Native 是一个组合词—— Cloud 代表云计算,应用位于云中;Native 表示应用从设计之初即考虑到云的环境,原生为云而设计,在云上以最佳姿势运行,充分利用和发挥云平台的弹性+分布式优势。
随着虚拟化技术的成熟和分布式框架的普及,在容器技术、可持续交付、编排系统等开源社区的推动下,以及微服务等开发理念的带动下,应用上云已经是不可逆转的趋势。摈弃传统的方法,在架构设计、开发方式、部署维护等各个阶段和方面都基于云的特点,重新设计,从而建设全新的云化的应用,即云原生应用。
Pivotal公司的Matt Stine于2013年首次提出云原生(CloudNative)的概念,其最新的解释将云原生概括为4个要点:DevOps+持续交付+微服务+容器。
2015年云原生计算基金会(CNCF)成立,最初把云原生定义为包括:容器化封装+自动化管理+面向微服务;到了2018年,CNCF更新了云原生的定义,加入了服务网格(Service Mesh)和声明式API两个要素。