Cloud Native Computing Foundation

Cloud Native Computing Foundation(CNCF)は、Linux Foundationのプロジェクトの1つで、コンテナ技術の推進と、その進化を取り巻くテクノロジー業界の足並みを揃えるために2015年に創設された財団である。

CNCFの発表はKubernetes 1.0の発表と同時に行われた。Kubernetesは、Googleがシード技術としてLinux Foundationに寄贈したオープンソースのコンテナクラスタマネージャである。CNCFの創立メンバーには、Google、CoreOS、Mesosphere、Red Hat、TwitterファーウェイIntelCiscoDocker、Univa、VMwareなどが名を連ねており、現在では450を超えるメンバーによって支えられている。

CNCFが管理する技術の適格な代表者を擁立するため、2016年8月にトロントで開催された「CloudNativeDay」でプログラムが発表された。 2020年5月までは連続起業家のDan Kohn(Core Infrastructure Initiativeの立ち上げにも協力した)がエグゼクティブディレクターとしてCNCFを率い、その後財団は、GitLab社のクラウドネイティブ・アライアンス・ディレクターのPriyanka Sharma英語版が、彼の後任としてジェネラルマネージャに就任することを発表した。Sharmaは、CNCFのことを「小さな集団によって、しかし非常に大きなエコシステムの中で構築された、非常にインパクトのある組織」と表現し、業界の認知度や採用率の向上によってCNCFは「第二の波」に突入していると強く考えている。

2018年8月、Googleは、Kubernetesの運用管理をコミュニティに引き渡したことを発表した。創設以来、CNCFは、自らがホストする多数のサブプロジェクトを立ち上げてきた。

2020年1月、前年のCNCF年次報告書が発行され、会員数、イベントへの参加、トレーニング、業界への投資などを通じてCNCFが著しく成長したことが報告された。2019年に、CNCFは前年比50%増の173人の新規会員を獲得し、エンドユーザーは90%近く増加した。また、実運用でのKubernetesの使用が78%増加したことを明らかにしている。

CNCFプロジェクト

CNCFの技術的なプロジェクトは、成熟度のレベルの順にSandbox、Incuvated、Graduatedとしてカテゴライズされる。定義の条件には、プロジェクトの採用、寿命、オープンソースプロジェクトがプロダクショングレードの製品を構築できるほどの信頼性を持っているか、などがある。

CNCFのプロセスはプロジェクトをincubatedプロジェクトとして取り上げ、graduatedプロジェクトにまで成長させることを目的としており、これはプロジェクトのプロセスと技術の成熟度を反映している。 graduatedにカテゴライズされたプロジェクトは全体的な成熟を反映しており、コントリビューションの多様性、コミュニティの規模や成長、プロジェクトの採用などについてティッピング・ポイントを超えたと判断されたプロジェクトということになる。

CNCF Sandboxは初期段階のプロジェクトのための場所として、2019年3月に初めてアナウンスされた。Sandboxは、もともと「inception project level」と呼ばれていた場所を置き換えるものである。

2020年7月、Priyanka Sharmaは、CNCFではクラウドネイティブエコシステム内のオープンソースプロジェクトの数を増やしていく予定であることを発表した。

Graduatedプロジェクト

Argo

ArgoはKubernetes native workflows、events、CI/CDなどのオープンソースプロジェクトの集合である。Argo Workflows(コンテナネイティブのWorkfow Engine)、Argo CD(宣言的なGitOpsの継続的デリバリーツール)、Argo Events(イベントベースの依存関係マネージャー)、Argo Rollouts(blue-green、カナリア、カナリアの分析、experimentation、progressive deliveryなどの高度なデプロイ機能を持つ)からなる。2022年12月にgraduatedプロジェクトになった。

cert-manager

cert-managerはKubernetesクラスタに証明書及び証明書発行者のリソースタイプを追加し、証明書の取得、更新、使用のプロセスを簡素化するツールである。Let's Encrypt(ACME)、HashiCorp Vault、Venafi TPP / TLS Protect Cloudなどのさまざまなソースからの証明書発行をサポートしており、クラスタ内でのローカル発行も行える。証明書が有効かつ最新の状態であることを保証し、証明書の有効期限が切れる前に適切なタイミングで更新を試みることで、サービスの停止リスクを軽減し、管理負担を減らせる。2024年11月にgraduatedプロジェクトになった。

