Red Hat OpenShift Serverless ist eine Sammlung verwalteter, ereignisgesteuerter, Kubernetes-basierter Komponenten für Microservices, Container und Implementierungen von Function-as-a-Service (FaaS).

Diese schlüsselfertige Lösung beinhaltet Sicherheits- und Datenverkehrslenkungstools und integriert Red Hat Operators, und um zustandslose und serverlose Workloads auf der OpenShift-Plattform in privaten, öffentlichen, hybriden und Multi-Cloud-Umgebungen auszuführen.
ermöglicht Entwicklern, sich vollständig auf die Erstellung von Anwendungen der nächsten Generation zu konzentrieren, indem es eine breite Palette von Programmiersprachen, Frameworks, Entwicklungsumgebungen und anderen Tools für die Erstellung und Bereitstellung bahnbrechender Geschäftsprodukte bietet.
Wesentliche Funktionen von Red Hat OpenShift Serverless:
- Eine große Auswahl an Programmiersprachen und Runtime-Komponenten für serverlose Anwendungen. Sie können genau die Sammlung von Tools auswählen, die Sie benötigen.
- Automatisches horizontales Skalieren basierend auf der Anfrageintensität oder bei Eintritt von Ereignissen, um eine effektive Ressourcenverwaltung basierend auf realen, nicht hypothetischen Bedürfnissen zu gewährleisten.
- Vollständige Integration mit OpenShift Pipelines, einem Kubernetes-basierten kontinuierlichen Integrations- und Bereitstellungssystem (CI/CD) auf Basis von Tekton.
- Ein Fundament in Form des Red Hat Operators, der Administratoren ermöglicht, aktive Instanzen sicher zu verwalten und sie zu aktualisieren sowie den Lebenszyklus von Anwendungen ähnlich wie bei Cloud-Diensten zu organisieren.
- Kontinuierliche Überwachung neuer Community-Releases, einschließlich Knative 0.13 Serving, Eventing und kn (offizielle CLI für Knative) – wie für alle anderen Produkte von Red Hat bedeutet dies umfassende Tests und Validierungen auf verschiedenen Plattformen und Konfigurationen von OpenShift.
Darüber hinaus arbeitet Red Hat eng mit mehreren Partnern an Serverless-Technologien zusammen, einschließlich Microsoft im Hinblick auf Azure Functions und (weitere Informationen siehe ). Insbesondere ist bereits ein zertifizierter OpenShift-Operator bei , und kürzlich haben wir mit eine Zusammenarbeit begonnen, damit das Serverless Framework mit OpenShift Serverless und Knative arbeiten kann. Diese Partnerschaften lassen sich als Hinweis auf die Reife der Serverless-Technologie und den Beginn der Bildung eines BrancheneKosystems betrachten.
Wenn Sie zuvor eine Vorabversion von Red Hat OpenShift Serverless installiert haben, können Sie diese auf die allgemein verfügbare GA-Version (General Availability) aktualisieren. Dabei muss für die Version Technology Preview der OLM Subscription Update Channel neu konfiguriert werden, wie in Abbildung 1 gezeigt.

Abbildung 1. Aktualisierung des Subscription-Kanals.
Der Subscription-Kanal muss so aktualisiert werden, dass er mit der OpenShift Container Platform Version 4.4 oder 4.3 übereinstimmt.
Knative Services – erstklassiger Service
OpenShift 4.4 erleichtert das Bereitstellen von Anwendungen mit der OpenShift Serverless-Funktion erheblich, sodass Knative Services mühelos direkt aus dem Developer-Modus der OpenShift-Webkonsole implementiert werden können.
Beim Hinzufügen einer neuen Anwendung zu einem Projekt müssen Sie lediglich den Typ der Knative Service-Ressourcen angeben, wodurch die Funktionalität von OpenShift Serverless sofort aktiviert wird und das Scaling auf null im Standby-Modus einbezogen wird, wie in Abbildung 2 gezeigt.

Abbildung 2. Auswahl von Knative Service als Ressourcentyp.
Einfache Installation mit Kourier
Wie bereits in unserem beschrieben, ist die Nutzung hat die Liste der Anforderungen für die Installation von Serverless auf OpenShift erheblich reduziert, und in der GA-Version dieser Anforderungen sind es noch weniger. All dies senkt den Ressourcenverbrauch, beschleunigt das Kalt-Starten von Anwendungen und beseitigt den Einfluss konventioneller, nicht serverloser Lasten, die im selben Namensraum arbeiten.
Insgesamt beschleunigen diese Verbesserungen sowie die Anpassungen in OpenShift 4.3.5 die Erstellung von Anwendungen aus vorgefertigten Containern um 40-50%, abhängig von der Größe des Abbilds.
Wie alles ohne die Verwendung von Kourier abläuft, kann man in Abb. 3 sehen:

Abb. 3. Zeit zur Erstellung von Anwendungen, wenn Kourier nicht verwendet wird.
Wie alles abläuft, wenn Kourier eingesetzt wird, kann man in Abb. 4 sehen:

