IaaS vs. PaaS vs. SaaS: Leistungsumfang, Verantwortung des Nutzers, Freiheit und Betriebsaufwand

IaaS, PaaS und SaaS unterscheiden Cloud-Dienste danach, wie viel der Anbieter bereitstellt. IaaS (Infrastructure as a Service) stellt Infrastruktur wie virtuelle Maschinen, Speicher und Netzwerke bereit; ab dem Betriebssystem aufwärts verwaltet der Nutzer alles selbst. Bei PaaS (Platform as a Service) stellt der Anbieter zusätzlich Betriebssystem, Middleware und Laufzeitumgebungen für Programmiersprachen bereit, und der Nutzer bringt seine eigenen Anwendungen und Daten mit. SaaS (Software as a Service) stellt die Anwendung selbst bereit, die der Nutzer einfach über einen Webbrowser oder Ähnliches verwendet. Je weiter man von IaaS in Richtung SaaS geht, desto geringer wird der Betriebsaufwand, aber desto weniger kann der Nutzer frei wählen.

MerkmalIaaSPaaSSaaS
Was der Anbieter stelltInfrastruktur wie virtuelle Maschinen, Speicher und Netzwerke (einschließlich Gebäuden, physischer Geräte und Virtualisierungsschicht darunter)Alles aus IaaS plus Betriebssystem, Middleware und LaufzeitumgebungenAlles, bis einschließlich der Anwendung
Was der Nutzer verwaltetBetriebssystem, Middleware, Anwendungen und Daten; auch Betriebssystem-Updates und Sicherheitspatches sind Sache des NutzersDie eigenen Anwendungen und Daten sowie deren EinstellungenDaten, Benutzerkonten und Berechtigungen sowie Anwendungseinstellungen
GestaltungsfreiheitHoch: Betriebssystem und Software frei wählbar und installierbarMittel: Entwicklung im Rahmen der vom Anbieter unterstützten Sprachen und LaufzeitumgebungenGering: Nutzung der angebotenen Funktionen und Einstellungen
BetriebsaufwandGroß: Der Nutzer plant und erledigt Betriebssystem-Updates, Überwachung, Backups, Skalierung usw.Klein: Wartung der Laufzeitumgebung und Skalierung übernimmt oft der AnbieterAm kleinsten: Software-Updates und Störungsbehebung übernimmt der Anbieter
Typische NutzerInfrastruktur-Fachleute und Organisationen, die ihre eigenen Server in die Cloud verlagernAnwendungsentwicklerFachanwender und allgemeine Nutzer der Anwendung
Beispiel für das AbrechnungsmodellOft nutzungsabhängig nach Anzahl der virtuellen Maschinen und Laufzeit, Speicherkapazität, Datentransfer usw.Oft nach Anzahl der Ausführungen, Laufzeit oder genutzten RessourcenOft ein Monats- oder Jahresabonnement pro Nutzer
Aufteilung im Modell der geteilten VerantwortungAnbieter bis einschließlich physischer Einrichtungen und Virtualisierungsschicht; Nutzer ab dem Gastbetriebssystem aufwärtsAnbieter bis einschließlich Betriebssystem und Laufzeitumgebung; Nutzer für Anwendungen und DatenAnbieter bis einschließlich der Anwendung; Daten, Konten und Zugriffseinstellungen bleiben beim Nutzer
Typische BeispieleDienste, die virtuelle Maschinen (virtuelle Server) vermieten, Blockspeicher, virtuelle NetzwerkeDienste, die eine Laufzeitumgebung für Anwendungen bereitstellen, verwaltete DatenbankdiensteWebmail, Online-Textverarbeitung und -Tabellenkalkulation, Groupware, Kundenbeziehungsmanagement (CRM)

Die Zahlenwerte sind typische Größenordnungen und variieren je nach Prozessgeneration und Produkt.

Wann welche Variante?

