关于什么是云原生
华为云云原生2.0官方平台及相关资讯:
官方平台:https://www.huaweicloud.com/about/cloudnative2_0.html
云原生早餐会(大佬们聊云原生2.0,非常有趣):https://www.huaweicloud.com/about/cloudnative2_0/breakfast_liveone.html
追根溯源——关于什么是云原生:
https://xw.qq.com/partner/vivoscreen/20210719A0DXL3/20210719A0DXL300?showComments=0&isNews=1
云原生(Cloud Native)的概念,最早是由Pivotal于2015年提出的,但是即使到了2019年上半年,国内对其的关注依然相对有限。直到2019年9月,“云原生”才突然一跃成为行业最热门的词汇。
不过,时至今日,业界对于云原生的定义并没有完全统一,在云原生不断演进的过程中,衍生出了包括Pivotal、CNCF(Cloud Native Computing Foundation,云原生计算基金会)、十二因子应用等多个版本的定义。
同时,还有不少人将云原生与容器或基于Kubernetes的微服务混为一谈。还有云原生技术、云原生产品、云原生架构、云原生理念等看起来意思相近的词汇。那么云原生到底是什么?云原生会对我们的应用开发产生什么样的影响呢?
云原生可分解为“云”(Cloud)和“原生”(Native)两个词。这里还隐藏了一个词——“计算”(Computing),因为云原生本质上是一种与云计算(Cloud Computing)相同的计算方式,因此通常我们在说云原生的时候,实际上是暗指云原生计算(Cloud Native Computing)。
云计算的概念最先由戴尔公司于1996年提出。2006年,亚马逊公司率先推出了弹性计算云(Elastic Compute Cloud,EC2)服务,随后越来越多的企业开始逐步接受云计算这一概念,并将应用逐步迁移到云端,享受这一新型计算方式带来的技术红利。
2009年,阿里巴巴率先开始研制具有完全自主知识产权的云产品——飞天操作系统,由此揭开了中国云计算的序幕。
之后,Pivotal于2015年明确地提出了云原生的概念,指出云原生是一种可以充分利用云计算优势构建和运行应用的方式。
在经过CNCF的修改后,最新版云原生的定义为:
云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统做出频繁和可预测的重大变更。
上面三个主流的定义,分别从顶层架构原则、计算模型和代表技术的角度,对云原生进行了描述。这些定义的共同点是它们都将云原生看作一种新的计算方式,让应用能够充分使用云的计算优势。
进一步分析这些定义所体现出的技术观点,我们可以达成这样一个共识:只有结合云原生所提供的云服务,改造应用的架构,才能够更好地使用云原生技术,更好地构建弹性、稳定、松耦合的分布式应用,并解决分布式复杂性问题。
此外,对架构的改造还意味着相关的开发模式、交付方式、运维方式等都要随之改变,比如,采用微服务架构重写应用,用声明式API和自动化工具升级运维方式,等等。简单来说,云原生使得整个软件的生产流水线都发生了巨大的变化,而具体的变化程度又取决于企业对云原生的使用情况。
实际上,云原生的范围还不止于此。要正确实施云原生这一新计算模式,还需要企业的IT决策者、架构师、开发人员与运维人员正确理解和应用云原生的理念,利用合适的云原生技术及产品。有太多的反例可以证明,仅靠单边的技术升级是很难让云原生升级产生价值的。
关于CNCF - 云原生计算基金会:
<https://blog.csdn.net/yamaxifeng_132/article/details/113183081>
- 点赞
- 收藏
- 关注作者
评论(0)