Platform-as-a-Service (PaaS) ist ein Cloud-Computing-Modell, bei dem ein externer Cloud-Anbieter eine Umgebung pflegt, in der Kunden ihre eigenen Anwendungen gestalten, entwickeln, ausführen und verwalten können.
Beim PaaS-Modell stellt der Anbieter in der Regel die gesamte erforderliche Infrastruktur bereit, einschließlich Hardware und Software. Dadurch können Kunden nicht nur kostspielige IT-Infrastruktur-Investitionen, sondern auch den Kauf von Software-Lizenzen und Entwicklungstools vermeiden.
Was sind die Unterschiede zwischen PaaS, IaaS und SaaS?
Vor der detaillierten Beschreibung des PaaS-Modells ist es wahrscheinlich hilfreich, einen Überblick über die beiden anderen wichtigen „As-a-Service“-Optionen für das Cloud-Computing zu geben.
Infrastructure-as-a-Service (IaaS): Während der Cloud-Anbieter die eigentliche Cloud-Infrastruktur (einschließlich Server, Datenspeicher und Netzwerktechnologie) für den Kunden verwaltet, verbleibt die Zuständigkeit für alle anderen operativen Aspekte (einschließlich Installation, Konfiguration und Verwaltung der Software, Anwendungen, Middleware und Betriebssysteme) beim Kunden.
Software-as-a-Service (SaaS): Der Anbieter übernimmt die vollständige Verwaltung der Anwendungen für den Kunden und hostet diese dabei in der Cloud, auf die ein Abonnent zugreifen kann. Die Anwendung muss nicht auf einem Gerät installiert werden. Stattdessen erfolgt der Zugriff über das Internet oder eine API (Application Programming Interface).
Im Prinzip besteht der wesentliche Unterschied zwischen PaaS und IaaS darin, dass der PaaS-Anbieter die Bereitstellung und Wartung der Software, Hardware und auf der Plattform verwendeten Tools übernimmt, während diese Komponenten bei einem IaaS-Modell in der Verantwortung des Kunden liegen.
Ein anderer wichtiger Unterschied betrifft die Nutzung der PaaS- oder IaaS-Lösung. Die PaaS-Umgebung wird praktisch exklusiv für die Software- und Anwendungsentwicklung verwendet. Sie ist im Grunde eine Schnittstelle, über die Entwickler in einer Remote-Konfiguration auf Software und Entwicklungstools zugreifen.
Typen von PaaS-Umgebungen
Die drei PaaS-Haupttypen sind:
- Public PaaS: Eine öffentliche PaaS-Lösung (Public PaaS) ermöglicht Entwicklern die Erstellung, Ausführung, Verwaltung und Bereitstellung von Anwendungen über eine in der Public Cloud gehostete Plattform. Eine Public PaaS-Umgebung ist meist die erschwinglichste PaaS-Service-Option, da Kunden keine Aspekte der Cloud-Infrastruktur bzw. des Entwicklungs-Stacks verwalten oder warten müssen – weder das Betriebssystem noch Server oder Datenbanken. Dadurch können sich Entwickler ausschließlich auf die Anwendungsentwicklung zu konzentrieren. Allerdings bietet eine Public-PaaS-Lösung nicht den Grad an Datenschutz und Sicherheit, den einige Unternehmen benötigen.
- Private PaaS: Anfangs waren alle PaaS-Lösungen an die Public Cloud gebunden. Da für Unternehmen aber die Erfüllung strenger Sicherheits- und Datenschutzvorgaben zunehmend in den Vordergrund rückte, führten Cloud-Anbieter wie IBM Cloud, Google Cloud, Microsoft Azure und Amazon Web Services zunehmend private und hybride PaaS-Lösungen ein.
- Private PaaS-Lösungen bieten Kunden die Möglichkeit, ihre Cloud-Umgebung anzupassen und je nach geschäftlichen Anforderungen und Präferenzen ihre eigene Hardware, ein privates Rechenzentrum oder andere Assets zu nutzen.
- Beim Private PaaS-Modell profitieren Kunden zwar von mehr Flexibilität und höherer Sicherheit, allerdings wird die IT-Umgebung damit auch komplexer. In einigen Fällen müssen Kunden Infrastrukturelemente erwerben, verwalten und warten und dabei sicherstellen, dass jede Komponente innerhalb des gesamten Frameworks ordnungsgemäß konfiguriert ist. Ein Private PaaS-Lösung ist in der Regel auch deutlich kostspieliger als eine öffentliche Option, da die Kosten der Cloud-Umgebung nicht über mehrere Benutzer verteilt werden.
- Hybrid PaaS: Unternehmen können Public PaaS- und Private PaaS-Computing-Umgebungen in einem Hybrid PaaS-Modell vereinen. Sie können zum Beispiel die Anwendungsentwicklung und Tests in der Public Cloud durchführen und zum Speichern sensibler Daten oder Ausführen von Transaktionen eine Private Cloud nutzen.
- Das Hybrid Cloud-Modell gewinnt zunehmend an Beliebtheit, da Workloads in der optimalen Umgebung ausgeführt sowie skaliert und zudem schnell, mühelos und flexibel zwischen verschiedenen Umgebungen verschoben werden können. Lesen Sie dazu auch unseren kürzlich veröffentlichten Beitrag zur Hybrid Cloud.
Weitere PaaS-Lösungen
Neben den drei PaaS-Haupttypen gibt es auch verschiedene spezifische PaaS-Lösungen:
- Artificial Intelligence PaaS (AiPaaS): Eine speziell zum Erstellen von KI-Anwendungen konzipierte PaaS-Umgebung
- Integration PaaS (iPaaS): Eine zum Integrieren von Anwendungen sowie Unternehmensdaten, -prozessen und -lösungen verwendete PaaS-Lösung
- Communications PaaS (cPaaS): Eine PaaS-Lösung, die Entwicklern die Einbindung von Kommunikationsservices (einschließlich Audio- und Videoanrufe, textbasierte Chats oder Instant Messaging und Social Media) in den Anwendungsentwicklungsprozess ermöglicht
- Mobile PaaS (mPaaS): Eine PaaS-Umgebung mit wenig Code, speziell für die Entwicklung mobiler Anwendungen
Wie funktioniert PaaS?
Die PaaS-Umgebung besteht aus vier Hauptkomponenten:
- Eine grafische Benutzeroberfläche (GUI), über die Entwicklungstools bereitgestellt werden
- Eine Cloud-Infrastruktur mit Speicher, Betriebssystemen und virtuellen Maschinen
- Produktentwicklungs-Software, einschließlich Codes, Debugger und Compiler
- Middleware, die die Benutzeroberfläche mit der Cloud verbindet
Da die PaaS-Lösung Entwicklern über die GUI Remote-Zugriff auf den Entwicklungs-Stack bietet, können sie von praktisch überall auf der Welt aus auf die Plattform zugreifen und damit arbeiten. Middleware ermöglicht Entwicklungsteams das direkte Arbeiten auf der Plattform, um Anwendungen zu erstellen, zu testen und einzuführen. Diese Arbeit kann gleichzeitig oder asynchron erfolgen.
PaaS-Anwendungsszenarien
In den meisten Fällen wird die PaaS-Umgebung zum Bereitstellen eines Frameworks für Entwickler verwendet, damit diese cloudbasierte Anwendungen erstellen und anpassen können. Dieses Modell bietet viele inhärente Vorteile für das Entwicklungsteam, zum Beispiel:
- Ortsunabhängiger Zugriff auf das System und die Software über eine Internetverbindung
- Entwicklung von Anwendungen ohne den Aufwand für die Wartung von Hardware und Software am eigenen Standort
- Remote-Zusammenarbeit mit anderen Entwicklern
- Gleichzeitiges oder asynchrones Arbeiten mit anderen Teammitgliedern
- Bereitstellung fertiger Produkte
Durch vorprogrammierte Komponenten und Skalierbarkeit wird bei Verwendung eines PaaS-Modells deutlich weniger Code benötigt. Unternehmen können die Anwendungsentwicklung beschleunigen und Fehler reduzieren, indem sie sich auf getesteten und freigegebenen Code stützen.
Das PaaS-Modell bietet weitere Anwendungsszenarien, die für Unternehmen von Vorteil sein können. Hier noch weitere Beispiele dafür, wie Unternehmen PaaS häufig einsetzen:
- Entwicklung von APIs, mit denen Unternehmen Daten weitergeben oder Prozesse und Services zwischen Anwendungen, Lösungen oder Workflow-Tools integrieren können
- Unterstützung der Anwendungsentwicklung und Datenanalyse für IoT-Geräte (Internet of Things, IoT)
- Implementierung eines „Shift-Left-Ansatzes“ oder agilen Entwicklungsmodells
- Vereinfachung der Migration oder Verlagerung von Legacy-Anwendungen in die Cloud
Welche Vorteile bietet PaaS?
PaaS bietet Unternehmen folgende Vorteile:
Unterstützung der Belegschaft: Der Zugriff auf die PaaS-Umgebung erfolgt über das Internet, sodass Entwickler überall auf der Welt auf die nötigen Tools zugreifen und zusammenarbeiten können. Auf diese Weise kann das Unternehmen mehr Mitarbeiterpotenzial nutzen und Mitarbeiter in unterschiedlichen Zeitzonen und Regionen einsetzen.
Kosteneinsparungen: Statt von vornherein ein umfassendes und kostspieliges Softwarepaket zu kaufen, zahlen Kunden oder Entwickler beim PaaS-Modell eine Abonnementgebühr, die sich nach den benötigten Ressourcen richtet. Ebenso müssen Entwickler nur dann für mehr Speicher zahlen, wenn sie diesen benötigen. Dadurch werden unnötige Kapazitäten und Kapazitätsverschwendungen bei geringem Datenverkehr vermieden und das Unternehmen kann die Umgebung schnell skalieren, um unerwartete oder gelegentliche Bedarfsspitzen zu bewältigen.
Effizienz: PaaS-Plattformen umfassen vorprogrammierte Anwendungskomponenten wie Sicherheitsfunktionen und Suchmaschinen. Entwickler können diese Komponenten in ihre Anwendungen einbinden, statt sie von Grund auf neu programmieren zu müssen. Das beschleunigt häufig die Anwendungs- oder Software-Entwicklung und senkt die Zahl von Fehlern.
Zugriff: Die meisten PaaS-Modelle bieten Zugang zu einer Reihe hochentwickelter Tools für die Software-Entwicklung und Analyse, die von einer breiten Palette von Betriebssystemen, Datenbanken und Middleware unterstützt werden. Mit einem PaaS-Modell entfällt für Unternehmen die Notwendigkeit, kostspielige Softwarelizenzen zu erwerben und sich um Updates und Upgrades für Tools zu kümmern.
Plattformübergreifende Erstellung: Bei vielen Drittanbietern sind Entwicklungsoptionen verfügbar, mit denen Benutzer Produkte einfacher für mehrere Plattformen bereitstellen können. Die meisten PaaS-Umgebungen umfassen beispielsweise mPaaS-Funktionen, die Entwicklern die Optimierung einer klassischen Computer-Anwendung für Mobilgeräte ermöglichen. Außerdem lassen sich Anwendungen mit cPaaS-Lösungen mühelos um spezifische Funktionen ergänzen, z. B. für Videos, Anrufe und Textnachrichten.
Risikoarmes Experimentieren: PaaS ermöglicht Entwicklern das Experimentieren mit verschiedenen Entwicklungstools und Betriebssystemen, ohne dass große Investitionen in neue Software, Tools oder Infrastruktur anfallen.
Schnellere Markteinführung: PaaS umfasst die Hardware und Software, die zum Aufbau und für die Wartung der Entwicklungsplattform benötigt wird. Nach dem Zugriff auf die Plattform können Entwickler direkt mit der Erstellung beginnen. Dadurch können Kunden Anwendungen schneller entwickeln und einführen, was die allgemeine Markteinführungszeit verkürzt und eine schnellere Wertschöpfung ermöglicht.
Wie wählen Sie die richtige PaaS-Lösung aus?
Bei der Erwägung eines PaaS-Modells müssen Unternehmen ihre geschäftlichen Anforderungen und Ziele berücksichtigen. Bei einigen Unternehmen geht es um relativ einfache Anwendungsszenarien, andere benötigen jedoch komplexere Tools, erweiterte Sicherheitsmaßnahmen und Integrationen mit zahlreichen Geschäftssystemen.
Diese Aspekte sollten bei der Wahl eines PaaS-Anbieters berücksichtigt werden:
- Welche Tools und Software sind mit der PaaS-Lösung für Entwickler verfügbar? Haben Entwickler ausreichend Kontrollmöglichkeiten über die Umgebung?
- Unterstützt das PaaS-Angebot durch verschiedene Spracheinstellungen und beim Support eine globale, multikulturelle Belegschaft?
- Welche Sicherheitsmaßnahmen wurden implementiert, um den Schutz von Daten und Cloud-Workloads sicherzustellen?
- Lässt sich die PaaS-Lösung für künftige Geschäftsanforderungen skalieren?
- Kann die Technologie die hohen Anforderungen mit Blick auf die Anzahl an Anwendungen sowie Benutzern und das Wachstum des Unternehmens bewältigen?
- Gilt der PaaS-Anbieter bei Kunden als vertrauenswürdig und zuverlässig?