Abb. 4. Zeit zur Erstellung von Anwendungen bei Verwendung von Kourier.
TLS/SSL automatisch
OpenShift Serverless kann jetzt automatisch TLS/SSL für den OpenShift-Route Ihres Knative-Services erstellen und bereitstellen, sodass Sie sich nicht mit der Implementierung und Wartung dieser Funktionen befassen müssen, während Sie an Ihrer Anwendung arbeiten. Mit anderen Worten, Serverless befreit den Entwickler von den Komplikationen rund um TSL und sorgt gleichzeitig für das hohe Sicherheitsniveau, das man von Red Hat OpenShift erwartet.
OpenShift Serverless Command Line Interface
In OpenShift Serverless wird es kn genannt und ist direkt im OpenShift-Dashboard auf der Seite Command Line Tools verfügbar, wie in Abb. 5 gezeigt:

Abb. 5. Seite zum Herunterladen des OpenShift Serverless Command Line Interface.
Wenn Sie es von dieser Seite herunterladen, erhalten Sie die kn-Version für MacOS, Windows oder Linux, die von Red Hat geprüft wurde und garantiert frei von Malware ist.
In Abb. 6 sehen Sie, wie Sie mit nur einem Befehl in kn einen Dienst bereitstellen können, um in wenigen Sekunden eine Anwendungsinstanz auf der OpenShift-Plattform mit URL-Zugriff zu erstellen:

Abb. 6. Verwendung des kn Command Line Interface.
Dieses Tool ermöglicht eine umfassende Verwaltung von Serverless Serving- und Eventing-Ressourcen, ohne dass Sie YAML-Konfigurationen ansehen oder bearbeiten müssen.
Verbessertes Topologiedarstellung im Developer-Modus der Konsole
Schauen wir uns an, wie die verbesserte Topologiedarstellung die Verwaltung von Knative-Diensten erleichtert.
Knative-Service-zentrierte Visualisierung
Knative-Dienste werden auf der Topologiedarstellungsseite als Rechteck angezeigt, das alle Revisionen enthält, wie in Abb. 7 dargestellt:

Abb. 7. Knative-Dienste auf der Topologiedarstellungsseite.
Hier können Sie sofort die aktuellen Traffic-Verteilung Prozentwerte der Knative-Dienste einsehen und die Knative-Dienste innerhalb einer Anwendungsgruppe gruppieren, um die Vorgänge innerhalb der ausgewählten Gruppe visuell einfach zu überwachen.
Zuklappen von Listen der OpenShift Knative-Dienste
Im Rahmen des Themas Gruppierung ist zu erwähnen, dass in OpenShift 4.4 das Zusammenklappen von Knative-Diensten innerhalb einer Anwendungsgruppe für eine bequemere Ansicht und Verwaltung der Dienste möglich ist, wenn komplexere Anwendungen im Projekt bereitgestellt werden.
Knative-Dienst im Detail
In OpenShift 4.4 wurde auch die Seitenleiste für Knative-Dienste verbessert. Sie enthält jetzt den Tab Ressourcen, auf dem die Servicekomponenten wie Pods, Revisionen und Routen angezeigt werden. Diese Komponenten ermöglichen zudem einen schnellen und einfachen Zugriff auf die Protokolle einzelner Pods.
Die Topologieansicht zeigt auch die Verteilung des Traffics und ermöglicht es, die Konfiguration schnell zu ändern. So können Sie in Echtzeit schnell die Traffic-Verteilung für den gewählten Knative-Service anhand der Anzahl der Pods, die für eine bestimmte Revision aktiv sind, erkennen, wie in Abb. 8 dargestellt.

Abb. 8. Verteilung des Traffics des Knative-Service.
Ein tieferer Einblick in Serverless-Revisions
Die Topologieansicht ermöglicht jetzt auch einen viel tieferen Einblick in die gewählte Revision, beispielsweise können Sie schnell alle dazugehörigen Pods sehen und bei Bedarf deren Protokolle einsehen. Außerdem haben Sie in dieser Ansicht leicht Zugriff auf die Deployments und Konfigurationen der Revision sowie auf den Unterrouten, der direkt auf diese Revision verweist, wie in Abb. 9 dargestellt:

Abb. 9. Ressourcen, die mit den Revisionen verbunden sind.
Wir hoffen, dass die oben beschriebenen Neuerungen Ihnen bei der Erstellung und Verwaltung von serverlosen Anwendungen nützlich sind und dass in zukünftigen Versionen noch viele weitere nützliche Funktionen für Entwickler hinzukommen, beispielsweise die Möglichkeit, Ereignisquellen zu erstellen und vieles mehr.
Interessiert?
Ihr Feedback ist uns wichtig
, was halten Sie von Serverless. Treten Sie unserer Google-Gruppe bei um an Diskussionen und Office Hours-Seminaren teilzunehmen, um mit uns zusammenzuarbeiten und Ihr Feedback und Ihre Vorschläge zu hinterlassen.
Weitere Informationen
über die Entwicklung von OpenShift-Anwendungen mit den folgenden Red Hat-Ressourcen:
Quelle: habr.com