Cilium

Cilium 英語版は、eBPF 英語版ベースのネットワーキング、可観測性、セキュリティ機能を提供するソリューションですある。2023年10月にgraduatedプロジェクトになった。

CloudEvents

CloudEventsは「イベントデータを一般的な方法で記述するための仕様」である。このプロジェクトは2018年にアナウンスされ、2019年10月にCNCFの後援のもと1.0のマイルストーンに到達した。2024年1月にgraduatedプロジェクトになった。

Containerd

containerdは業界標準のコアコンテナランタイムである。現在はLinuxとWindows向けのデーモンとして利用でき、ホストシステムの完全なコンテナライフサイクルを管理できる。2015年、DockerはOCI Specificationをruncと呼ばれるリファレンス実装とともにLinux Foundationに譲渡し、2019年2月28日以降、公式のCNCFプロジェクトになった。2017年、Dockerはcontainerdが一般利用可能(GA)であること、プロジェクトをCNCFに寄贈することを発表した。

CoreDNS

CoreDNSはプラグインを組み合わせて使用するDNSサーバーである。2019年にgraduationが発表された。

CRI-O

ORI-OはOpen Container Initiative(OCI)ベースの「Kubernetes Container Runtime Interfaceの実装」である。CRI-Oにより、Kubernetesは特定のコンテナランタイムに依存せずに利用できるようになる。2019年にincubatingプロジェクトになった。2023年7月にgraduationが発表された。

CubeFS

2025年1月にgraduatedプロジェクトになった。

Dapr

2025年1月にgraduatedプロジェクトになった。

Envoy

EnvoyはもともとLyftでアーキテクチャをモノリスから移行するために構築された。Envoyは高性能なオープンソースのエッジおよびサービスプロキシであり、アプリケーションにネットワーク透過性をもたらすことができる。2017年9月、LyftはEnvoyをCNCFに寄贈した。

etcd

etcdは、マシンのクラスター全体に渡ってデータを信頼性の高い方法で保存できる分散キーバリューストアである。CNCFのシアトルで開催されたKubeCon+CloudNativeCon North America 2018でincubatingプロジェクトになることが発表された。2020年11月にgraduatedプロジェクトになった。

Fluentd

Fluentdはオープンソースのデータコレ��タであり、ユーザーが「データの使用と理解をより良く行うために、データの収集と消費を統合」することを可能にする。Fluentdは2016年にCNCFに参加し、2019年にgraduatedプロジェクトになった。

Falco

Falcoはオープンソースのクラウドネイティブのランタイムセキュリティイニシアティブである。「事実上のKubernetesの脅威検出エンジン」であるとされる。2020年1月にincubatingレベルになり、2024年2月にgraduatedプロジェクトになった。

Flux

2025年1月にgraduatedプロジェクトになった。

Harbor

2020年6月にgraduatedプロジェクトになった。

Helm

Helmは開発者が「アプリケーションの管理やKubernetesクラスターへのデプロイするのを簡単にする」のを助けるパッケージマネージャーである。2018年6月にincubatingレベルになり、2020年4月にgraduatedプロジェクトになった。

Jaeger

Jaegetは、GoogleのDapper論文とOpenZipkinコミュニティにインスパイアされたUberのエンジニアにより開発された分散トレーシングシステムである。マイクロサービスベースのアーキテクチャのトレーシングに利用できる。機能としては、分散コンテキスト伝搬、分散トランザクションモニタリング、根本原因の分析、サービス依存関係の分析、性能・レイテンシーの最適化などがある。2017年9月にCNCFのTechnical Oversight CommitteeはJaegerの受け入れを可決し、2019年にgraduatedプロジェクトになった。2020年には、CNCFエコシステムに認められた完全に統合されたパーツとなった。

KubeEdge

2020年9月、CNCF Technical Oversight Committee(TOC)はKubeEdgeをincubatingプロジェクトとして受け入れることを発表した。プロジェクトはFuturewei(Huaweiのパートナー)で開発された。KubeEdgeのゴールは「エッジデバイスをクラウドの拡張として利用できるようにすること」である。2024年10月にgraduatedプロジェクトになった。

Kubernetes

Kubernetesはコンテナ化されたアプリケーションをクラスター環境で自動デプロイ・自動管理するオープンソースのフレームワークである。「Kubernetesは、さまざまなインフラストラクチャに関連する分散型のコンポーネントを管理するためのよりよい方法を提供することを目的としている。」

