指托管在外部数据中心并按使用量付费提供给用户的软件基础设施。公司不必为昂贵的服务器付费并进行维护。相反,他们可以使用云提供商提供的按需云原生服务,例如存储、数据库和分析。
云原生是在云计算环境 中构建、部署和管理现代应用程序的软件方法。CNCF 将不可变基础设施、微服务、声明式 API、容器和服务网格列为云原生架构的核心技术。
云计算 vs 云原生云计算是云供应商按需提供的资源、基础设施和工具。
云原生是一种使用云计算模型构建和运行软件程序的方法。
我的观点:
云原生依托于云计算环境云原生的价值不在于搭建各种云环境,企业内再怎么搭建私有云、K8S集群、工具链等,也赶不上公有云厂商的一键运维云计算的优势在于外部数据中心、按量付费、免运维、快速部署而云原生的优势就是在云计算环境上、借助云计算环境上的资源、基础设施等快速运维应用,企业内的IT团队将更多精力放到业务的实现,而无需过多在基础设施上反复摩擦为了避免云计算厂商技术锁定,推荐使用云原生业界通用的技术,如Docker、K8S、Istio、Jenkins等如银行、政府等涉密项目,可以联合云计算厂商使用专有云环境,充分发挥云计算的优势 云原生应用程序开发描述了开发人员如何以及在何处构建和部署云原生应用程序。开发人员采用特定的软件实践来缩短软件交付时间,并提供满足不断变化的用户期望的准确功能。一些常见的云原生开发实践包括CI、CD、Devops、Serverless。
容器(如Docker)为更轻量的虚拟化技术,将应用打包成容器,能够保持多环境运行的一致性,快速部署迁移。K8S 可以理解为负责集群节点编排、容器编排的平台,管理集群中的部署节点、容器的部署与调度编排、容器间的访问路由编排等。
Service Mesh服务网格(如Istio)可以简单理解为K8S容器管理平台之上的微服务管理平台,不侵入代码(跨编程语言),通过Sidecar(伴生容器)的形式将原本微服务框架中的基础功能(服务注册发现、服务路由、流量分发、熔断、限流、监控、安全等)提取到基础设施层,但额外引入的Sidecar会增加集群的资源损耗、请求延时等。
Serverless无服务器无服务器计算是一种云原生模式,云提供商完全管理底层服务器基础设施。开发人员之所以使用无服务器计算,是因为云基础设施会自动扩展和配置以满足应用程序要求。开发人员只需为应用程序使用的资源付费。当应用程序停止运行时,无服务器架构会自动移除计算资源。
参考:
https://aws.amazon.com/cn/what-is/cloud-native/