IaaS
Wenn Betriebssystem und Middleware selbst gewählt werden sollen, Systeme von den eigenen Servern weitgehend unverändert in die Cloud umziehen sollen oder Software mit ungewöhnlicher Konfiguration laufen soll. Im Gegenzug kümmert man sich auch selbst um Betriebssystem-Updates und Sicherheitseinstellungen.
PaaS
Wenn die Infrastrukturverwaltung dem Anbieter überlassen werden und man sich auf die Anwendungsentwicklung konzentrieren will. Man muss im Rahmen der vom Anbieter unterstützten Sprachen und Laufzeitumgebungen entwickeln.
SaaS
Wenn gängige Geschäftsfunktionen wie E-Mail, Dokumentenbearbeitung oder Kundenverwaltung sofort und ohne eigene Softwareentwicklung genutzt werden sollen. Die Funktionen sind auf das Angebotene beschränkt.

Häufige Fragen

Zu welchem Modell gehört Serverless (FaaS): IaaS, PaaS oder SaaS?

Man stellt nur den Funktionscode bereit und überlässt Laufzeitumgebung und Skalierung dem Anbieter, daher wird es meist als PaaS-ähnliche Form behandelt. Dienste, die eine Plattform zum Ausführen von Containern bereitstellen, heißen manchmal CaaS (Container as a Service) und werden zwischen IaaS und PaaS eingeordnet. Solche feineren Einteilungen unterscheiden sich je nach Anbieter und Quelle.

Ist bei SaaS die Sicherheit vollständig Sache des Anbieters?

Nein. Im Modell der geteilten Verantwortung übernimmt der Anbieter bei SaaS alles bis einschließlich der Anwendung, doch gespeicherte Daten, Benutzerkonten und Passwörter, die Einstellungen der Mehr-Faktor-Authentifizierung und der Umfang der Dateifreigabe bleiben in der Verantwortung des Nutzers. Ein Vorfall, bei dem Dateien versehentlich für jeden sichtbar gemacht werden, ist ein Problem auf der Seite des Nutzers.

Wo sind IaaS, PaaS und SaaS definiert?

Am häufigsten zitiert wird die Definition des Cloud-Computings, die das US-amerikanische National Institute of Standards and Technology (NIST) 2011 veröffentlicht hat (SP 800-145). Sie legt drei Dienstmodelle der Cloud fest: SaaS, PaaS und IaaS.

Wie unterscheidet sich IaaS vom eigenen Betrieb (On-Premises)?

On-Premises bedeutet, eigene Geräte zu kaufen, sie in eigenen Räumlichkeiten aufzustellen und alles vom Gebäude und der Stromversorgung aufwärts selbst zu verwalten. Bei IaaS wird die Verwaltung von Gebäuden, physischen Geräten und Virtualisierungsschicht dem Anbieter überlassen, und man mietet nur, was man braucht, wenn man es braucht. Dafür fallen die Nutzungsgebühren laufend an, und Störungen beim Anbieter wirken sich auf einen aus.

Verständnis prüfen

Bei welchem Cloud-Dienst stellt der Anbieter Infrastruktur wie virtuelle Maschinen, Speicher und Netzwerke bereit, während der Nutzer Betriebssystem, Middleware und Anwendungen selbst installiert und verwaltet?

  1. ASaaS
  2. BIaaS
  3. CPaaS
Antwort und Erläuterung anzeigen

Antwort: B. IaaS

Cloud-Dienste werden danach eingeteilt, wie viel der Anbieter bereitstellt. IaaS (Infrastructure as a Service) stellt Infrastruktur wie virtuelle Maschinen, Speicher und Netzwerke bereit, und der Nutzer verwaltet Betriebssystem und Anwendungen darauf. PaaS (Platform as a Service) stellt alles bis zur Ausführungsumgebung wie Betriebssystem und Middleware bereit, SaaS (Software as a Service) alles bis zur Anwendung; der Nutzer hat entsprechend weniger zu verwalten.

Was verwaltet der Nutzer bei einem IaaS-Cloud-Dienst im Allgemeinen selbst?

  1. ADie Rechenzentrumsgebäude sowie die Strom- und Klimatechnik
  2. BDie physischen Geräte wie Server und Speicher sowie die Virtualisierungsplattform
  3. CBetriebssystem, Middleware und Anwendungen, die auf den virtuellen Maschinen laufen