もともとGoogleで設計され、Cloud Native Computing Foundationを立ち上げるためのシード技術としてLinux Foundationに寄贈された。プロジェクトを支援する「大規模で多様性のある」コミュニティが、同様の目的を持った他の技術や古い技術よりも頑強な持続力をもたらしたと考えられている。2020年1月、CNCFはKubernetesに関連する関心、トレーニング、イベントへの参加、投資の大幅な成長を示す年次レポートを発表した。

Linkerd

LinkerdはCNCFの5番目のプロジェクトであり、クラウドネイティブなアプリケーションのために弾力性のあるサービスメッシュを提供する。ツールはJVM(Java Virtual Machine)をベースとしており、「開発者がマイクロサービス間で通信するのを補助する」ために作られた。2021年7月にgraduatedプロジェクトになった。

Open Policy Agent

Open Policy Agent(OPA)は、「クラウドインフラストラクチャーのためのオープンソースで汎用のポリシーエンジン・ポリシー定義言語」である。2019年4月にCNCFのincubatingプロジェクトになり、2021年2月にgraduatedプロジェクトになった。

Prometheus

Prometheusは、CNCFのメンバープロジェクトで、初期にはSoundCloudによってスポンサーされていたクラウドモニタリングツールである。現在はDigital Ocean英語版Ericsson、CoreOS、DockerRed HatGoogleなどでも使用されている。2018年8月、PrometheusはCNCFのgraduatedプロジェクトになった。

Rook

RookはCNCFの最初のクラウドネイティブのストレージプロジェクトである。2018年にincubationレベルのプロジェクトになり、2020年10月にgraduatedプロジェクトになった。

SPIFFE

2022年9月にgraduatedプロジェクトになった。

SPIRE

2022年9月にSPIFFEと共にgraduatedプロジェクトになった。

The Update Framework

The Update Framework(TUF)は開発者が新規・既存ソフトウェアのアップデートシステムをよりセキュアにするのを補助するフレームワークである。TUFはこの広範に存在する問題に対して、包括的で柔軟なセキュリティフレームワークを提供することで、開発者が任意のソフトウェアアップデートシステムを統合できるようにする。TUFはCNCFの最初のセキュリティにフォーカスしたプロジェクトであり、CNCFがホストするプログラムの全体で9番目のgraduatedプロジェクトとなった。

TiKV

TiKVはRustで書かれた「分散キーバリューデータベース」である。CNCFのTechnical Oversight Committeeは、2019年5月にプロジェクトをincubatingレベルに移動することを決定した。2020年9月にgraduatedプロジェクトになった。

Vitess

VitessはMySQL水平スケーリング英語版を実現するためのデータベースクラスタリングシステムである。もともとYouTubeの内部で使用するために開発されたものである。2018年にCNCFプロジェクトになり、2019年11月にgraduatedプロジェクトになった。

Incubatingプロジェクト

CNI

Container Network Interface(CNI)はCNCFのプロジェクトの1つであり、Linuxコンテナのネットワーク機能を提供している。

Contour

ContourはKubernetesのトラフィックの管理を指示する機能があるEnvoyの管理サーバーである。ContourはKubernetesの組み込みのIngress仕様より高度なルーティング機能も提供している。2020年7月にVMWareがCNCFにプロジェクトを寄贈した。

Cortex

Cortexは、Amazon DynamoDB、Google Bigtable、Cassandra、S3、GCS、Microsoft Azureに対応した、水平スケーリングとマルチテナントを提供するPrometheus向けの長期ストレージである。Thanosとともに、2020年8月にincubatingプロジェクトとして追加された。

gRPC

gRPCは「どんな環境でも実行できる、オープンソースのモダンな高性能RPCフレームワークである。Googleが社内で使用していた「Stubby」と呼ばれる次世代のPRCインフラのプロジェクトをオープンソースにすることでプロジェクトが作られた。公開初期からSquare, Inc.NetflixCiscoなどの多数の大規模な企業で採用された。

Litmus

2020年7月、MayaDataは、Kubernetesネイティブで動作するオープンソースのカオスエンジニアリング用ツールLitmusをCNCFにsanboxプロジェクトとして寄贈した。

NATS

