云原生是什么?云原生怎么理解?

云原生是什么?云原生怎么理解?提及云原生,就必然要提到云计算。众所周知,按照云计算的服务提供方式,可以分为基础设施即服务(IaaS)、平台即服务(PaaS)、软件即服务(SaaS)三层。从IaaS到PaaS,再到SaaS,意味着云平台提供的工具和服务越来越多,购买云服务的企业所要做的开发相关的任务就越来越少,这一趋势为云原生的出现提供了技术基础和方向指引。

元原生是什么?  企业业务要想真正的云化,不仅要在基础设施和平台层面实现,而且应用本身也应该基于云的特点进行开发,从架构设计、开发方式、部署维护等各个阶段和方面重新设计,构建真正应“云”而生的“云原生应用”。 根据行业内的说法,云原生(Cloud-Native)概念的提出有几个版本,公认的是由Pivotal公司CTOMattStine在2013年首次提出。当然,这一概念被提出来是没有定义的,只是一系列技术的集合。 比如在2010年,WSO2公司CTOPaulFremantle在博客里也提到“CloudNative”的概念,不过他给出的相关解释包含了分布式、多租户、按需收费、弹性可伸缩这些特点,但这些主要是云计算服务的普遍特性,还不够细化。 对于云原生概念,MattStine在2015年发表的《迁移到云原生应用架构》的一书中列举出以下技术和特点:十二因素,微服务,子服务敏捷基础设施,基于API的协作,反脆弱性。

元原生是什么?

后面这家公司的另外一位技术大牛KevinHoffman在《Beyondthe12factorApp》一书,基于原十二要素新增了三个新要素,即云原生十五要素。 对于应用开发领域的从业者,这些要素想必都非常熟悉,相当于是一份SaaS应用的最佳实践标准,可以适用于任何语言开发的后端应用服务,将开发流程自动化和标准化,降低开发者的学习成本。 到2017年,MattStine再次将云原生架构归纳为模块化、可观察、可部署、可测试、可替换、可处理6特质;而Pivotal官网则给出了云原生的最新定义,概括为4个要点:容器、微服务、DevOps、持续交付。 另外一个比较正式的云原生定义是由云原生计算基金会(CNCF)提出的。在2015年,CNCF成立之初,这一组织将云原生定义为包括:容器化封装、自动化管理、面向微服务;到2018年,CNCF又把服务网格(ServiceMesh)和声明式API给加到云原生的定义中来。 从云原生的多个定义来看,这一概念在不断完善和更新,不同组织和企业对于云原生的侧重点也有所不同。根据行业专家的总结,现在我们已经能够看到云原生的一个全貌特征:

元原生是什么?

(图源:王银利《云原生体系下的技海浮沉与理论探索》)

  因此整体来说云原生是一套在云端构建和运行软件应用的方法,可以归结为一套技术方法论。“云原生”的“Cloud”,代表了软件应用是放在云端而非传统的IT设备中,而“Native”则代表软件应用从一开始设计,就是根据云的环境,采用云端的技术,充分利用云平台的弹性伸缩和分布式特点,最终在云端高效、稳定、安全运行。 从本质上来说,云原生是架构根植于云,基于云上开发、部署、维护的一套技术方法体系。

术语库

SD-WAN是什么?

2022-6-13 14:10:53

术语库

Docker是干什么的?Docker主要用途介绍

2022-6-20 14:39:57

相关推荐