Antwort und Erläuterung anzeigen

Antwort: C. Betriebssystem, Middleware und Anwendungen, die auf den virtuellen Maschinen laufen

Bei IaaS (Infrastructure as a Service) verwaltet der Anbieter Gebäude, Einrichtungen, physische Geräte und die Virtualisierungsplattform, und der Nutzer verwaltet alles ab dem Betriebssystem auf den virtuellen Maschinen aufwärts. Bei PaaS verwaltet der Anbieter auch Betriebssystem und Middleware, und der Nutzer verwaltet Anwendungen und Daten; bei SaaS verwaltet der Anbieter alles bis zur Anwendung, und der Nutzer verwaltet die Daten und die Nutzungseinstellungen. So ändert sich mit dem Dienstmodell, wie Anbieter und Nutzer die Verantwortung untereinander aufteilen.

Es wird ein verwalteter Datenbankdienst in der Cloud genutzt (ein Dienst, bei dem der Anbieter die Datenbanksoftware betreibt). Was bleibt nach dem Modell der geteilten Verantwortung im Allgemeinen in der Verantwortung des Nutzers?

  1. ADas Einspielen von Sicherheitskorrekturen in das Betriebssystem der Server, auf denen die Datenbank läuft, und in die Datenbanksoftware
  2. BDer Schutz der Rechenzentrumsgebäude und der physischen Geräte wie Server vor Ausfällen und Eindringlingen
  3. CDie Verwaltung der Benutzerkonten und Rechte der Datenbank, der Netzwerkbereiche, aus denen Verbindungen erlaubt sind, und der gespeicherten Daten
Antwort und Erläuterung anzeigen

Antwort: C. Die Verwaltung der Benutzerkonten und Rechte der Datenbank, der Netzwerkbereiche, aus denen Verbindungen erlaubt sind, und der gespeicherten Daten

Nach dem Modell der geteilten Verantwortung teilen sich Cloud-Anbieter und Nutzer die Verantwortung für Sicherheit und Betrieb, und wo die Grenze liegt, hängt von der Art des Dienstes ab. Bei einem verwalteten Datenbankdienst übernimmt der Anbieter neben den physischen Einrichtungen auch die Aktualisierung des Betriebssystems und der Datenbanksoftware. Wer auf welche Daten zugreifen darf, aus welchen Netzwerken Verbindungen erlaubt sind und welche Daten gespeichert werden, bleibt dagegen bei jeder Art von Dienst in der Verantwortung des Nutzers. Ein Vorfall, bei dem eine Fehlkonfiguration eine Datenbank für das Internet offenlegt, ist ein Problem auf der Seite des Nutzers.

  1. Bei serverlosen Funktionen (FaaS) antwortet manchmal nur der erste Aufruf einer Funktion, die eine Weile nicht aufgerufen wurde, um einige hundert Millisekunden bis einige Sekunden langsamer. Welche Erklärung dieses Phänomens ist richtig?
  2. Cloud-Speicher wird für drei Zwecke eingesetzt: (1) als Festplatte an eine virtuelle Maschine angebunden, mit einem Dateisystem versehen und für die Datendateien einer Datenbank genutzt; (2) von mehreren Servern gleichzeitig eingebunden und als gemeinsames Verzeichnis genutzt; (3) zum Lesen und Schreiben einer großen Zahl von Bildern per Schlüssel (Name) über eine API per HTTP, wobei die Kapazität wächst, ohne vorab festgelegt zu werden. Welche Kombination von Speicherarten ist für (1) bis (3) geeignet?
  3. Es werden virtuelle Maschinen genutzt, die nur nach genutzter Zeit abgerechnet werden, zu 40 Yen pro Stunde (ein erfundener Preis). Normalerweise laufen 2 Maschinen den ganzen Monat (30 Tage) durch, und an 20 Werktagen kommen je 6 Stunden am Tag 4 weitere hinzu, um die Last abzufangen. Wie hoch sind die Kosten für den Monat?

