Community rund um Microservices und Container Was ist die Cloud Native Computing Foundation (CNCF)?

Die Cloud Native Computing Foundation ist ein wichtiges Unterprojekt der Linux Foundation. Die Vereinigung hat sich zum Ziel gesetzt, das Cloud Native Computing zu fördern. Cloud Native Computing basiert auf Open Source Software und nutzt Microservices und Container zur Realisierung der Applikationen.

Anbieter zum Thema

Im Fokus: die Förderung von „cloud-native“-Applikationen basierend auf Microservices und Container. Die Cloud Native Computing Foundation (CNCF) ist ein wichtiges Projekt der Linux Foundation.
Im Fokus: die Förderung von „cloud-native“-Applikationen basierend auf Microservices und Container. Die Cloud Native Computing Foundation (CNCF) ist ein wichtiges Projekt der Linux Foundation.
(Bild: gemeinfrei (geralt / pixabay) / Pixabay )

Die Abkürzung CNCF steht für Cloud Native Computing Foundation. Es handelt sich um ein Teilprojekt der Linux Foundation, das sich das Ziel gesetzt hat, das Cloud Native Computing und die Zusammenarbeit zwischen Herstellern, Entwicklern und Anwendern in diesem Bereich zu fördern. Cloud Native Computing ermöglicht es Software-Entwicklern, neue Applikationen in kürzerer Zeit zur realisieren. Es nutzt Microservices und Container, die die vorhandenen Ressourcen der Cloud-Architekturen optimal nutzen.

Zum Einsatz kommt frei verfügbare Open-Source-Software. Die Cloud Native Computing Foundation arbeitet Hersteller-neutral und stellt Lösungen wie Kubernetes, Prometheus oder Envoy über GitHub zur Verfügung. Zur CNCF gehören inzwischen mehr als 375 Mitglieder (Stand 2019). Darunter befinden sich sowohl große Public-Cloud-Anbieter und Software-Hersteller wie Amazon, Google, IBM, Microsoft, Oracle oder VMware als auch zahlreiche Startup-Unternehmen.

Gegründet wurde die Cloud Native Computing Foundation im Jahr 2015, um die Verbreitung und Nutzung von Containern voranzutreiben. Google spendete damals sein Projekt Kubernetes zur Orchestrierung von Containern der Cloud Native Computing Foundation. Das Cloud Native Computing wird mittlerweile von zahlreichen namhaften Unternehmen intensiv genutzt und angewandt. Dazu zählen beispielsweise ebay, Pinterest, Twitter und viele mehr.

Was bedeutet Cloud Native?

Cloud Native ist ein Architektur-Ansatz, der es ermöglicht, skalierbare Anwendungen in modernen Cloud-Umgebungen zu realisieren. Wesentliche Komponenten sind Microservices und Container. Die Anwendungen werden aus vielen einzelnen kleinen Services zusammengestellt. Diese Microservices arbeiten völlig unabhängig voneinander in unterschiedlichen Umgebungen. Angesprochen werden sie über APIs. Die Bereitstellung der Microservices erfolgt über die Container-Virtualisierung. Jeder Container stellt den Anwendungen vom Host-System unabhängige Laufzeitumgebungen zur Verfügung.

Im Vergleich zu virtuellen Maschinen bieten Container eine höhere Effizienz und sind in kürzerer Zeit gestartet. Sie vereinfachen das Deployment vieler verschiedener Microservices. Über Orchestrierungslösungen wie Kubernetes lassen sich die Container automatisiert auf Cloud-Umgebungen wie Public Clouds, Private Clouds oder Hybrid Clouds deployen, verwalten, betreiben und warten. Das Gesamtsystem bietet eine hohe Verfügbarkeit, nutzt die vorhandenen Computing- und Speicherressourcen optimal und ist flexibel skalierbar.

CNCF und die Linux Foundation

Die Linux Foundation ist die Stammvereinigung der CNCF. Zur Linux Foundation zählen mehr als 50 Einzelprojekte. Darunter nimmt die Cloud Native Computing Foundation eine wichtige Rolle ein und gehört zu den größten Untervereinigungen der Linux Foundation. Gegründet wurde die Linux Foundation im Jahr 2000 als Non-profit-Technologie-Konsortium mit dem Zusammenschluss der Open Source Development Labs (OSDL) und der Free Standards Group (FSG).

Neben der Cloud Native Computing Foundation gehören Projekte wie Open Network Automation Platform (ONAP), Cloud Foundry Foundation oder Xen zu den Projekten der Linux Foundation. Zusätzlich zur Betreuung der vielen Open Source Projekte bietet die Linux Foundation Schulungen und Zertifizierungen und ist Veranstalter zahlreicher Events wie des Open Source Leadership Summits, des Linux Kernel Developers Summits oder des Open Source Summits.

Bildergalerie

Die verschiedenen Projekte der Cloud Native Computing Foundation

