CNCFについて

2023年1月26日

概要

  • CNCFはCloud Native Computing Fundationの略
  • 非営利のLinux Fundationの一つ [1]
  • 2014年にGoogleがコンテナオーケストレーションに使用していたBorgという社内プロジェクトをオープンソース化し、その際にLinux Fundationと連携してCNCFを立ちあげた。BorgはGoで書き直されて、KubernetesとしてCNCFの開始プロジェクトとして寄付され、その後も多数のプロジェクトがCNCFに参加し、Kubernetesの機能を拡張している[3]
  • Apache-2.0ライセンスが適用される[5]
  • 2022年でCNCF傘下のプロジェクトへのコミット数上位5社は、下記の通り[4]
    • Red Hat Inc.
    • Google LLC
    • Microsoft Corporation
    • VMware Inc.
    • Independent

ミッション

The Foundation’s mission is to make cloud native computing ubiquitous.

https://github.com/cncf/foundation/blob/main/charter.md

Cloud Native Computing Foundationは、オープンソースでベンダー中立プロジェクトのエコシステムを育成・維持して、このパラダイムの採用を促進したいと考えてます。 私たちは最先端のパターンを民主化し、これらのイノベーションを誰もが利用できるようにします。

https://github.com/cncf/toc/blob/main/DEFINITION.md
  • CNCFのミッションは、Cloud Native Computingをユビキタスにする(いつでもどこでも使えるようにする)こと
  • 参考:Cloud Nativeについて

CNCFのプロジェクトと成熟度

  • メンバー企業とオープン ソースコミュニティのメンバーは、プロジェクトを提案してTOCで議論し、承認されるとCNCFに含めることができる。
    • TOCはTechnical Oversight Commiteeの略で、CNCFの技術管理機関(the technical governing body)であり、すべてのプロジェクトの承認および監督をする役割を担う[6]
  • CNCFのプロジェクトは、成熟度によって、Sandbox, Incubating, Graduatedの3つのレベルに認定され[7]、IncubatingまたはGraduatedレベルへ移行するためには投票の3分の2が同意する必要がある
    • Sandbox
      • Early-stageのプロジェクト[8]
      • フォームから応募して、TOCで承認されるとSandboxステージとして認められる[9]
      • TOCが一度のミーティングで処理できないほど多くのプロジェクトが提案されている[7]
      • IncubatingまたはGraduatedへのレベル移行の場合、プロジェクトは、最初の申請から承認までに少なくとも 5 か月以上の期間を計画する必要がある[7]
    • Incubating
      • Incubating(およびGraduated)のプロジェクトは、本番環境で利用するに値するとみなされる[10]
      • Sandboxステージの要件に加えて、Due diligence[11]の遵守や、ドキュメントの充実度や実働コミッターの数などより高いレベルの項目を満たすかどうかが基準となる
    • Graduated
      • Incubatingステージの要件に加えて、複数の組織からのコミッターが所属していることや、第三者機関によるセキュリティ監査を完了する(重大な脆弱性がないことを認められる)など、より高いレベルの項目を満たすかどうかが基準となる
  • すべてのプロジェクトは下記のリンクを参考
プロジェクトの成熟度
https://www.cncf.io/projects/
Project stages
https://github.com/cncf/toc/blob/main/process/project_proposals.md

参考

  1. https://www.cncf.io/about/who-we-are/
  2. https://github.com/cncf/foundation/blob/main/charter.md
  3. https://www.cncf.io/blog/2018/11/05/beginners-guide-cncf-landscape/
  4. https://all.teststats.cncf.io/d/5/companies-table?orgId=1&var-period_name=Last+year&var-metric=contributions&from=1516202921831&to=1673969321831&viewPanel=1
  5. https://github.com/cncf/foundation/blob/8e10117c1c16a2851319854135318775967ee626/conformance-programs.md
  6. https://github.com/cncf/toc
  7. https://github.com/cncf/toc/blob/main/process/project_proposals.md
  8. https://github.com/cncf/toc/blob/main/process/sandbox.md
  9. https://github.com/cncf/toc/blob/main/process/graduation_criteria.md
  10. https://www.cncf.io/projects/
  11. https://github.com/cncf/toc/blob/main/process/due-diligence-guidelines.md