Übungsfragen zu Grundlagen von Cloud und Containern

Wichtige Begriffe erklärt

Modell der geteilten Verantwortung (Shared Responsibility Model)
Grundsatz, nach dem sich bei der Nutzung der Cloud der Cloud-Anbieter und der Nutzer die Verantwortung für Sicherheit und Betrieb teilen. Der Anbieter ist für die Rechenzentrumsgebäude und die physischen Geräte verantwortlich, der Nutzer für die gespeicherten Daten, Konten und Zugriffseinstellungen, die Freigabe von Netzwerkverbindungen usw. Die Grenze dazwischen hängt von der Art des Dienstes ab, etwa IaaS, PaaS, SaaS oder verwaltete Dienste. Viele durch Fehlkonfiguration verursachte Datenlecks entstehen im Verantwortungsbereich des Nutzers.
Serverless Computing
Art, Anwendungen zu betreiben, bei der die Bereitstellung von Servern, die Verwaltung ihrer Anzahl und die Aktualisierung des Betriebssystems dem Cloud-Anbieter überlassen werden, sodass sich die Nutzer nicht darum kümmern müssen. Die typische Form ist FaaS (Function as a Service): Eine Funktion läuft nur, wenn eine Anfrage oder ein Ereignis eintrifft, und die Kosten richten sich nach der Zahl der Ausführungen, ihrer Dauer und dem genutzten Arbeitsspeicher. Die Skalierung mit der Last erfolgt automatisch, und bei Nichtnutzung fallen kaum Kosten an. Andererseits gibt es Einschränkungen wie Kaltstarts, bei denen der erste Aufruf nach einer Ruhepause langsam ist, und Obergrenzen für die Ausführungszeit.
Hypervisor
Software, die mehrere virtuelle Maschinen auf einem Computer betreibt. Sie teilt den Betriebssystemen der VMs CPU, Speicher und Geräte zu und isoliert sie voneinander. Auch Virtual Machine Monitor genannt.
Autoscaling
Mechanismus, der die Zahl der Server oder Container je nach Lastkennzahlen (CPU-Auslastung, Anfragerate, Länge von Warteschlangen usw.) automatisch erhöht oder verringert. Das Hinzufügen von Maschinen heißt Scale-out, das Entfernen Scale-in. Der HorizontalPodAutoscaler von Kubernetes berechnet die benötigte Zahl als ⌈aktuelle Zahl × aktueller Wert ÷ Zielwert⌉. Neue Instanzen brauchen Zeit, bis sie arbeiten; plötzlichen Lastanstiegen begegnet man daher mit einem Zielwert, der Reserven lässt, und vor dem Verringern ist häufig eine Wartezeit vorgesehen, damit sich die Zahl nicht zu oft ändert.
Objektspeicher (Object Storage)
Speicher, der Daten als Objekte mit einem Schlüssel (Namen) und Metadaten ablegt und sie über eine HTTP-API als Ganzes liest und schreibt. Die Kapazität lässt sich nahezu unbegrenzt erweitern, ohne vorab festgelegt zu werden, und die Daten werden im Allgemeinen für hohe Dauerhaftigkeit auf mehrere Geräte oder Standorte repliziert. Objektspeicher eignet sich für Bilder, Videos, Backups, Logs und die Dateien statischer Websites. Für das Ändern von Teilen von Dateien wie in einem Dateisystem oder für Datendateien von Datenbanken ist er nicht geeignet; dafür verwendet man Blockspeicher, der virtuelle Festplatten bereitstellt, oder Dateispeicher, der ein gemeinsames Dateisystem bereitstellt.
SLA (Service Level Agreement)
Vereinbarung zwischen dem Anbieter und dem Nutzer eines IT-Dienstes, die Qualitätsniveaus wie Verfügbarkeit, Antwortzeit, Zeit bis zur Wiederherstellung nach Störungen und Supportzeiten festlegt, zusammen damit, wie sie gemessen werden und was geschieht, wenn sie nicht eingehalten werden.

Verwandte Vergleiche