NATSはオープンソースのメッセージング技術のコレクションからなり、「セキュアで性能の高いプロセス間通信(IPC)の手段の構築を助けるために、publish/subscribe、request/reply、分散キューなどのパターンを実装」している。NATSは長年独立して存在してプロジェクトだったが、CNCFのincubatingプロジェクトになった後に幅広く採用されるようになった。

Notary

Notaryは任意のデータコレクションに広範囲の信頼性を与えることを可能にするオープンソースのプロジェクトである。NotaryはDockerにより2015年に公開され、2017年にCNCFのプロジェクトになった。

OpenTelemetry

OpenTelemetryは、CNCFによるOpenTracingおよびOpenCensusプロジェクトの統合によって作られたオープンソースの可観測性フレームワークである。OpenTracingは「人気のあるプラットフォームのための一貫性があり、表現性が高く、ベンダーニュートラルなAPI」を提供し、Googleが開発したOpenCensusプロジェクトは、「アプリケーションのインストルメント、statsの収集(メトリクス)、対応するバックエンドへのデータのエクスポートのための特定言語用のライブラリのコレクション」として機能する。OpenTelemetryのもとで、プロジェクトは「マイクロサービスやその他の種類のモダンな分散システムに適した、ほとんどの主要なOSSおよび商用バックエンドと互換性のある完全なテレメトリーシステム」を開発することを目指している。OpenTelemetryは「2番目に活発な」CNCFプロジェクトである。2020年10月、AWSはOpenTelemetryのディストリビューションの公開プレビューを発表した。

Thanos

Thanosはメトリックのグローバルクエリビューと無制限の保持を可能にするプロジェクトである。Prometheusのdeploymentに簡単に追加できるように設計されている。

Sandboxプロジェクト

Kuma

2020年6月、API管理プラットフォームのKong, Inc.は、オープンソースのKumaコントロールプレーン技術をCNCFにsandboxプロジェクトとして寄贈することを発表した。

CNCFイニシアティブ

CNCFはクラウドネイティブコミュニティに対して、以下のような多数の取り組みやイニシアティブをホストしている。

イベント

CNCFは同じ場所で行われるカンファレンスKubeConとCloudNativeConをホストしており、Kubernetesとクラウドネイティブの知識を増やしたいと考えているテクニカルユーザーとビジネスプロフェッショナルにとって重要なイベントになっている。イベントは、業界の仲間や思想的リーダーとのコラボレーションを可能にすることを目指している。KubeCon + CloudNativeCon North America 2018はシアトルのWashington Convention Centerで開催された。KubeCon + CloudNativeCon North America 2019は11月18日から11月21日にカリフォルニ���州サンディエゴで開催された。同じ場所で開催されるイベントはKubeCon EuropeとKubeCon Chinaも行われるようになった。North Americaのイベントは、COVID-19パンデミックのために2020年のシーズンから完全にリモートモデルに移行した。11月17日から11月20日までオンラインで行われる。

ダイバーシティ奨学金と公平とインクルージョンに対する立場

CNCFのダイバーシティ奨学金(Diversity Scholarship)プログラムは、KubeCon + CloudNativeConのカンファレンスのチケット代と旅費を支給するものである。2018年には、多様性を拡大してマイノリティの背景がある人々がシアトルで行われるKubeConとCloudNativeConに参加できるように支給された金額は、300,000ドルに上った。

2020年8月、Priyanka SharmaはCNCFはBlack Lives Matter運動に対して「連携する(in solidarity)」という立場を取ることを発表した。また、Sharmaは次のようにも述べている。「個人的にコードから人種的に問題のある言葉を根絶するプロジェクトにも関わって」おり、CNCFは「クラウドネイティブエコシステム内部でのジェンダーと人種的バランスを向上するために活発に取り組んで」いる。特にKubeConに関しては、LGBTQIA+、女性、黒人や褐色人種の人たち、能力の異なる人たちなどに対して場所や機会を作ることに引き続き取り組んでいく、と。

その他

その他にも以下の取り組みやサービスの提供を行っている。

  • Kubernetes certification and education
  • Kubernetes software conformance and training
  • Cloud Native Landscape
  • Cloud Native Trail Map
  • DevStats
  • CNCF Technology Radar

出典

外部リンク

Uses material from the Wikipedia article Cloud Native Computing Foundation, released under the CC BY-SA 4.0 license.