# Cloud Native Computing Foundation

La Cloud Native Computing Foundation (CNCF) est un projet de la Linux Foundation qui a été fondé en 2015 pour aider à faire progresser la technologie des conteneurs et rassembler les industries technologiques autour de son évolution.
Il a été annoncé en même temps Kubernetes 1.0, un gestionnaire de cluster de conteneurs open source, qui a été contribué à la Linux Foundation par Google en tant qu'initiateur de cette technologie. Les membres fondateurs incluent Google, CoreOS, Mesosphere, Red Hat, Twitter, Huawei, Intel, Cisco, IBM, Docker, Univa et VMware$^,$. Aujourd'hui, la CNCF est soutenue par plus de 450 membres. Afin d'établir des représentants qualifiés des technologies régies par la CNCF, un programme a été annoncé lors du premier CloudNativeDay à Toronto en août 2016.
L'entrepreneur en série Dan Kohn (qui a également contribué au lancement de la Core Infrastructure Initiative) a dirigé la CNCF en tant que directeur général jusqu'en mai 2020$^,$. La fondation a annoncé que Priyanka Sharma, directrice de Cloud Native Alliances chez GitLab, assumerait un rôle de directeur général à sa place. Sharma décrit la CNCF comme «une organisation très percutante construite par un petit groupe de personnes mais [au sein] d'un très grand écosystème» et estime que la CNCF entre dans une «deuxième vague» en raison de la sensibilisation et de l'adoption accrues de l'industrie.
En août 2018, Google a annoncé qu'il cédait le contrôle opérationnel de Kubernetes à la communauté. Depuis sa création, la CNCF a lancé plusieurs sous-projets hébergés.
En janvier 2020, le rapport annuel de la CNCF pour l'année précédente a été publié et reflétait une croissance significative de la fondation en termes d'adhésion, de participation aux événements, de formation et d'investissement de l'industrie. En 2019, la CNCF a progressé de 50% par rapport à l'année précédente avec 173 nouveaux membres et près de 90% de croissance en utilisateurs finaux. Le rapport a révélé que parmi les personnes intérrogées 78% utilisaient Kubernetes en production.

## Projets CNCF

Les projets technologiques de la CNCF sont catalogués avec un niveau de maturité Sandbox, Incubated et Graduated, par ordre croissant. Les critères définis incluent le taux d'adoption, la longévité et la question de savoir si le projet open source peut être utilisé pour créer un produit de qualité production.
La CNCF Sandbox est un endroit pour les débuts d'un projet, et il a été annoncé pour la première fois en mars 2019. La CNCF Sandbox remplace ce qui avait été appelé à l'origine le « inception project level ».
La CNCF Incubating soutient sous forme de projets incubés et vise ensuite à les faire évoluer jusqu'à l'obtention du grade final, ce qui implique un haut niveau de maturité des processus et des technologies.
Un projet Graduated reflète la maturité globale; ces projets ont atteint un point de basculement en termes de diversité de contribution, d'échelle / croissance communautaire et d'adoption.
En juillet 2020, Priyanka Sharma a déclaré que la CNCF cherchait à augmenter le nombre de projets open source dans l'écosystème Cloud Native.

### Projets "Graduated"
#### Containerd

Containerd est un environnement d'exécution de conteneur conforme aux standards de l'industrie. Il est actuellement disponible en tant que démon pour Linux et Windows, qui peut gérer le cycle de vie complet du conteneur de son système hôte. En 2015, Docker a fait don de la spécification OCI à la Linux Foundation avec une implémentation de référence appelée runc. Depuis le 28 février 2019, c'est un projet officiel de la CNCF. Sa disponibilité générale et son intention de faire don du projet à la CNCF ont été annoncées par Docker en 2017$^,$.

#### CoreDNS

CoreDNS est un serveur DNS qui enchaîne les plugins. Son niveau Graduated a été annoncée en 2019.

#### Envoy

Initialement construit à Lyft pour changer leur architecture monolithe, Envoy est un proxy de service et de périphérie open source hautes performances qui rend le réseau transparent pour les applications. Lyft a contribué Envoy à Cloud Native Computing Foundation en septembre 2017.

