Zum Inhalt

WHAT IS KNATIVE?


About Knative

Knative ist eine Plattform, die auf Kubernetes aufbaut und es dir ermöglicht, moderne serverlose Workloads zu erstellen, bereitzustellen und zu verwalten. Kubernetes ist die Infrastruktur, die containerisierte Anwendungen verwaltet, während Knative eine Plattform ist, die auf Kubernetes läuft, um die Deployment-Erfahrung von Entwicklern zu verbessern. 

Neben der Unterstützung der Skalierung und der Verwaltung des Lebenszyklus von Deployments, vereinfacht der Einsatz von Kubernetes und containerisierten Anwendungen die Herausforderungen, die mit der Verwaltung von virtuellen Serverumgebungen einhergingen, erheblich. Dank dieser Vorteile hat ein neuer Trend namens Serverless Computing an Fahrt aufgenommen. In einem serverlose Computing Cloud-Ausführungsmodell betreibt der Cloud-Anbieter die Serverumgebung und verwaltet die Zuweisung von Maschinenressourcen des Servers. 

Verschiedene Anwendungen erfordern unterschiedliche Bereitstellungs-Umgebungen, was ein Problem darstellen kann, wenn es darum geht, Skalierbarkeit und Effizienz zu erreichen. Es bestand die Notwendigkeit, diesen Prozess zu standardisieren und die Lücke zwischen Anwendungscode und Verpackungscontainern für die Bereitstellung zu schließen. Daher die Entwicklung von Knative. 

Knative was originally developed by Google and open-sourced; the project has further benefited from additional support and contributions from Pivotal, IBM, Red Hat, and SAP. It allows developers to write code without worrying about where the code will run. When using it, developers do not need to know the underlying infrastructure of Kubernetes such as pods, deployments, etc.

Knative can be used to deploy and manage applications across multiple platforms. To achieve this, Knative ships with a set of middleware components that enables building, deploying, and scaling container-based applications. 

Knative Komponenten

Build

Die Build-Komponente verwaltet das Bauen von Quellcode in Containern. Sie folgt sequentiellen Schritten, die den Prozess der Erstellung von Quellen in ein Container Image definieren. Sie sorgt für schnellere Builds durch zwischengespeicherte Artefakte. Sie erlaubt es dir, Dockerfiles oder Build Templates zu nutzen.

Serving

Die Serving-Komponente stellt sicher, dass deine Anwendung über HTTP-Anfragen für die Welt zugänglich ist. Sie übernimmt das Hosting, die nahtlose Autoskalierung und die Verwaltung des Lebenszyklus einer Anwendung. Die Knative Serving Komponente kann auf Null skalieren, wenn für eine bestimmte Zeitspanne kein Traffic empfangen wird. Wenn eine neue Anfrage eingeht, startet sie automatisch einen neuen Pod, um die Anfrage zu bedienen.

Eventing

Die Eventing-Komponente verwaltet das Abonnement, die Lieferung und das Management von Events. Sie verbindet Event-Publisher und Event-Consumer durch einen Knative Broker, der als Conduit fungiert. Event-Publisher und Event-Consumer sind unabhängig voneinander. Ein Producer veröffentlicht Event-Nachrichten an den Broker. Ein Konsument ist durch einen Trigger an den Broker gebunden. Dieses unabhängige Modell des Eventing ermöglicht eine hoch skalierbare Event-Infrastruktur. Als Entwickler kannst du in Containern verpackten Code schreiben, um auf bestimmte Event-Trigger zu reagieren. Es steht dir frei, eigene Event-Pipelines zu bauen, um sie mit deinen bereits bestehenden Systemen zu verbinden.

How Knative fits in the Google Cloud?

Im Einklang mit Knative und Serverless Computing stellt Google Cloud eine Reihe von Tools zur Verfügung, damit sich Entwickler auf das Schreiben von großartigem Code konzentrieren können. 

Knative konzentriert sich auf die Aufgaben, die mit der Erstellung und dem Betrieb von Anwendungen auf cloud native Plattformen verbunden sind. Zu diesen Aufgaben gehören die Verwaltung von Source-to-Container-Builds, das Routing und die Verwaltung des Datenverkehrs während der Bereitstellung, die Bindung von Diensten an Event-Ökosysteme und die Handhabung von automatisch skalierenden Workloads.

Cloud Run - Google bietet eine serverlose Ausführungsumgebung für die Ausführung von zustandslosen (stateless) HTTP-gesteuerten Containern namens Cloud Run. Cloud Run basiert auf den Knative Serving APIs. Cloud Run bietet Entwicklern somit einen Einstieg in die Bereitstellung von serverlosen Anwendungen. 

Cloud Run für Anthos - Entwickler können ihren Anwendungscode mit Knative auf Google Cloud Anthosbereitstellen. Anthos ist eine Applikationsmanagement-Plattform, die eine konsistente Entwicklungs- und Betriebserfahrung über verschiedene Umgebungen hinweg bietet, egal ob in der Cloud (Anthos on Google Cloud) oder On-Premises (Anthos on-prem), oder bei anderen Cloud-Anbietern.

Google Cloud unterstützt das Knative Open Source Projekt, indem es es kontinuierlich verbessert und Plattformen entwickelt, die seine Funktionen nutzen können, um hoch skalierbare Apps zu gewährleisten.

Knative benefits

  • This platform allows developers to write code using any language or framework and deploy across various platforms while minimizing switching costs. 
  • It manages the server for you, hence removing the overhead cost of server management. 
  • Du zahlst nur für die Ausführungszeit, wenn die Funktionen nicht ausgeführt werden, fallen keine Kosten an.
  • Die zustandslose (stateless) Natur der Knative-Dienste ermöglicht Skalierbarkeit - sie können hochskaliert werden, wenn der Datenverkehr zunimmt, und ohne zusätzliche Kosten bis auf Null herunter.
  • Knative unterstützt beliebte Tools und Frameworks wie Django, Laravel, Ruby on Rails, Spring, GitOps, DockerOps, ManualOps und mehr.
  • Wenn du bereits eine Deployment-Infrastruktur für dein Projekt hast, ist Knative so konzipiert, dass es sich einfach in einen bestehenden Build- und CI/CD-Workflow einfügt. 
  • Die Erfahrung ist die gleiche, egal ob in der Cloud, on-premises oder in einem Rechenzentrum eines Drittanbieters.
containerization in gcp
Containerization in GCP

Containerization is a topic that has greatly gained traction in the software development tech space over recent years.

cloud run for anthos
Cloud Run for Anthos

The integration of Cloud Run with Anthos avails a flexible serverless platform for deployment in both hybrid and multi-cloud environments. 

anthos
Google Cloud Anthos

Applications need to be developed and deployed both on clouds and on-premises. Due to the complicated nature of these actions across…

Sign up to our newsletter and stay up to date with the latest news!