认知篇 - 2021你还不懂什么是云原生

206 阅读2分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

作为一名开发者,在如今这个云计算盛行的时代,如果不懂云原生,怎么去卷。通俗的讲就是应用为云而生,可以轻松的跑在云上,能够充分利用和发挥云的优势。

概念

云原生是一种构建和运行应用程序的方法,是一套技术体系和方法论。云原生(CloudNative)是一个组合词,Cloud+Native。Cloud表示应用程序位于云中,而不是传统的数据中心;Native表示应用程序从设计之初即考虑到云的环境,原生为云而设计,在云上以最佳姿势运行,充分利用和发挥云平台的弹性+分布式优势。

组成

  • 云原生

    • 微服务

      可独立部署、彼此间能够相互通信

    • CICD

      • 持续集成

        自动化发部程序,开发即运维

      • 持续发布

        频繁发布,快速交付,快速反馈,降低发布风险

    • 容器化

      Docker是最常用的容器引擎,K8s、服务网格等都是为容器化服务的

云计算与云原生

云计算是云原生的基础,没有云计算,云原生就不存在。

云计算将整个系统划分为三层,即基础设施即服务(IaaS)、平台即服务(PaaS)、软件即服务(SaaS)

真正的云化不仅仅是基础设施和平台的变化,应用也需要做出改变,云原生就是让应用去适应云计算的发展,不能单单是基础设施和平台在进步,应用也需要进步。这就需要摈弃传统,在架构设计、开发方式、部署维护等各个阶段和方面都基于云的特点,重新设计,从而建设全新的云化的应用,即云原生应用。

总结

云原生程序就是可以实现自动化发布,借助容器化部署在公有云、私有云或者是混合云上的微服务程序,可以实现频繁发布,快速反馈,快速升级的程序。