#### Etcd

etcd est une solution de stockage clé/valeur distribuée visant à fournir une méthode fiable de stockage de données sur un cluster de machines. Il est devenu un projet Incubating CNCF en 2018 à KubeCon + CloudNativeCon North America à Seattle cette année-là. En novembre 2020, le projet est devenu un projet Graduated.

#### Fluentd

Fluentd est un collecteur de données open source, permettant à l'utilisateur « d'unifier la collecte et la consommation de données pour une meilleure utilisation et compréhension des données ». Fluentd a rejoint la CNCF en 2016 et est devenu un projet Graduated en 2019.

#### Helm

Helm est un gestionnaire de packages qui aide les développeurs à « gérer et déployer facilement des applications sur le cluster Kubernetes ». Il a rejoint le niveau Incubating en juin 2018 et obtient le niveau Graduated en avril 2020.

#### Jaeger

Créé par Uber Engineering, Jaeger est un système de traçage distribué open source inspiré du papier Google Dapper et de la communauté OpenZipkin. Il peut être utilisé pour suivre les architectures basées sur des microservices, y compris la propagation de contexte distribué, la surveillance des transactions distribuées, l'analyse des causes root, l'analyse des dépendances de service et l'optimisation des performances / latence. Le comité de supervision technique de la Cloud Native Computing Foundation a voté pour accepter Jaeger comme 12e projet hébergé en septembre 2017 et est devenu un projet Graduated en 2019. En 2020, il est approuvée et pleinement intégrée dans l'écosystème CNCF.

#### Kubernetes

Kubernetes est un framework open source pour automatiser le déploiement et la gestion des applications conteneurisées et des environnements. "Il vise à fournir de meilleures façons de gérer les composants distribués et connexes sur une infrastructure variée." Il a été initialement conçu par Google et donné à la Linux Foundation pour former la Cloud Native Computing Foundation avec Kubernetes comme technologie de base. La communauté «vaste et diversifiée» qui soutient le projet a rendu sa pérennité plus robuste que d'autres technologies plus anciennes du même acabit. En janvier 2020, le rapport annuel de la CNCF a montré une croissance significative de l'intérêt, de la formation, de la participation aux événements et des investissements liés à Kubernetes.

#### Prometheus

Projet membre de la Cloud Native Computing Foundation, Prometheus est un outil de surveillance du cloud sponsorisé par SoundCloud dans les premières itérations. L'outil est actuellement utilisé par DigitalOcean (en), Ericsson, CoreOS, Docker, Red Hat et Google. En août 2018, l'outil a été désigné projet Graduated par la Cloud Native Computing Foundation.

#### Rook

Rook est le premier projet de stockage cloud native de la CNCF. Il est devenu un projet de niveau Incubating en 2018 et en octobre 2020 est désigné Graduated.

#### The Update Framework (TUF)

The Update Framework (TUF) aide les développeurs à sécuriser les systèmes de mise à jour de nouveaux logiciels ou existants, qui se révèlent souvent vulnérables à de nombreuses attaques connues. TUF résout ce problème répandu en fournissant un framework de sécurité complet et flexible que les développeurs peuvent intégrer à n'importe quel système de mise à jour logicielle. TUF a été le premier projet de sécurité de la CNCF et le neuvième projet global Graduated sortir du programme d'incubation de la fondation.

#### Vitess

Vitess est un système de clustering de bases de données pour la mise à l'échelle horizontale de MySQL, d'abord créé pour un usage interne par YouTube. Il est devenu un projet CNCF en 2018 et a obtenu le niveau Graduated en novembre 2019.

### Projets "Incubating"
#### Argo

Argo est une collection open source de flux de travail natifs Kubernetes, d'événements, de projets CI et CD. Il se compose d'Argo Workflows (moteur de workflow natif pour le conteneur), Argo CD (déclaratif, outil de livraison continue GitOps), Argo Events (gestionnaire de dépendances basé sur des événements) et Argo Rollouts (capacités de déploiement avancées telles que blue-green, canary, canary analysis, expérimentation et livraison progressive).

#### CloudEvents