In der Cloud Native Computing Foundation finden viele Einzelprojekte ein Zuhause, die sich um unterschiedliche Teilaspekte des Native Cloud Computings kümmern. Zu den bekanntesten Projekten zählen:

  • Kubernetes - Orchestrierung von Containern
  • Prometheus - Monitoring im Cloud Native Computing
  • Envoy - Service Proxy für Cloud Native Applikationen
  • CoreDNS - Service Discovery im Cloud Native Computing
  • containerd - Container Runtime

Weitere Projekte der Cloud Native Computing Foundation sind unter anderem:

  • OpenTracing - verteilte Tracing API
  • Fluentd - Logging
  • gRPC -Remote Procedure Call
  • Notary - Sicherheit
  • CNI - Netzwerk API
  • Vitess - Storage

und viele mehr.

Zur Unterstützung des Cloud-Native-Umfelds und zur Bereitstellung von Full-Stack-Open-Source-Softwarelösungen kommen ständig neue Projekte im CNCF hinzu.

Was bedeuten die verschiedenen Stati der CNCF-Projekte?

Die Cloud Native Computing Foundation teilt ihren Projekten verschiedene Stati zu. Diese werden Maturity Levels genannt. Es existieren die Maturity Levels:

  • 1. Sandbox
  • 2. Incubating
  • 3. Graduated

Den höchsten Level Graduated erreichen derzeit (Stand 2019) die Projekte Kubernetes, Prometheus, Envoy, CoreDNS und containerd. Für jeden Level legt die CNCF die Erfüllung bestimmter Kriterien fest. Um im Sandbox Level akzeptiert zu werden, muss ein Projekt mindestens zwei TOC-Sponsoren (Technical Oversight Committee) haben. Zur Erreichung des Incubating Levels sind unter anderem folgende Voraussetzungen zu erfüllen:

  • erfolgreicher Einsatz in der Produktion durch mindestens drei voneinander unabhängige Anwender
  • eine größere Anzahl an Committern
  • substanzielle Fortschritte im Projekt und in der Anwendung

Die zusätzlichen Voraussetzungen für den Graduated Level sind:

  • Committer aus mindestens zwei Organisationen
  • Erreichung und Einhaltung des Core Infrastructure Initiative Best Practices Badge
  • abgeschlossener und veröffentlichter Security Audit durch eine unabhängige Organisation inklusive Adressierung aller erkannter Schwachstellen
  • Übernahme des CNCF Code of Conduct
  • Definition und Dokumentation der wichtigsten Projekt-Prozesse
  • Veröffentlichung einer Liste von Projekt-Anwendern
  • Zustimmung des TOC zum Graduated Level

Falls die Voraussetzungen erfüllt sind und das Projekt die notwendige Reife erreicht hat, kann es versuchen, direkt vom Sandbox Level in der Graduated Level aufzusteigen. Von Projekten im Incubating Level wird erwartet, dass sie innerhalb von zwei Jahren in den Graduated Level aufsteigen. Sie können dort aber prinzipiell auch verbleiben.

Public, Private, Hybrid & Co.: Cloud Computing Wiki

Definitionen rund um Cloud ComputingVon AWS bis XaaS: Alle relevanten Schlagworte aus dem Bereich Cloud Computing finden Sie verständlich erklärt in unseren Definitionen. Ganz im Sinne eines kleinen, aber feinen Glossars lesen Sie hier neutral verfasste und leicht verständliche Erklärungen zu den wichtigsten Begriffen. Als Service für Sie haben wir die hier erklärten Begriffe in unseren Beiträgen auch direkt mit den zugehörigen Lexikoneinträgen verlinkt. So können Sie die wichtigsten Begriffe direkt dort nachschlagen, wo sie im Text auftauchen.  

Zum Special: Definitionen rund um Cloud Computing

Die Cloud Native Computing Foundation und Kubernetes

Das erste und eines der zentralen Projekte der Cloud Native Computing Foundation ist Kubernetes. Schließlich ist die Gründung der Foundation auf das ursprünglich von Google initiierte und anschließend gespendete Projekt zurückzuführen. Bei Kubernetes handelt es sich um eine Open-Source-Plattform zur Container-Orchestrierung. Die Plattform vereinfacht und automatisiert das Einrichten, Betreiben, Verwalten und Skalieren von Container-basierten Anwendungen. Kubernetes arbeitet mit Pods, in denen ein oder mehrere Container laufen.

Die Pods sind Prozesse auf physischen oder virtuellen Nodes, die sich mit Kubernetes zu Clustern zusammenfassen lassen. Die Orchestrierungsplattform unterstützt verschiedene Container-Engines wie Docker. Auch mit den gängigen Cloud-Plattformen wie den Amazon Web Services (AWS) oder Microsoft Azure ist Kubernetes kompatibel. Kubernetes hat sich zur weltweit populärsten und am häufigsten verwendeten Plattform zur Container-Orchestrierung entwickelt und wird von vielen namhaften Unternehmen genutzt.

(ID:45862601)