CNCF基金会
CNCF生态
CNCF介绍
CNCF为开源项目提供了强大的服务支柱,围绕着维持大多数项目需求的目标而建立,而不仅仅是代码管理和技术决策。 我们通过专业人员提供一组增强的服务,这些专业人员培养本地云开源项目的成熟度和更多的采用。 我们采用数据驱动的方法与我们的项目和维护人员社区一起工作; 我们积极进行调查,以改善我们的服务和社区对我们的满意程度,并为社区提供优质服务。
加入CNCF好处
基金会
1.开源项目的中立组织增加了来自企业软件公司、初创公司和独立开发人员协作、贡献和成为提交者的意愿
2.CNCF
的技术监督委员会是技术管理机构,由有文件记录的负责人指导,并承认和监督所有项目
3.被CNCF TOC
(CNCF技术监督委员会)接纳的项目,证明你的项目质量达标。
4.加入CNCF
基金会的项目,项目所有者不会变,CNCF
基金会为项目提供一个文档化良好的、中立的管理过程。
5.
CNCF宪章
Linux基金会
2015年11月6日生效/ 2018年12月10日更新
CNCF使命
CNCF
的使命是让云原生计算无处不在,CNCF
云原生v1.0
定义内容:
- 云原生技术有利于各组织在现代化动态环境(公有云、私有云和混合云等)中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。
- 这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大变更。
- 云原生计算基金会(CNCF)致力于培育和维护一个厂商中立的开源生态系统,来推广云原生技术。我们通过将最前沿的模式民主化,让这些创新为大众所用。
CNCF角色
CNCF
将在开源社区中扮演一个负责以下内容的角色:
云原生项目管理
- 确保技术对社区开放,不受党派影响
- 确保技术的品牌(商标和标识)得到社区成员的关注和适当使用,特别强调统一的用户体验和高水平的应用程序兼容性
促进云原生生态系统的发展
- 评估应该添加哪些额外的技术来满足云原生应用程序的愿景,努力鼓励社区提供这些服务,予以整合并推进进度
- 提供促进各领域通用技术标准落地方式
云原生基础技术的推广,以及云原生应用程序定义和管理的方法,包括:活动和会议、营销(SEM,直接营销)、培训课程和开发者认证
通过使云原生技术可及和可靠的方式服务于社区
CNCF
基金会致力于提供云原生标准架构各领域的组件
CNCF价值观
CNCF
将努力坚持以下原则:
快
推进项目高速发展,以支持用户能够积极的使用
开放
基金会是开放的、可访问的,并且独立于特定的党派利益运作。基金会根据贡献者的贡献的价值接受所有贡献者,并且基金会的技术必须根据开放源码的价值对所有人开放。技术社区及其决定应该是透明的
公平
基金会将避免不当影响、不良行为或“付费”决策
雄厚的技术身份
基金会将实现并维持它自己的高度的技术识别,并且跨项目共享
清晰的界限
基金会应该建立明确的目标,在某些情况下,确定什么不是基金会的目标,并帮助生态系统了解新的创新应该集中在哪里
可伸缩的
能够支持所有规模的部署,从小型的以开发人员为中心的环境到企业和服务提供商的规模。这意味着在某些部署中可能不部署某些可选组件,但总体设计和体系结构仍然适用。
跨平台
所开发的规范不会是特定于平台的,这样它们就可以在各种架构和操作系统上实现。
CNCF会员制
CNCF
由白金会员、黄金会员、白银会员、终端用户、学术和非盈利会员组成,不同级别的会员在理事会中的投票权不同。
所有的成员申请将由Linux
基金会审查,基金会将决定是否将该申请人归类为CNCF
会员、终端用户、学术/非营利或CNCF
会员供应商
白金会员权益
- 任命一名代表加入
CNCF
理事会 - 在任何小组委员会或理事会活动中指定一名代表作为有表决权的成员
- 享受最突出的位置在会员展示,包括在网站上
- 如果该成员也是经过批准的终端用户,则享有终端用户成员的所有特权
- 任命一名代表加入
黄金会员权益
- 每五名黄金会员指派一名黄金会员代表加入
CNCF
理事会,最多有三名黄金会员代表 - 如果该成员也是经过批准的终端用户,则享有终端用户成员的所有特权
- 每五名黄金会员指派一名黄金会员代表加入
白银会员权益
- 每十名白银会员指派一名白银会员代表加入
CNCF
理事会,最多有三名白银会员代表 - 如果该成员也是经过批准的终端用户,则享有终端用户成员的所有特权
- 每十名白银会员指派一名白银会员代表加入
CNCF理事会
CNCF
理事会负责CNCF
的营销和其他业务监督以及预算决策。 理事会不为CNCF
做技术决定,只是和TOC
(技术监督委员会)一起协作,为CNCF
设定云原生定义中所述的技术决策理事会处理以下商业事务:
- 在与
CNCF
技术委员会协商后,确定CNCF
的整体范围 - 定义及执行有关使用基金会商标及版权的政策
- 指导市场营销,包括布道,活动和生态系统参与
- 按需建立品牌合规管理制度
- 监督运营,业务发展
- 筹资和财务治理
- 在与
理事会组织结构:理事会投票成员由成员代表和技术社区代表组成
- 会员代表包括:每名白金会员委任一名代表、每五名黄金会员指派一名黄金会员代表、每十名白银会员指派一名白银会员代表
- 技术社区代表包括:技术委员会主席、从
CNCF
项目中选出两名经理事会批准的技术委员会成员 - 对于被理事会视为战略技术贡献者、营收低于5000万美元的初创公司,理事会可以按银牌会员比例逐年延长其白金会员资格,最长可延长5年。
- 同类型企业中最多有两个代表,且一人作为会员代表,一人作为技术社区代表
理事会职责
- 资金管理:指导使用筹集的资金,用于推云原生技术、营销或社区投资
- 选举理事会主席来主持会议,审批资金支出并管理日常业务
- 对理事会的决定或事项进行表决
- 指定执行有关基金会知识产权(版权、专利或商标)的政策
- 通过活动、新闻、网络、社交和其他营销活动进行直接营销和宣传
- 监督运营,业务发展
- 建立和监督为推动
CNCF
使命而创建的委员会 - 基于
CNCF
需求,制定执行品牌合规计划,包括认证测试,使用TOC
建立的品牌标志 - 制定商标的使用方针或政策
- 提供全面的财务治理
资金收入用于下列用途:
CNCF
项目推广- 关键基础设施的建设与运营
- 推广云原生概述的基于容器的计算原理,并通过
CNCF
的项目实施
TOC技术监督委员会
- 权力职责:
TOC
期望通过以下方式推动达成中立共识:- 定义和维护
CNCF
的技术远景 - 批准董事会确定的
CNCF
范围内的新项目,并为这些项目建立概念架构 - 调整、删除或归档项目
- 接受来自终端用户委员会的反馈并映射到项目
- 将接口与管理下的组件对齐(标准化前的代码参考实现)
- 定义在
CNCF
项目中实施的通用实践
- 定义和维护
组织结构:
- 目前11名成员
- 当选的
TOC
成员涵盖关键技术领域:容器技术、操作系统、技术操作、分布式系统、用户级应用程序设计等 - 投票权:理事会6票,终端用户2票,非沙盒项目维护者1票,
TOC
2票。 - 如果有超过2(2)个
TOC
成员来自同一组关联公司,无论是在选举时,还是在后来的工作变动中,由TOC成员共同决定谁下台,如果没有达成一致,则随机抽签
运营模式:
- 选举出
TOC
主席,制定议程,召开理事会会议 - 定期举行面对面的会议,讨论关键问题
TOC
会在需要时召开会议,讨论新出现的问题。问题可由以下人员提出,供TOC
审查:TOC
成员- 董事会成员
CNCF
顶级项目的负责人CNCF
执行董事- 终端用户技术咨询委员会多数票通过
- 透明度:
TOC
定期召开公开的TOC
会议,所有与项目有关的决定应在这些会议、公开邮件列表或公开问题上作出 - 简单的
TOC
问题可以通过简短的讨论和多数投票来解决。可以通过电子邮件或在TOC
的会议上进行讨论 - 审核意见后,确定方案,寻求共识,并在必要时进行表决
- 其目的是让
TOC
找到一条在TOC
和社区内达成共识的途径。在符合法定人数之会议上,理事会的决定,要求应以超过50%的委员投票通过 TOC
会议的法定人数应为TOC
全体成员的三分之二,以进行表决或作出任何决定。如果TOC
会议未能达到法定人数要求,可进行讨论,但不得进行表决或作出决定TOC
的决定可以在不召开会议的情况下通过电子方式作出,但要通过投票,要求达到会议法定人数所需的票数。在电子投票过程中,如果任何两(2)TOC成员要求召开会议讨论该决定,电子投票过程将无效终止,会议结束后可以发起新的投票讨论该决定
- 选举出
- 提名标准。
TOC
的提名人应:- 承诺有足够的时间投入
CNCF TOC
- 在
CNCF
领域内具有高级工程师的专业经验 - 在讨论中保持中立,将CNCF的目标和成功与公司目标或CNCF的任何特定项目相平衡
- 承诺有足够的时间投入
TOC
成员提名及选举流程:- 提名:每个选择组(理事会选择组、终端用户选择组、非沙盒项目维护者选择组)中的每个人最多可提名两人,其中最多一人可来自同一组关联公司。每一位被提名人在被加入提名名单之前必须同意参加
- 提名要求最多一(1)页的提名陈述,其中应包括被提名人的姓名、联系信息和证明被提名人在CNCF领域的经验的支持性陈述
- 理事会应决定
TOC
成员提名、资格和选举的流程和时间表 - 评估期应至少为14个工作日,理事会成员和
TOC
成员可在该期间联系TOC
的提名人
- 资格确认:评估期结束后,理事会和
TOC
成员应分别对每一位被提名者进行投票,以确认被提名者符合资格标准。有效的投票要求至少有50%的参与率。得票率超过50%的候选人为合格候选人 - 选举:如果合格的候选人数目等于或少于
TOC
可供选举的席位数目,合格的候选人将在提名期结束后获得批准。如果被提名者多于TOC
席位可供选举数量,则继续从提名者中投票选出TOC
成员。 - 新一轮提名:如合格的提名人数少于选举小组可供选举的
TOC
席位,则选举小组进行新一轮提名 TOC
推选的TOC
成员可以提名并有资格参加选举,但在选举时不能投票
- 提名:每个选择组(理事会选择组、终端用户选择组、非沙盒项目维护者选择组)中的每个人最多可提名两人,其中最多一人可来自同一组关联公司。每一位被提名人在被加入提名名单之前必须同意参加
- 成员约束:
TOC
成员任期两年,交错任期TOC
成员可由其他TOC
成员的三分之二投票罢免,受影响的个人无资格参加投票- 任何未能连续三(3)次参加会议的
TOC
成员,在连续参加两次会议之前,自动取消其投票资格。 TOC
议程将由TOC
确定。TOC
讨论和决定包含:- 评估
CNCF
中包括的技术 - 制定新技术纳入
CNCF
的验收标准 - 定义将贡献的技术批准为标准
API
的过程
- 评估
终端用户社区
CNCF
的终端用户成员应有权协调和驱动CNCF
用户作为CNCF
设计的消费者的重要活动。 任何作为终端用户的会员或非会员,均为“终端用户参与者”,均应被邀请参加。 终端用户参与者将帮助就与用户相关的主题向技术咨询委员会和CNCF
社区提供投入终端用户社区成员应选举一个终端用户技术咨询委员会
终端用户社区成员将由
CNCF
执行董事批准,如果不存在,则由Linux
基金会执行董事批准
终端用户技术咨询委员会(End User TAB)
人员组成:
- 终端用户技术咨询委员会由来自
终端用户参与者
的7名代表和TOC
的1名成员组成,以便于从终端用户
技术咨询委员会输入到TOC
- 终端用户技术咨询委员会由来自
选举:
- 为了鼓励终端用户参与
CNCF
,前七(7)名终端用户成员可指定一(1)名代表参加终端用户咨询委员会
,剩余席位由CNCF
董事分配给终端用户参与者。 在最初的一年之后,所有终端用户参与者可提名一(1)名代表,终端用户社区应通过当时的终端用户咨询委员会
批准的流程投票选择终端用户咨询委员会
成员
- 为了鼓励终端用户参与
终端用户咨询委员会
可以以三分之二的票数更改终端用户的数量,前提是至少有七(7)名终端用户技术咨询委员会
代表终端用户代表应在业务和技术上具有敏锐的洞察力。被提名者应在建设和运营基础设施和应用方面具有重要的实践经验,这些经验体现了
CNCF
的原则终端用户技术咨询委员会将讨论和推进各项议题,重点是找出差距,并为
TOC
和CNCF
社区开发人员提出优先事项终端用户技术咨询委员会还可以侧重于主动提出终端用户关注的话题、促进
CNCF
的市场采用、为终端用户主持会议或向理事会提供建议如果终端用户技术咨询委员会需要,它可以批准
Special Interest Groups
(SIGs)来处理行业或专门主题TOC
的终端用户技术委员会输入应与其他输入和反馈一起进行,以便TOC
做出决策和计划。建议仅为咨询性建议,在任何情况下, 终端用户技术咨询小组的建议均不得用于命令或指示任何TOC
或项目参与方采取任何行动或取得任何结果。
CNCF项目
成员公司和开放源码社区成员将把项目资产提交
TOC
讨论,并纳入CNCF
所有此类捐款均应符合技术选择委员会制定并经理事会批准的一套标准。 我们的目标是使越来越多的项目与已经被CNCF
接受的项目结合在一起。项目可通过以下三种方式与
CNCF
进行关联:- 纳入
CNCF
,在一个中立的合作之家- 项目的所有方面都由
CNCF
管理 - 该项目被
CNCF
称为CNCF
项目 - 该项目应该是
CNCF
解决方案的核心功能部分。(例如Kubernetes
、Mesos
、etcd
等)
- 项目的所有方面都由
- 通过
API
或规范与CNCF
相关联- 包括
CNCF
可能提供或启用多个选项的组件 - 该项目被称为与
CNCF
集成的组件,而不是由CNCF
托管的项目
- 包括
- 被
CNCF
使用- 在osi批准的开源许可下完全获得许可的项目或组件,并且在
CNCF
中作为组件得到良好的管理和使用 CNCF
未积极推广的项目- 上游社区积极开发完成的项目或组件
- 在osi批准的开源许可下完全获得许可的项目或组件,并且在
- 纳入
现有的开源项目应该继续通过它们现有的技术治理结构来保持凝聚力和速度。 经技术监督委员会批准列入
CNCF
的项目将“轻微”接受技术监督委员会的监督应根据个人的贡献水平和持续时间,在各个项目中建立一个标准协议, 以实现提交者的地位。维护者状态是通过一段时间内对给定项目的贡献和对等提交者的验证来实现的
在
CNCF
发起的新开源项目应完成TOC
采用的项目建议书模板,并由TOC
批准纳入CNCF
。TOC
成员应被给予足够的时间来讨论和审查新的项目建议。 新的项目提案应包括项目中角色的详细信息,为项目提出的治理方案,并确定与CNCF
角色和价值观的一致性
营销委员会
组成:营销委员会将开放给所有成员参加。应选举一名营销委员会主席,以制定会议议程,引导讨论,并帮助委员会实现其目标。 营销委员会应在可能的情况下寻求共识。任何不能在市场委员会中达成大致共识的问题应提交给理事会
职责:营销委员会应代表董事会负责开展、执行营销工作
如果市场营销委员会规模过大,无法有效运作,市场营销委员会可以选择选举经销管理局,并将决策权下放给经销管理局
知识产权策略
a.任何加入到
CNCF
的项目必须将其商标和标识资产的所有权转移给Linux
基金会b.每个项目应确定是否需要使用经批准的
CNCF CLA
,对于选择使用CLA的项目,所有代码贡献者都将承担Apache贡献者许可协议中规定的义务,只有在必要时才会修改,以确定CNCF
是贡献的接受者,该协议应得到治理委员会的批准。c.所有提交贡献
CNCF
项目的新入站代码应:- 附带开发者源签字证书
- 源代码基于Apache License, Version 2.0 许可, 该许可是对(b)中规定的贡献许可协议项下所承担的义务的补充,且不应取代
d.所有出站代码都将在 Apache许可2.0 版本下提供
e.所有被评估纳入
CNCF
的项目都应该完全按照osi
批准的开源许可证进行许可。如果CNCF
中包含的项目许可证不是 Apache许可2.0 版,则需要得到理事会的批准。f.
CNCF
将根据Creative Commons Attribution 4.0 International License
(知识共享署名4.0国际许可协议)接收并提供所有文档。
反垄断指南
所有成员都应遵守
Linux
基金会反垄断政策中对Linux
基金会的要求,详见所有成员应鼓励任何能够满足成员资格要求的组织公开参与,而不考虑竞争利益。 换言之,理事会不应试图以任何标准、要求或理由排除所有成员所使用的标准、要求或理由以外的任何标准、要求或理由
行为准则
- 所有参与者同意遵守
Linux
基金会的行为准则,详见。TOC
可以投票通过自己的CNCF
社区行为准则
关联公司
- 关联公司的定义:
- “子公司”是指成员直接或间接拥有该实体百分之五十以上表决权证券或成员权益的任何实体
- 关联公司是指任何实体控制或由一个成员或控制,与成员一起,共同控制的第三方,在每种情况下,这样的控制结果所有权,直接或间接,超过百分之五十的投票证券或会员利益的实体问题
- 关联公司”是指各为成员关联公司的实体
只有签署了参与协议的法人实体及其附属公司才有权享受该成员资格的权利和特权;但是,该成员及其附属公司应被视为一个单一成员
一组关联公司中只有一名成员有权一次任命或提名一名董事会代表进行成员类别选举
如果成员本身是基金会、财团、开源项目、会员组织、用户组或其他具有成员或发起人的实体, 则授予该成员的权利和特权仅限于该成员的雇员代表,而不限于其成员或发起人,除非在特定情况下理事会另有批准。
成员资格应不可转让、不可出售和不可转让,除非任何成员可以通过合并、 出售或其他方式将其现有的成员资格利益和义务转让给其几乎所有业务和/或资产的继承人; 前提是受让人同意受本章程和Linux基金会成员要求的规章制度和政策的约束
CNCF项目
CNCF项目提交流程
v1.3
主要分为以下阶段:
沙盒
孵化
毕业
沙盒阶段
沙盒阶段目标:
- 通过确保所有项目遵守
CNCF
的法律约束、行为准则和知识产权政策要求,消除可能的法律和治理障碍 - Promote an environment that encourages visibility of experiments to the TOC and SIGs and early work that can add value to the CNCF mission and collaboration across the CNCF community
- 如果(且仅当)需要,促进与现有项目的一致性
- 通过
CNCF
Service Desk请求培育项目 (注意:沙盒项目不提供营销协助)
- 通过确保所有项目遵守
沙盒提交流程:
- 项目通过提交一个 表单 来申请加入沙盒,该表单在公共可见的电子表格中填充一行。表格待定,但将包括以下内容:
- 必需项:项目的
GitHub
链接地址或其他公共源代码存储库上的项目链接地址 - 可选项:项目网站链接地址
- 必需项:复选框,确认如果项目被
CNCF
接受,需要遵循CNCF IP
政策 - 必需项:复选框,确认将给予
CNCF
项目的商标和帐户,如果CNCF
接受该项目 - 必需项:对云原生的简短描述
- 必需项:与同类项目对比
- 必需项:链接到公共路线图(可以是任何格式-文档、GitHub issues、项目板等。这个要求很简单,只是要求提供有一些关于项目未来方向和目标的公共文档)
- 必需项:链接到贡献指南
- 必需项:链接到行为准则
- 可选项: 与现有
CNCF
项目保持一致的声明 - 可选项:链接到预先存在的演示文稿(胶片/视频)
- 必需项:项目的
CNCF
工作人员检查提交表单内容是否满足沙盒提交标准,如果目前不符合这些标准,则建议项目维护人员提供上述必须项TOC
每季度参考以下标准审查一次提交的沙盒项目:TOC
评估该项目是否适合CNCF
- 项目的路线图是否与
CNCF
的目标一致? 该项目是否处于良好的治理,且厂商中立
在提交审查期间,技术咨询委员会对每一份提交的文件进行表决, 如果被拒绝,我们将指出
TOC
认为该项目不符合的标准。欢迎项目提出反馈意见,并在未来再次提交。除非另有通知,否则项目在六个月内不得再次提交。沙盒项目仍然受 年度审查程序 的约束
- 项目通过提交一个 表单 来申请加入沙盒,该表单在公共可见的电子表格中填充一行。表格待定,但将包括以下内容:
项目孵化流程
项目计划书:
- 通过创建 GitHub issue 提出项目孵化
SIG
评估1-2个月- 项目提交给
SIG
SIG
预 尽职调查- 确认项目满足孵化要求
SIG
向TOC
提出建议:沙箱
/孵化
/拒绝
- 注意,这个步骤仍然是一个轻量级的、
dd
(尽职调查)之前的过程
- 项目提交给
TOC
成员提出项目孵化情况- 如果
TOC
成员作为项目孵化发起人,则开始进行尽职调查
- 如果
2-3个月时间进行尽职调查
2-6周时间进行审查尽职调查结果
- 尽职调查文件可供公众审查和评论(
GitHub
、TOC
邮件列表、TOC
公开会议) TOC
孵化发起人决定何时召集TOC
投票,在召集投票前至少留出两周时间征求公众意见
- 尽职调查文件可供公众审查和评论(
6周时间进行
TOC
投票TOC
成员评估项目是否符合孵化标准- 如果2/3的
TOC
成员投赞成票,项目将被接受孵化。 - 如果投票在6周后仍没有结论,
TOC
主席可以延长投票,或得出沉默=弃权的结论
TODO
相关术语
CLA
Contributor License Agreement
的缩写,大致包含以下两个内容
Grant of Copyright License:贡献者拥有代码的版权(copyright),同时授权组织者和项目的所有使用者使用这个版权。
Grant of Patent License:贡献者的贡献如果申请了专利(patent)保护,那么贡献者持有专利,同时授权组织者和项目使用者使用这个专利。
CLA与开源许可(
Apache 2.0
、MIT
、BSD License
等)区别
CLA 定义代码贡献者和项目组织者的法律权责
开源许可定义的是贡献者和使用者之间的法律权责