“云原生”是什么?使用云原生架构的好处有哪些?

30 阅读2分钟

云原生应用一般是指原生支持云部署,并能充分利用和发挥云平台能力的应用程序。它一般有3大特征:

容器化封装。 容器化封装是指以容器为基础,应用程序封装在容器之中,在容器里运行,实现资源的相对隔离与容器镜像的重复使用。

面向微服务。 面向微服务是指把一个大的功能应用拆分成一个个功能单一、相对独立、相互解耦的微应用,微应用之间通过接口进行通讯。

动态管理。 动态管理指通过一个统一的编排工具,比如K8S,来动态的管理和调度这些微服务。

后来随着云计算的发展,CNCF云原生计算基金会又增加了另外2条:声明式的API、服务网格

如果某个应用符合以上的几点特征,就可以称为云原生应用。因为云原生应用天生的各种优势,越来越多的企业开始拥抱云原生,这就要求企业有一个新的技术架构使之能更好的利用云原生技术。而这种利用云原生技术让业务更敏捷、成本更低、应用更强的技术架构,就可以成为云原生架构。它利用容器技术,基于微服务,借助敏捷方法,通过DevOps路程来实现应用的持续交付。

所以,云原生架构 = 微服务 + 容器化 + DevOps + 持续交付

使用云原生架构带来的好处很多,归纳起来大概可以有以下几点:

快速。 天下武功,无坚不摧,唯快不破!云原生架构使用敏捷开发和DevOps,不但可以让企业快速的开发产品,自动化部署产品,同时还能持续的更新产品,让产品跟得上需求,甚至是引导需求,让企业立于不败之地。

弹性扩展。 云原生架构天生具有云计算的特点。它的资源是可以按照实际情况进行伸缩,这样不但提高资源的利用率,也大大降低了企业成本。

安全与强壮。 云原生架构依托于容器编排工具(K8S)与微服务的组合,应用就拥有了自动恢复能力、容错能力、故障隔离能力,让应用时刻处于可用的状态。

屏蔽底层差异。 因为使用了容器化技术,应用运行于容器之中,应用就不需要考虑底层硬件的差异,只要是能运行容器镜像的硬件都可以运行程序,大大简化了开发工作量。同时对运维人员也非常友好,不需要再为环境问题而苦恼。