CloudEvents est "une spécification (spec) pour décrire les données d'événement de manière courante". Le projet a été annoncé en 2018 et a atteint son jalon 1.0 sous les auspices de la CNCF en octobre 2019.

#### CNI

Container Network Interface (CNI), un projet de la Cloud Native Computing Foundation, assure la mise en réseau des conteneurs Linux.

#### Contour

Contour est un serveur de gestion pour Envoy qui peut diriger la gestion du trafic de Kubernetes. Contour fournit également des fonctionnalités de routage plus avancées que la spécification Ingress prête à l'emploi de Kubernetes. VMWare a contribué au projet à la CNCF en juillet 2020.
Countour, un projet VMWare Ingress, a été remis à la CNCF en juillet 2020 au niveau Incubating

#### Cortex

Cortex offre un stockage pour la mise à l'échelle horizontale, multi-tenant et permet la conservation à long terme pour Prometheus. Il fonctionne avec Amazon DynamoDB, Google Bigtable, Cassandra, S3, GCS et Microsoft Azure. Il a été introduit dans l'écosystème aux côtés de Thanos en août 2020.

#### CRI-O

CRI-O est une « implémentation de Kubernetes Container Runtime Interface » basée sur Open Container Initiative (OCI). CRI-O permet à Kubernetes d'être indépendant de l'exécution du conteneur. C'est devenu un projet Incubating en 2019.

#### Falco

Falco est open source et une initiative de la Cloud Native Runtime Security. Il s'agit du "moteur de détection des menaces Kubernetes". C'est devenu un projet Incubating en janvier 2020.

#### gRPC

gRPC est un « framework RPC haute performance open source moderne qui peut fonctionner dans n'importe quel environnement ». Le projet a été formé en 2015 lorsque Google a décidé d'ouvrir la prochaine version de son infrastructure RPC («Stubby»). Le projet a un certain nombre de précurseurs dans l'industrie tels que Square, Inc., Netflix et Cisco.

#### KubeEdge

En septembre 2020, le Technical Oversight Committee (TOC), en français le comité de supervision technique, de la CNCF a annoncé que KubeEdge était accepté comme projet Incubating. Le projet a été créé chez Futurewei (un partenaire de Huawei). L'objectif de KubeEdge est de "faire des edge devices une extension du cloud".

#### Kuma

En juin 2020, la plate-forme de gestion d'API Kong a annoncé qu'elle ferait don de sa technologie de plan de contrôle de maillage de service open source, appelée Kuma, à la CNCF en tant que projet Sandbox.

#### Linkerd

Linkerd est le cinquième projet membre de la CNCF, fournissant un maillage de services résilient pour les applications Cloud Native. L'outil est basé sur la JVM « pour que les développeurs contribuent à améliorer les communications entre les microservices. »

#### Litmus

En juillet 2020, MayaData a fait don de Litmus, un outil open source d'ingénierie du chaos qui s'exécute nativement sur Kubernetes, à la CNCF en tant que projet au niveau Sandbox.

#### NATS

NATS consiste en un ensemble de technologies de messagerie open source qui « implémentent les modèles de publication / abonnement, de demande / réponse et de file d'attente distribuée pour aider à créer une méthode performante et sécurisée d'InterProcess Communication (IPC) ». Il a existé de manière indépendante pendant un certain nombre d'années, mais a gagné une plus grande portée depuis qu'il est devenu un projet Incubating de la CNCF.

#### Notary

Notary est un projet open source qui permet une confiance généralisée sur des collectes de données arbitraires. Notary a été réalisé par Docker en 2015 et est devenu un projet CNCF en 2017.

#### Open Policy Agent

Open Policy Agent (OPA) est « un moteur de politique open source à usage général et un langage pour l'infrastructure cloud ». Il est devenu un projet Incubating de la CNCF en avril 2019.

#### OpenTelemetry

