作者 | 狄安
May 31, 2022
3,235 字 | 大约需要 6 min
技术时代永远不缺少概念,从虚拟化、云计算、公有云、私有云和混合云,到SaaS、IaaS、PaaS、DaaS、CaaS、FaaS 再到 Serverless,这一路发展下来似乎永远不缺各种眼花缭乱的名词和技术导入。而时下流行的云原生,作为在开源技术栈上绽放出的一朵鲜艳的花,随着云时代的降临,一时间惊艳天下。
到了今天,感觉只要一谈到云计算技术,如果不贴上“云原生”的标签,不搬出一下和 CNCF 基金会的渊源,就好像自己的技术落伍了。那么,就让我们来聊一聊这个云原生到底是什么?在开源技术栈上,又究竟是怎样产生云原生的?

云原生是什么?
1. 云原生的十二要素特征
2. 开发运维一体化(Devops)
3. 微服务 (MicroService)
4. 持续交付 (Continuous Delivery)
5. 敏捷基础设施(Agile Infrastructure)
(注:云原生的12要素特征主要指代码库,依赖,配置,后端服务,编译发布运行,进程,端口绑定,并发,可任意处置性,开发平等,日志,管理进程)
不仅如此,除了上述的这些定义之外,Matt还选择一套康威定律(Conways Law)来提出对于组织的要求,以及根据业务变化可以对公司进行组织和业务重塑的能力要求。
企业要想云原生建设成功,需要的不仅是一套可以实现云原生核心价值的技术架构,更需要进行满足云原生目标的一次组织变革。那么云原生的组织目标是什么呢?对此,早在半个世纪前,有个工程师叫 Melvin Conway,提出了一个论断:
Organizations which design systems are constrained to produce designs which are copies of the communication structures of these organizations. Conways Law
其中文意思可以解释为:那些设计系统的组织,其产生的设计最终会被限制在等同于其组织之内、组织之间的沟通结构。说白点就是:有什么样的组织结构就只能设计出什么样的技术架构。而后来这个论断被Brooks在他写的同时每个程序员都应该值得去拜读的《人月神话》(1975年版)中总结为“康威定律”。
所以,云原生究其本质,与其说是一种技术体系,不如说是一个技术理念。简而言之,我们身处什么样的环境,就应该采用和那个环境所相适应的方法来存在。从IT基础架构的角度来讲,在云计算成为这个时代的普遍选择之后,每一个企业就该采用和云时代相一致的技术架构,同时进行和云匹配的IT治理及开发方法,让一切IT应用生而为云。
云原生既包含技术(微服务,敏捷基础设施),也包含管理(DevOps,持续交付,康威定律,组织和业务重组等),还是企业管理方法的集合。而关于云原生的核心价值主要体现在于以下四个方面
开源软件栈实现了基于任意公有云私有云或混合云的部署,从而避免了单一供应商依赖;
从原来电脑上的几个用户节点,可扩展到数以万计的自愈式(自诊断,自恢复)多租户节点它的核心基石经历了:服务器,虚拟机,构建包,容器,集群化容器等阶段,从而实现无限且弹性扩展的可能性;
通过将应用分解为已明确说明依赖性的一系列微服务来提升灵活性,可维护性,增强灵活性与可维护性,从而让应用发布随需而变。
通过一个集中编排的动态管理和治理微服务的过程,从而使资源的使用更加来优化和高效。
从 Pivotal 公司为了更好的销售它的产品包装出了云原生的概念并建立一系列的框架和标准,但这个概念也并不是一夜之间直接从地底下冒出来。而在各种纷繁复杂,有时令人无所适从的各类技术名词里,如此特别的云原生,它又经历过怎样的历史演变历程呢?就让我们且来看一下它的前世今生和未来。
云原生的历史回溯







K8s为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等整一套功能,但它并非一个传统的 Paas,不限制应用运行环境,不区分应用和服务这两个概念,本质上可看作是基于容器技术的 mini-PaaS 平台,因为容器本身就是可移植的,所以 Kubernetes 容器集群也能跑在私有云、公有云或者混合云上面。Kubernetes 属于主从的分布式集群架构,包含 Master 和 Node:Master 作为控制节点,调度管理整个系统;Node 是运行节点,运行业务容器。
但作为最先出发的 Pivotal 由于在技术上沉迷于过于笨重的Cloud Foundry架构体系并且行动缓慢导致失去先发优势。而谷歌因为不满Cloud Foundry基金会的一些做法,也就在同一年于Linux基金会下发起建立了一个新的云原生基金会以开源的方式来运营整个生态。其使命就是创造和推动采用新的云原生模式,来助力企业在云计算模式下更好的构建可扩展的应用程序。这也就是当下已经成为云计算时代的主流且如日中天的 CNCF基金会。

CNCF基金会以开源的信仰和云原生的理念,一下吸引了各路全球的顶尖开发者、众多企业用户和软件厂商等参与其中。按其最新的网站数据显示,截至本文写作日已经由超过18.3万的社区参与者,15.9万的代码贡献者,810个企业会员,141个认证的Kubernetes平台,成为当之无愧的云原生领导者。而国内目前流行的云计算技术提供商几乎都是从开源Kubernetes技术获得技术灵感,并成为开源云原生下的技术套利者。
云原生时代离不了开源和开源软件栈

云原生推动企业数字原生化

在这样的一个趋势下,对于企业来说,要做的也许不仅是数字化转型,而更是一个以云原生的理念来进行企业的数字原生化。 而不管技术如何迭代,我们也将始终看到康威定律是大多是企业的宿命。

关于 OpenTEKr-Flossway 博客共同体
Flossway最初是由 Tisonkun 建立的一个有关开源内容的博客。2022年OpenTEKr 社区和 Flossway 共同发起博客创作共同体的倡议,进行和开源内容相关的图文原创。欢迎更多开源研究爱好者加入共同体来为开源而写作,讨论和宣传开源理念。
Github 地址:
https://github.com/flossway/flossway
微信公众号: Opentekr 开源星系
网站地址: www.opentekr.org(尚在建设中)
期待大家的加入!邮件联系 contributor@opentekr.org 或者微信 OpenSourceGalaxy,开源内容共创,因你而更精彩!
/// 关于作者
狄 安
OpenTEKr 创始人 & 开源布道者
企业级软件领域的连续创业者,开源领域的独立观察者。现从事开源和数字化领域的研究和布道,及开源和商业结合的探索与实践。

/// 关于 OpenTEKr ///
OpenTEKr 是一家关于致力于开源技术和应用推广的社区,主要研究开源文化和现象,宣传开源理念,探索开源与商业结合的社区共同体。基于「众有、众享、众治」的信念,我们依循「自由与规则同在,免费与商业共生」的原则,憧憬科技普惠的美好未来,帮助个人和组织通过变革性的技术创新来成就其远大抱负。





