Cloud-native: Microsoft enthüllt Open Application Model und Dapr

Mit einer neuen Spezifikation für Cloud-native Anwendungen und einer Laufzeitumgebung für Microservices-Architekturen will Microsoft neue Standards etablieren.

In Pocket speichern vorlesen Druckansicht 7 Kommentare lesen
Microsoft

(Bild: dpa, Michel Euler/AP)

Lesezeit: 3 Min.
Von
  • Björn Bohn

Microsoft und Alibaba haben gemeinsam das Open Application Model (OAM) als Projekt unter der Open Web Foundation vorgestellt. Es handelt sich dabei um eine Spezifikation zum Entwickeln Cloud-nativer Applikationen, die dafür sorgen soll, dass Applikationsbeschreibungen unabhängig von Informationen über Deployment und die zugrundeliegende Infrastruktur sind.

Darüber hinaus hat Microsoft mit Dapr (Distributed Application Runtime) eine quelloffene Laufzeitumgebung zum Erstellen von Microservices-Applikationen freigegeben.

Microsoft erklärt in einem Blogbeitrag die Vorhaben und Grundzüge von OAM. Durch die Trennung der Anwendungsdefinition von den operativen Details des Clusters sollen sich Entwickler auf die Kernaspekte der Applikation konzentrieren können. Darüber hinaus ermöglicht sie für Plattformarchitekten die Entwicklung wiederverwendbarer Komponenten, sodass Entwickler diese einfach in ihren Code integrieren können. Dabei sei es das Ziel des Open Application Model, einfache Anwendungen leicht umsetzbar und komplexe Anwendungen überschaubarer zu machen.

In OAM wird eine Anwendung aus mehreren Konzepten erstellt. Das erste sind die Komponenten, aus denen eine Anwendung besteht. Diese Komponenten können Dienste wie eine MySQL-Datenbank oder ein replizierter PHP-Server mit entsprechendem Load Balancer sein. Um diese Komponenten in eine konkrete Anwendung zu verwandeln, verwenden Administratoren eine Konfiguration dieser Komponenten, um eine bestimmte Instanz einer Anwendung zu bilden, die bereitgestellt werden soll. Das letzte Konzept ist eine Sammlung von Traits, die die Eigenschaften der Anwendungsumgebung beschreiben, einschließlich Funktionen wie Auto-Scaling und Ingress, die für den Betrieb von Anwendungen wichtig sind, aber in verschiedenen Umgebungen auf unterschiedliche Weise implementiert werden können.

Das Open Application Model soll dabei plattformunabhängig sein und beliebig erweiterbar. Weitere Informationen finden sich auf GitHub, Microsoft hat mit Rudr eine erste Beispielimplementierung auf Basis von Kubernetes vorgestellt.

Dapr ist eine quelloffene, portable, ereignisgetriebene Laufzeitumgebung, die es Entwicklern einfacher machen soll, robuste, zustandslose und zustandsabhängige Microservices-Anwendungen zu erstellen, die auf der Cloud und dem Edge laufen. Dapr soll laut Microsoft mit einer beliebigen Programmiersprachen und Frameworks funktionieren.

Dapr besteht aus einer Reihe von Bausteinen, auf die über Standard-HTTP- oder gRPC-APIs zugegriffen wird, die von jeder Programmiersprache aus aufgerufen werden können. Jeder Baustein soll dabei unabhängig vom Rest verwendet werden können. Dapr ist plattformunabhängig, auf diese Weise können Entwickler Microservice-Anwendungen erstellen, die sowohl auf der Cloud als auch auf Edge-Geräten ohne Codeänderungen ausgeführt werden können.

Zu den ersten Bausteinen im Alpha-Release der Runtime gehören unter anderem eine Service Invocation, State Management und Publish/Subsribe-Messaging zwischen verschiedenen Diensten. Einen detaillierten Überblick bietet auch hier das GitHub-Repository. (bbo)