Die erste Lektion hat geklärt, was die Cloud ist und wer wofür verantwortlich ist. Jetzt geht es um die Frage, warum Firmen sie nutzen: wie man dort bezahlt, was „Serverless“ bedeutet und welche Vorteile die Cloud bringt.

Das verbrauchsbasierte Modell

Cloud Computing arbeitet nach einem verbrauchsbasierten Modell (englisch consumption-based model). Sie zahlen für die IT-Ressourcen, die Sie nutzen, und für nichts darüber hinaus. Statt ein eigenes Rechenzentrum zu kaufen und zu betreiben, mieten Sie Rechenleistung und Speicher und geben sie zurück, wenn Sie fertig sind.

In der klassischen IT-Planung begegnen Ihnen zwei Begriffe:

  • CapEx (capital expenditure, Investitionsausgaben): Geld, das Sie vorab für physische Infrastruktur ausgeben, also für Server, Netzwerkgeräte und Platz im Rechenzentrum.
  • OpEx (operational expenditure, laufende Betriebsausgaben): Ausgaben für Dienste, die sich über die Zeit verteilen.

Weil Sie Cloud-Dienste bezahlen, während Sie sie verbrauchen, zählt Cloud Computing zu den Betriebsausgaben. Das bringt vier Vorteile: keine Vorabkosten für Hardware oder Rechenzentrum, keine Anschaffung von Kapazität, die dann brachliegt, die Möglichkeit, bei steigender Nachfrage Ressourcen hinzuzufügen, und die Möglichkeit, sie bei sinkender Nachfrage wieder freizugeben.

Zwei Preismodelle im Vergleich

Im klassischen Rechenzentrum schätzen Sie den künftigen Bedarf im Voraus. Schätzen Sie zu hoch, geben Sie Geld für Technik aus, die ungenutzt herumsteht. Schätzen Sie zu niedrig, leiden Ihre Anwendungen unter schlechter Leistung. Zur Abhilfe müssen Sie Hardware, Strom und Kühlung bestellen, einbauen und einrichten.

In der Cloud passen Sie die Ressourcen an den tatsächlichen Bedarf an. Brauchen Sie mehr, fügen Sie virtuelle Maschinen hinzu. Sinkt der Bedarf, entfernen Sie sie wieder. Sie zahlen nicht für Leerlauf. Im Englischen heißt das Pay-as-you-go: Sie zahlen in der Regel nur für die Dienste, die Sie verbrauchen. Das hilft, laufende Kosten zu planen und zu steuern, die Infrastruktur effizienter zu betreiben und mit dem Bedarf zu wachsen oder zu schrumpfen.

Klassisches Rechenzentrum Cloud
Ausgabenart CapEx: Anschaffung vorab OpEx: Bezahlung nach Verbrauch
Kapazität im Voraus geschätzt und fest passt sich dem Bedarf an
Zu viel geschätzt ungenutzte Technik kostet trotzdem Sie geben Ressourcen frei und zahlen nicht mehr dafür
Zu wenig geschätzt Leistung leidet, bis neue Hardware läuft Sie fügen Ressourcen hinzu

Serverless

Zwischen „ich betreibe die Maschine selbst“ und „ich nutze eine fertige Anwendung“ gibt es die Möglichkeit, nur noch den eigenen Code laufen zu lassen. Man nennt das Serverless. Der Name führt in die Irre: Ihr Code läuft weiterhin auf einem Server. Der Unterschied ist, dass sich Ihr Team nicht mehr um die Server-Infrastruktur kümmert. Diese Verantwortung trägt der Cloud-Anbieter.

Serverless-Dienste laufen meist ereignisgesteuert: Ein Ereignis löst den Code aus, etwa eine Nachricht in einer Warteschlange oder eine neu hochgeladene Datei. Die Dienste skalieren je nach Bedarf nach oben und unten. Abgerechnet wird in der Regel nach Nutzung. Findet kein Verbrauch statt, entstehen keine Kosten.

Ein bekannter Azure-Dienst dafür ist Azure Functions: Sie schreiben kleine Codeblöcke, die auf Ereignisse reagieren, und der Dienst erledigt den Rest. Ein zweites Beispiel ist Azure Logic Apps für automatisierte Abläufe.

Ein Beispiel: Die ausgedachte Fotobuch-Firma „Bildwerk“ will jedes hochgeladene Foto automatisch verkleinern. Ein kleiner Code-Baustein startet bei jedem Upload, verkleinert das Bild und endet. In ruhigen Nächten läuft er nicht und kostet nichts.

Die Vorteile der Cloud

Hochverfügbarkeit. Hochverfügbarkeit zielt darauf, dass Ihre Ressourcen immer verfügbar sind, egal welche Störungen auftreten. Azure gibt je nach Dienst Verfügbarkeitszusagen, die in den Service Level Agreements (SLAs) stehen.

Skalierbarkeit. Sie passen Ressourcen an den Bedarf an. Es gibt zwei Arten. Vertikal skalieren heißt, die Leistung einer Ressource zu ändern: Sie geben einer virtuellen Maschine mehr CPU oder Arbeitsspeicher (hochskalieren) oder weniger (herunterskalieren). Horizontal skalieren heißt, die Anzahl der Ressourcen zu ändern: Sie fügen weitere Maschinen oder Container hinzu (Scale-out) oder nehmen welche weg (Scale-in), manuell oder automatisch.

Zuverlässigkeit. Das ist die Fähigkeit eines Systems, sich von Ausfällen zu erholen und weiterzuarbeiten. Durch den dezentralen Aufbau können Ressourcen in Regionen weltweit liegen. Fällt eine Region aus, laufen die anderen weiter.

Vorhersagbarkeit. Sie betrifft die Leistung und die Kosten. Bei der Leistung helfen Autoscaling, Lastverteilung und Hochverfügbarkeit. Bei den Kosten können Sie den Verbrauch in Echtzeit verfolgen, auswerten und künftige Ausgaben abschätzen, zum Beispiel mit dem Azure Pricing Calculator. Beides hängt laut Microsoft stark vom Azure Well-Architected Framework ab.

Sicherheit und Governance. Vorlagen (Templates) sorgen dafür, dass bereitgestellte Ressourcen Ihre technischen und rechtlichen Vorgaben erfüllen. Eine Prüfung in der Cloud meldet Ressourcen, die von Ihrer Vorgabe abweichen. Je nach Betriebsmodell werden Software-Updates automatisch eingespielt. Wollen Sie maximale Kontrolle, bietet IaaS Ihnen die Ressourcen und überlässt Ihnen Betriebssystem und Software. Wollen Sie Wartung abgeben, passen PaaS oder SaaS besser. Gegen verteilte Denial-of-Service-Angriffe (DDoS) sind Cloud-Anbieter in der Regel gut aufgestellt.

Verwaltbarkeit. Hier gibt es zwei Seiten. Verwaltung der Cloud: automatisch skalieren, Ressourcen aus Vorlagen bereitstellen, die Gesundheit überwachen und defekte Ressourcen automatisch ersetzen, Warnungen nach festgelegten Messwerten erhalten. Verwaltung in der Cloud: über ein Webportal, die Befehlszeile (CLI), Programmierschnittstellen (APIs) oder PowerShell.

Übung 1

Die ausgedachte Online-Apotheke „Kräuterweg“ hat jeden Dezember doppelt so viele Besucher wie im Rest des Jahres. Bisher kauft sie jeden Herbst Server für die Spitze, die dann zehn Monate fast leer laufen. Außerdem lädt ein Partner täglich einmal eine Preisliste hoch, die ein kleines Programm einlesen muss.

a) Ordnen Sie die Anschaffung der Server und die Bezahlung nach Verbrauch den Begriffen CapEx und OpEx zu. b) Mit welcher Art der Skalierung deckt Kräuterweg die Dezember-Spitze ab, und welche Alternative gäbe es? c) Welche Art Dienst eignet sich für das Einlesen der Preisliste, und warum?

Lösung 1

a) Die Server im Herbst zu kaufen ist CapEx: Geld wird vorab für physische Infrastruktur ausgegeben. Die Bezahlung nach Verbrauch ist OpEx, so arbeitet die Cloud.

b) Für zusätzliche Besucher fügt Kräuterweg weitere virtuelle Maschinen oder Container hinzu, das ist horizontale Skalierung (Scale-out), und gibt sie im Januar wieder frei (Scale-in). Die Alternative ist vertikale Skalierung: einer Maschine mehr CPU und Arbeitsspeicher geben.

c) Ein Serverless-Dienst wie Azure Functions: Der Code reagiert auf ein Ereignis (die hochgeladene Datei), läuft nur kurz, und ohne Verbrauch entstehen keine Kosten. Kräuterweg muss keine Server pflegen.

Weiterlesen