OpenTelemetry, open source, est un framework d'observabilité créé lorsque la CNCF a fusionné les projets OpenTracing et OpenCensus. OpenTracing propose des « API cohérentes, expressives et indépendantes des fournisseurs pour les plates-formes populaires » tandis que le projet OpenCensus créé par Google agit comme un « ensemble de bibliothèques spécifiques à un langage pour l'instrumentation d'une application, la collecte de statistiques (métriques) et l'exportation de données vers un backend pris en charge ». Sous OpenTelemetry, les projets créent un « système de télémétrie complet [qui est] adapté à la surveillance des microservices et d'autres types de systèmes distribués modernes - et [est] compatible avec la plupart des principaux backends OSS et commerciaux ». Il s'agit du « deuxième projet CNCF le plus actif ». En octobre 2020, AWS a annoncé l'aperçu public de sa distribution pour OpenTelemetry.

#### Thanos

Thanos permet des vues de requête globales et une rétention illimitée des métriques. Il a été conçu pour être facilement implémenté aux déploiements de Prometheus.

#### TiKV

TikV fonctionne sur Rust et « fournit une base de données clé/valeurs distribuée ». Le Comité de Contrôle Technique de la CNCF a voté le passage du projet au niveau Incubating en mai 2019.

### Projets "Archive"

Le Comité de Contrôle Technique de la CNCF «archive» les projets qui, selon lui, ne font plus l'objet d'une promotion active ou d'un soutien marketing de la part de la fondation. La Linux Foundation, cependant, maintient et détient des marques pour ces projets.

## Initiatives de la CNCF

La CNCF héberge un certain nombre d'efforts et d'initiatives pour servir la communauté Cloud native, notamment :

### Événements

La CNCF accueille les conférences KubeCon et CloudNativeCon co-localisées, qui sont devenues des événements clés pour les utilisateurs techniques et les professionnels qui cherchent à accroître leurs connaissances Kubernetes et cloud-native. Les événements visent à permettre la collaboration avec des pairs de l'industrie et des leaders. Ces dernières années, l'événement colocalisé s'est élargi pour inclure KubeCon Europe et la Chine. L'événement en Amérique du Nord a été déplacé vers un modèle entièrement distant pour sa saison 2020 en raison de la pandémie COVID-19.
Liste des KubeCon + CloudNativeCon :
| Événement | Date | Lieu |
| CloudNativeCon + KubeCon 2016 | 8 au 9 novembre 2016 | Seattle, Washington, États-Unis |
| CloudNativeCon + KubeCon Europe 2017 | 29-30 mars 2017 | Centre des congrès de Berlin, Berlin, Allemagne |
| KubeCon + CloudNativeCon Amérique du Nord 2017 | 6-8 décembre 2017 | Austin Convention Center, Austin, Texas, États-Unis |
| KubeCon + CloudNativeCon Europe 2018 | 2-4 mai 2018 | Bella Center, Copenhague, Danemark |
| KubeCon + CloudNativeCon Chine 2018 | 14-15 novembre 2018 | Shanghai Convention & Exhibition Center of International Sourcing, Shanghai, Chine |
| KubeCon + CloudNativeCon Amérique du Nord 2018 | 11-13 décembre 2018 | Washington State Convention Center, Seattle, Washington, États-Unis |
| KubeCon + CloudNativeCon Europe 2019 | 20-23 mai 2019 | Fira Gran Via, Barcelone, Espagne |
| KubeCon + CloudNativeCon + Sommet Open Source Chine 2019 | 25-26 juin 2019 | Centre d'exposition de Shanghai, Shanghai, Chine |
| KubeCon + CloudNativeCon Amérique du Nord 2019 | 18-21 novembre 2019 | San Diego Convention Center, San Diego, Californie, États-Unis |
| KubeCon + CloudNativeCon Europe 2020 | 30 mars-2 avril 2020 | Virtuel |
| KubeCon + CloudNativeCon Amérique du Nord 2020 | 17 au 20 novembre 2020 | Virtuel |
| KubeCon + CloudNativeCon Europe 2021 | 4-7 mai 2021 | Virtuel |
| KubeCon + CloudNativeCon Amérique du Nord 2021 | 11 au 15 octobre 2021 | Virtuel & Los Angeles Convention Center, Los Angeles, Californie, États-Unis |

### Bourses de diversité et position sur l'équité et l'inclusion

