© S&S Media
Java Magazin
Knative: Serverless Workloads auf Kubernetes

Container in den Wolken

„Serverless“ ist heutzutage in aller Munde. Man kann den Begriff mögen oder nicht, wichtig ist, was er beschreibt. Kurz und bündig bedeutet Serverless: Eine Anwendung wird von der Skalierung her fortwährend so angepasst, dass immer die Ressourcen zur Verfügung stehen, die benötigt werden. Das kann dann bedeuten, dass gar keine Ressourcen zur Verfügung stehen. Für den Nutzer hat das den Vorteil, dass er stets nur für die Kapazität bezahlt, die für seine Anwendung benötigt wird. Sind keine Nutzer vorhanden, zahlt er auch nichts.

Markus Thömmes


Ein zweiter Themenbereich, an dem man heute nicht mehr vorbeikommt, sind Container und Containerorchestrierung. Letztere beschäftigt sich mit dem effizienten Verteilen und Verwalten von Containern innerhalb eines Clusters von Maschinen. Im gleichen Atemzug kann man Kubernetes erwähnen, es stellt den De-facto-Standard [1] für Containerorchestrierung dar.

Was wäre, wenn man die Möglichkeiten beider Welten zusammenführen würde und eine Plattform hätte, die die Eigenschaften von Serverless und das ausgereifte Container- und Anwendungsmanagement von Kubernetes verbindet? Einige Projekte versuchen genau das.

Es gibt sogenannte Function as a Service (FaaS) Frameworks wie OpenWhisk, Kubeless und OpenFaaS­ oder Platform as a Service (PaaS) Frameworks wie Cloud Foundry. FaaS Frameworks bieten dem Nutzer die Möglichkeit, buchstäblich eine einzelne Funktion zu deployen. Diese Funktion wird als Antwort auf ein Event ausgeführt. PaaS Frameworks hingegen fokussieren eher auf langlaufende Prozesse, die über eine HTTP-Schnittstelle verfügbar sind. Beide Ansätze integrieren in der Regel einen Build-Mechanismus, der aus einem Stück Quellcode eine deploybare Einheit erzeugt. All diese Frameworks fokussieren sich also letztlich auf einen bestimmten Typus von Workload, und sie unterscheiden sich in der Art und Weise ihrer Nutzung teilweise erheblich.

Was wäre, wenn es eine Plattform gäbe, die sowohl langlaufende Anwendungen als auch sehr kurzlebige Funktionen und im Generellen Anwendungen jeglicher Größe in einer gemeinsamen Topologie und Terminologie vereint? Willkommen bei Knative!

Knative ist ein von Google initiiertes Open-Source-Projekt und wird von einigen weiteren Riesen der Branche unterstützt: Pivotal, IBM, Red Hat und SAP, um nur einige zu nennen. Knative beschreibt sich selbst als einen Satz von Kubernetes-basierten Middleware-Komponenten, die es ermöglichen, moderne containerbasierte Anwendungen zu bauen. Es ist inspiriert von anderen Kubernetes-basierten Frameworks im selben Umfeld (siehe oben) und fasst all deren Best Practices in einem Framework zusammen. Es erfüllt also genau jene Anforderungen, die oben angesprochen wurden:

Es ist Kubernetes-nativ (daher auch der Name ­Knative) und arbeitet als eine Erweiterung von Kubernetes. Es deckt alle genannten Arten von Serverless Work­loads ab. Es fasst all diese Workloads unter einer gemeinsamen Topologie und Terminologie zusammen.

Wie funktioniert Knative?

Bevor genauer darauf eingegangen wird, wie Knative funktioniert ...

Java Magazin
Knative: Serverless Workloads auf Kubernetes

Container in den Wolken

„Serverless“ ist heutzutage in aller Munde. Man kann den Begriff mögen oder nicht, wichtig ist, was er beschreibt. Kurz und bündig bedeutet Serverless: Eine Anwendung wird von der Skalierung her fortwährend so angepasst, dass immer die Ressourcen zur Verfügung stehen, die benötigt werden. Das kann dann bedeuten, dass gar keine Ressourcen zur Verfügung stehen. Für den Nutzer hat das den Vorteil, dass er stets nur für die Kapazität bezahlt, die für seine Anwendung benötigt wird. Sind keine Nutzer vorhanden, zahlt er auch nichts.

Markus Thömmes


Ein zweiter Themenbereich, an dem man heute nicht mehr vorbeikommt, sind Container und Containerorchestrierung. Letztere beschäftigt sich mit dem effizienten Verteilen und Verwalten von Containern innerhalb eines Clusters von Maschinen. Im gleichen Atemzug kann man Kubernetes erwähnen, es stellt den De-facto-Standard [1] für Containerorchestrierung dar.

Was wäre, wenn man die Möglichkeiten beider Welten zusammenführen würde und eine Plattform hätte, die die Eigenschaften von Serverless und das ausgereifte Container- und Anwendungsmanagement von Kubernetes verbindet? Einige Projekte versuchen genau das.

Es gibt sogenannte Function as a Service (FaaS) Frameworks wie OpenWhisk, Kubeless und OpenFaaS­ oder Platform as a Service (PaaS) Frameworks wie Cloud Foundry. FaaS Frameworks bieten dem Nutzer die Möglichkeit, buchstäblich eine einzelne Funktion zu deployen. Diese Funktion wird als Antwort auf ein Event ausgeführt. PaaS Frameworks hingegen fokussieren eher auf langlaufende Prozesse, die über eine HTTP-Schnittstelle verfügbar sind. Beide Ansätze integrieren in der Regel einen Build-Mechanismus, der aus einem Stück Quellcode eine deploybare Einheit erzeugt. All diese Frameworks fokussieren sich also letztlich auf einen bestimmten Typus von Workload, und sie unterscheiden sich in der Art und Weise ihrer Nutzung teilweise erheblich.

Was wäre, wenn es eine Plattform gäbe, die sowohl langlaufende Anwendungen als auch sehr kurzlebige Funktionen und im Generellen Anwendungen jeglicher Größe in einer gemeinsamen Topologie und Terminologie vereint? Willkommen bei Knative!

Knative ist ein von Google initiiertes Open-Source-Projekt und wird von einigen weiteren Riesen der Branche unterstützt: Pivotal, IBM, Red Hat und SAP, um nur einige zu nennen. Knative beschreibt sich selbst als einen Satz von Kubernetes-basierten Middleware-Komponenten, die es ermöglichen, moderne containerbasierte Anwendungen zu bauen. Es ist inspiriert von anderen Kubernetes-basierten Frameworks im selben Umfeld (siehe oben) und fasst all deren Best Practices in einem Framework zusammen. Es erfüllt also genau jene Anforderungen, die oben angesprochen wurden:

Es ist Kubernetes-nativ (daher auch der Name ­Knative) und arbeitet als eine Erweiterung von Kubernetes. Es deckt alle genannten Arten von Serverless Work­loads ab. Es fasst all diese Workloads unter einer gemeinsamen Topologie und Terminologie zusammen.

Wie funktioniert Knative?

Bevor genauer darauf eingegangen wird, wie Knative funktioniert ...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang