Die Kosteneinschätzung für Cloud gehostete Applikationen ist nicht immer einfach, Überraschungen sind daher nicht ausgeschlossen. In diesem Artikel erfahren Sie, wie Sie Kosten im Betrieb und bei der Entwicklung sparen, und gleichzeitig von neuen Cloud Features profitieren können.
von Stefan Zettel
Unerwartet hohe Cloud Kosten
Obwohl die IT-Budgets für Cloud basierte Dienste weltweit wachsen, verfolgen nur wenige Firmen, was diese Ausgaben in Bezug auf konkrete Geschäftsergebnisse wirklich bringen. Laufen ein paar virtuelle Maschinen ein paar Wochen länger, weil jemand vergass diese manuell herunterzufahren oder sind temporär generierte Daten plötzlich x-mal grösser, ist die Überraschung Ende Monat oft recht gross, wenn die monatliche Rechnung viel höher ausfällt als erwartet.
Der einfachste Weg ist nicht immer der günstigste
Oft werden existierende on-Premises Applikationen eins-zu-eins in die Cloud verschoben. Bei diesem «Lift and Shift» werden IaaS Dienste wie virtuelle Server benutzt, um unter anderem Datenbanken, Web Server und die eigentlichen Anwendungen zu betreiben. Da diese Applikationen typischerweise nicht für die Cloud entwickelt wurden, laufen diese z.B. auch, wenn sie von keinem Benutzer verwendet werden. Oder sie sind auf maximale Benutzerauslastung ausgelegt und benötigen daher unnötig viele Ressourcen.
Wegen der Verwendung von IaaS Diensten wird auch der kundenseitige Administrationsaufwand nicht erheblich gesenkt.
IaaS
Infrastructure as a Service
Der Kunde verwendet virtualisierte Server, Netzwerke, Load Balancer, Firewalls etc. welche in der Cloud betrieben werden. Er muss z.B. die Netzwerkkomponenten selber konfigurieren und sich auch selber um die Sicherheitsupdates der Basissoftware kümmern. Datenbanken, Web Server und Applikationen muss der Kunde selber ausrollen. Der Kunde übernimmt viel Verantwortung, gewinnt dafür aber auch grösstmögliche Flexibilität.
PaaS
Platform as a Service
Der Cloud Provider übernimmt viel Verantwortung und stellt dem Kunden höherwertige Dienste zur Verfügung, inklusive Ausfallsicherheit (Redundanz) und Skalierbarkeit. Der Provider übernimmt die Wartung und Konfiguration der zugrundeliegenden Infrastruktur wie z.B. Netzwerken, Betriebssystemen, Datenbanken oder Web Server.
Der Kunde kann sich ausschliesslich auf die Bereitstellung der Applikationen konzentrieren.
Bei der Datenhaltung gibt es ebenfalls oft Kostenüberraschungen. Zum Beispiel wenn eine Applikation für den periodischen Datenaustausch viele grosse Dateien in Verzeichnisse ablegt. Der oft günstigere, Cloud native Blob Storage (AWS S3 oder Azure Blob) ist wegen technischen Einschränkungen von herkömmlichen Applikationen nicht einfach so verwendbar.
Auch wenn Blob Storage verwendet werden kann, muss anhand der Zugriffshäufigkeit geklärt werden, ob alle Daten oder wenigstens Teile davon auf einen günstigeren Datenspeicher (z.B. Cold, Archive) ausgelagert werden kann.
Vorteile von Plattform Services nutzen
Alle grossen Cloud Anbieter haben ein riesiges Angebot von PaaS basierten Diensten, welche oft skalierbar und resilient aufgebaut sind. Zum Beispiel Web Application Hosting, relationale und nicht relationale Datenbanken, Data Analytics Funktionalität, Serverless Functions und Machine Learning Lösungen mit vortrainierten ML Modellen.
Die Verwendung solcher Dienste erlauben komplexe neue Applikationsfunktionalitäten, welche ohne PaaS kaum denkbar wären. Der operationelle Administrationsaufwand ist bei solchen PaaS Diensten erstaunlich gering, oft beschränkt er sich auf das Monitoring.
Für einfachere, kundenspezifische Applikationen ist die Migration in die Cloud oft recht unkompliziert. Meistens reicht es, einen App Hosting Service (Azure App Service oder AWS Elastic Beanstalk) und den entsprechenden Datenbankservice in die Cloud zu verschieben. Applikationsüberwachung und -protokollierung, HTTPS Zertifikatsmanagement und Custom Domain Registrierung sind Teil des Serviceangebots.
Softwareentwicklung vereinfachen und beschleunigen
PaaS basierte Dienste bringen nicht nur Vorteile im Betrieb sondern auch in der Software Entwicklung. SaaS (Software as as Service) basierte DevOps Angebote ermöglichen es, mit verteilten Teams zu arbeiten, agile Projekte aufzusetzen, Sourcecode sicher in der Cloud zu speichern, zu verwalten und zu überprüfen (Code Reviews). Eine grosse Anzahl von vorgefertigten und konfigurierbaren Tasks ermöglicht es, den Arbeitsablauf (Build, Test und Deployment) auf Knopfdruck zu automatisieren. Somit können Softwareänderungen und Bugfixes schnell und nachvollziehbar innerhalb von Minuten ausgerollt werden.
Auch durch die Integration von PaaS Services lässt sich die Applikationsentwicklung beschleunigen. Identity Management Lösungen wir z.B. Azure Active Directory erlauben es, die Benutzerverwaltung und Berechtigungsmodelle auszulagern. Gleichzeitig profitiert der Benutzer von neuen Funktionalitäten wie Single Sign-On und Multi Factor Authentication.
Fazit
Richtig eingesetzt, bietet die Cloud für Applikationshosting viele neue Möglichkeiten. Skalierbarkeit, Verfügbarkeit und Resilienz sind bei Cloud Plattformen eingebaut. Der Administrationsaufwand kann gesenkt und die Sicherheit erhöht werden. Diese Vorteile kommen jedoch nur dann voll zum Tragen, wenn PaaS basierte Dienste eingesetzt werden.
Um eine kosteneffiziente Cloud Nutzung zu erreichen, muss vorerst klar sein, welches Problem genau gelöst werden soll. Steht die Nutzung neuer Features im Vordergrund, welche ohne Cloud nicht möglich wären (z.B. Push Notifications, Bots, Voice und Video Communication, Office 365 Integration, AI Dienste etc.)? Dann werde die Kosten vermutlich steigen, der Kundennutzen jedoch auch.
Sind operationelle Aspekte wichtig? Dann können mit PaaS basierten Diensten die Gesamtkosten vermutlich gesenkt werden, wenn interne IT-Ressourcen eingespart und der Administrationsaufwand gesenkt werden kann.
Schlussendlich müssen auch Langzeitfolgen betrachtet werden. Was kosten die Cloud-Dienste über mehrere Jahre? Was bedeutet die Bindung zu einem Cloud Provider? Könnten Daten und Services zum Beispiel jemals migriert werden?
Haben sie Fragen oder sind sie interessiert an unseren Dienstleistungen? Wir freuen uns von Ihnen zu hören.