Die Motivation vieler Unternehmen, in die Cloud zu migrieren, ist die Effizienz ihrer IT zu steigern und Kosten zu senken. Doch führt der Lift & Shift-Ansatz allein oft nicht zu den erhofften Ergebnissen. Stattdessen stellen viele fest, dass die versprochenen Einsparungen ausbleiben und die Kosten sogar steigen. Wir zeigen anhand von drei Beispielen, wie wir Kosten in unseren Kundenprojekten erheblich optimieren konnten.
Cloud-Native Transformation: Der Schlüssel zur Kosteneffizienz
Um Kosten in der Cloud zu optimieren, ist es wichtig, bestehende Anwendungen in Cloud-Native-Architekturen zu transformieren. Das bedeutet, dass man sich von traditionellen, monolithischen Architekturen verabschiedet und stattdessen auf flexible, skalierbare und effizient verwaltbare Micro- & Makroservices setzt. Durch die durchgehende Nutzung von Managed Services und serverlosen Technologien können Unternehmen ihre Betriebskosten deutlich reduzieren.
Eine sorgfältige Auswahl der Cloud-Dienste kann zu erheblichen Einsparungen führen. Es ist wichtig, die richtigen Cloud-Dienste auszuwählen, um die Kosten zu optimieren. Zum Beispiel kann der Wechsel von spezifischeren Datenbanklösungen zu universelleren und kosteneffizienteren Optionen die Betriebskosten um mehr als 50% senken, wenn eine Anwendung in der AWS von einer Oracle-Datenbank zu einer OpenSource-Datenbank migriert wird.
Viele Kunden benötigen eine relationale Datenbank, können jedoch auf die speziellen Funktionen von Oracle verzichten. Eine PostgreSQL-Datenbank reicht aus.
Monitoring für tiefere Einblicke und Kostensenkungen:
Ein weiterer kritischer Faktor ist die Implementierung eines Monitoringsystems. In der Cloud-Umgebung reicht traditionelles Hardware-Monitoring nicht aus, da es wichtige Aspekte der Anwendungsleistung und des Nutzerverhaltens außer Acht lässt. Um diese Aspekte zu berücksichtigen, empfiehlt es sich, ein umfassendes Monitoring-System zu implementieren, das alle relevanten Daten erfasst und auswertet. Azure Application Insights ermöglichen eine genaue Analyse der Anwendungsperformance. Dadurch kann nicht nur die Nutzererfahrung verbessert, sondern auch ineffiziente Ressourcennutzung aufgedeckt werden, was Kosteneinsparungen ermöglicht.
Nach der Einführung von Applikation Insights konnten wir das Scaling der Datenbank für eine Kernanwendung eines Kunden erheblich reduzieren. Beim Monitoring ist uns eine fachliche Funktion aufgefallen, die sehr häufig aufgerufen wird. Sie verwendet ein dynamisches Query, um Daten aus der Datenbank zu laden. Obwohl jedes einzelne Query relativ schnell beantwortet wurde und im Hardware-Monitoring der Datenbank nicht auffiel, machte diese fachliche Funktion insgesamt einen großen Teil der Datenbanklast aus. Durch wenige Anpassungen am Code und der Datenbankstruktur konnten wir die Last auf dem Datenbankserver von 90% auf unter 20% reduzieren. Dadurch wurde das nötige Sizing erheblich reduziert und wir mussten uns keine Gedanken mehr über das Handling von Read-Replicas machen.
Trotzdem möchten wir Sie eindringlich davor warnen, den Application-Insights-Agenten voreilig zu Ihrer Anwendung hinzuzufügen und ohne umfassende Planung mit dem Monitoring zu beginnen. Aus unserer Erfahrungen folgt, dass die Standardkonfiguration zu einem signifikanten Anstieg der Kosten führen kann.
Intelligente Nutzung von Sizing-Optionen:
Cloud-Ressourcen können flexibel und dynamisch skaliert werden, um Kosten zu optimieren. Für nicht kritische oder entwicklungsbezogene Workloads können Spot-Instanzen und automatische Scale-to-Zero-Funktionen genutzt werden, um Kosten zu senken, ohne die Servicequalität zu beeinträchtigen. Unsere Erfahrung zeigt, dass erhebliche Einsparungen durch intelligentes Sizing und die Nutzung von Cloud-spezifischen Preisoptionen erzielt werden können.
Guido Zockoll hat in seinem Blog-Beitrag "7 Maßnahmen, um Kosten und Energie in der Cloud zu sparen" bereits gezeigt, wie man dies für Kubernetes umsetzen kann. Aus eigener Erfahrung können wir berichten, dass wir in einem Projekt die Entwicklungsumgebung auf Spot-Instanzen aufgebaut haben. Dabei besteht das Risiko, dass der Cloud-Anbieter die Instanz herunterfährt, wenn er den Bedarf eines anderen Kunden decken muss. Dies ist jedoch nur einmal im Jahr für drei Stunden vorgekommen. Insgesamt hatten die Entwickler:innen eine bessere Uptime als zuvor in ihrem internen Rechenzentrum. Wir konnten durchgängig von den bis zu 75% günstigeren Spotinstanzen profitieren.
Eine erfolgreiche Cloud-Migration erfordert mehr als nur die physische Verlagerung von Anwendungen und Daten. Unternehmen müssen ihre Strategie überdenken und ihre Anwendungen sowie Betriebsmodelle an die Cloud anpassen. Dieser Prozess erfordert eine sorgfältige Planung und Optimierung, die über den Lift & Shift-Ansatz hinausgeht. Es ist wichtig den Migrations-Prozess vollständig zu gehen um die Vorteile der Cloud zu nutzen!
Haben Sie Fragen oder benötigen Sie Unterstützung?
Sprechen Sie uns auch gerne an.