工作中用了容器?熟悉这些出自云原生计算基金会的项目吗?
随着用容器来开发应用的实践变得流行,云原生应用也在增长。云原生应用的定义为:
“云原生技术用于开发使用打包在容器中的服务所构建的应用程序,以微服务的形式部署,并通过敏捷的 DevOps 流程和持续交付工作流在弹性基础设施上进行管理。”
这个定义提到了构成云原生应用的不可或缺的四个元素:
- 容器
- 微服务
- DevOps
- 持续集成和持续交付 (CI/CD)
尽管这些技术各有各自独特的历史,但它们之间却相辅相成,在短时间内实现了云原生应用和工具的惊人的指数级增长。这个云原生计算基金会(CNCF)信息图呈现了当今云原生应用生态的规模和广度。
云原生计算基金会项目
我想说,瞧着吧!这仅仅是一个开始。正如 NodeJS 的出现引发了无数的 JavaScript 工具的爆炸式增长一样,容器技术的普及也推动了云原生应用的指数增长。
好消息是,有几个组织负责监管并将这些技术连接在一起。 其中之一是 开放容器倡议 (OCI),它是一个轻量级的、开放的治理机构(或项目),“它是在 Linux 基金会的支持下形成的,其明确目的是创建开放的行业标准的容器格式和运行时。” 另一个是 CNCF,它是“一个致力于使云原生计算普及和可持续发展的开源软件基金会”。
通常除了围绕云原生应用建立社区之外,CNCF 还帮助项目围绕其云原生应用建立结构化管理。CNCF 创建了成熟等级的概念(沙箱级、孵化级或毕业级),分别与下图中的“创新者”、“早期采用者”和“早期大量应用”相对应。
CNCF 项目成熟等级
CNCF 为每个成熟等级制定了详细的标准(为方便读者而列在下面)。获得技术监督委员会(TOC)三分之二的同意才能转为孵化或毕业级。
沙箱级
要想成为沙箱级,一个项目必须至少有两个 TOC 赞助商。 有关详细过程,请参见《CNCF 沙箱指南 v1.0》。
孵化级
注:孵化级是我们期望对项目进行全面的尽职调查的起点。
要进入孵化级,项目除了满足沙箱级的要求之外还要满足:
- 证明至少有三个独立的最终用户已成功将其用于生产,且 TOC 判断这些最终用户具有足够的质量和范围。
- 提交者的数量要合理。提交者定义为具有提交权的人,即可以接受部分或全部项目贡献的人。
- 显示出有大量持续提交和合并贡献。
- 由于这些指标可能会根据项目的类型、范围和大小而有很大差异,所以 TOC 有权决定是否满足这些标准的活动水平。
毕业级
要从沙箱或孵化级毕业,或者要使一个新项目作为已毕业项目加入,项目除了必须满足孵化级的标准外还要满足:
- 至少有两个来自组织的提交者。
- 已获得并保持了“核心基础设施计划最佳实践徽章”。
- 已完成独立的第三方安全审核,并发布了具有与以下示例类似的范围和质量的结果(包括已解决的关键漏洞):https://github.com/envoyproxy/envoy#security-audit,并在毕业之前需要解决所有关键的漏洞。
- 采用《CNCF 行为准则》。
- 明确规定项目治理和提交流程。最好将其列在
GOVERNANCE.md
文件中,并引用显示当前提交者和荣誉提交者的OWNERS.md
文件。- 至少有一个主仓的项目采用者的公开列表(例如,
ADOPTERS.md
或项目网站上的徽标)。- 获得 TOC 的绝大多数票,进入毕业阶段。如果项目能够表现出足够的成熟度,则可以尝试直接从沙箱级过渡到毕业级。项目可以无限期保持孵化状态,但是通常预计它们会在两年内毕业。
值得关注的 9 个项目
本文不可能涵盖所有的 CNCF 项目,我将介绍最有趣的 9 个毕业和孵化的开源项目。
名称 | 授权类型 | 简要描述 |
---|
via: https://opensource.com/article/19/8/cloud-native-projects
作者:Bryant Son 选题:lujun9972 译者:messon007 校对:wxy
发表回复