Le programme de bourses pour la diversité de la CNCF couvre le billet et le voyage pour la conférence KubeCon + CloudNativeCon. En 2018, 300 000 dollars en bourses pour la diversité ont été collectés pour permettre aux participants issus de milieux divers et minoritaires de faire le voyage à Seattle pour KubeCon et CloudNativeCon.
En août 2020, Priyanka Sharma a déclaré que la CNCF était «solidaire» du mouvement Black Lives Matter. Sharma a également déclaré qu'elle était "personnellement impliquée dans un projet visant à éliminer la terminologie raciale problématique du code" et que la fondation "travaille activement pour améliorer l'équilibre entre les sexes et les races au sein de l'écosystème natif du cloud" tout en restant engagée à créer des espaces et des opportunités pour LGBTQIA +, femmes, personnes noires et brunes et personnes handicapées, en particulier en ce qui concerne KubeCon.

### Certification et formation Kubernetes

L'accréditation Certified Kubernetes Administrator (CKA), indépendante du fournisseur, est une voie pour devenir un professionnel de l'informatique certifié Kubernetes, qui est pertinente pour les administrateurs qui travaillent sur une gamme de plates-formes cloud. Il existe des dizaines de milliers d'administrateurs Kubernetes certifiés (CKA) et de développeurs d'applications Kubernetes certifiés (CKAD) dans le monde.

### Conformité et formation aux logiciels Kubernetes

Le programme de conformité Kubernetes certifié (KCSP) de la CNCF permet aux fournisseurs de prouver que leurs produits et services sont conformes à un ensemble d'API Kubernetes de base et sont interopérables avec d'autres implémentations Kubernetes. À la fin de 2018, 76 entreprises avaient validé leurs offres avec le programme de conformité certifié Kubernetes.
En 2017, la CNCF a également aidé la Linux Foundation à lancer un cours Kubernetes gratuit sur la plate-forme EdX - qui compte plus de 88 000 inscriptions. Le cours à rythme personnalisé couvre l'architecture du système, les problèmes résolus par Kubernetes et le modèle qu'il utilise pour gérer les déploiements et la mise à l'échelle en conteneur. Le cours comprend également des instructions techniques sur la façon de déployer une application autonome et à plusieurs niveaux.

### Landscape Cloud Native

La CNCF a développé une carte du paysage qui montre toute l'étendue des solutions Cloud Native, dont beaucoup relèvent de leur responsabilité. Le catalogue interactif donne une idée des problèmes auxquels sont confrontés les ingénieurs et les développeurs pour décider des produits à utiliser. Ce catalogue interactif a été créé en réponse à la prolifération de technologies tierces et à la fatigue décisionnelle qui en résulte que les ingénieurs et les développeurs éprouvent souvent lors de la sélection d'outils logiciels. En plus de cartographier les solutions Cloud Native, pertinentes et existantes, la carte du paysage de la CNCF fournit des détails sur les solutions elles-mêmes, y compris le statut open source, les contributeurs , etc..
La carte du paysage a fait l'objet de diverses blagues sur Twitter en raison de l'expansion et de la complexité visuelle de l'écosystème CNCF.

### Carte des sentiers Cloud Native

La Cloud Native Trail Map de la CNCF décrit les technologies cloud natives open source hébergées par la Fondation et décrit le chemin recommandé pour la construction d'une opération cloud native en utilisant les projets sous son aile. Le Cloud Native Trail Map sert également de guide interactif et complet sur les technologies cloud.

### DevStats

L'outil DevStats de la CNCF fournit une analyse de l'activité GitHub pour Kubernetes et les autres projets CNCF. Les tableaux de bord suivent une multitude de paramètres, notamment le nombre de contributions, le niveau d'engagement des contributeurs, le temps nécessaire pour obtenir une réponse après l'ouverture d'un problème et les groupes d'intérêts spéciaux (SIG) qui sont les plus réactifs.

### Radar à technologie CNCF

En juin 2020, la CNCF a publié le numéro inaugural du CNCF Technology Radar, « guide d'opinions d'un ensemble de technologies émergentes » sous la forme d'un article trimestriel.