Aliaksandr Marko - stock.adobe.c

Nachhaltigkeit in der Cloud: Systeme dynamisch skalieren

IT-Infrastrukturen verbrauchen durch steigende Anforderungen viel Energie. Damit die Nutzung umweltfreundlicher wird, gibt es verschiedene Strategien, die angewendet werden können.

Nicht nur in der produzierenden Wirtschaft gewinnt Nachhaltigkeit zunehmend an Bedeutung. Insbesondere die IT-Infrastruktur steht im Fokus, da sie erhebliche Mengen an Energie verbraucht und damit einen beträchtlichen Einfluss auf die Umwelt hat. Unternehmen können durch eine nachhaltige Skalierung ihrer Hardwareressourcen sowohl ihre Betriebskosten senken als auch ihren ökologischen Fußabdruck reduzieren. Doch wie kann das gelingen?

Durch die Verlagerung von Softwareprojekten in die Cloud erhoffen sich Unternehmen eine verbesserte Verfügbarkeit, transparente Kosten und eine dem Bedarf entsprechende Skalierung. Aufgrund der grenzenlosen Angebote läuft man aber auch leicht Gefahr, die Komponenten eines Systems zu überprovisionieren und damit mehr Ressourcen zu verbrauchen, als notwendig sind. Unternehmen stehen also vor der Herausforderung, ihre IT-Infrastruktur so effizient wie möglich zu gestalten und die Umweltauswirkungen der genutzten Anwendung durch eine effiziente Skalierung zu reduzieren. Damit das gelingt, müssen einige Punkte beachtet werden.

1. Auswahl der Hardware

Bei der Auswahl umweltfreundlicher Hardware für die Cloud-Infrastruktur sollten Unternehmen mehrere wichtige Faktoren berücksichtigen. Die Wahl eines dedizierten Servers kann in manchen Fällen unumgänglich sein. Angesichts des großen Angebots bei den Cloud Providern ist es verlockend, sofort auf leistungsstarke Hardware zurückzugreifen, um potenzielle Skalierungsprobleme frühzeitig zu umgehen. Doch sollte man zunächst ein detailliertes Monitoring durchführen, um die tatsächliche Auslastung der Hardware präziser beurteilen zu können. Das ermöglicht es, erst bei einem dauerhaften Bedarf auf eine bessere Hardware zu skalieren, anstatt von Anfang an auf maximale Leistung zu setzen. Ein schöner Nebeneffekt: Durch das Monitoring lassen sich schon frühzeitig Probleme und Fehler erkennen.

Außerdem ist es ratsam, regelmäßig nach neuen Servermodellen Ausschau zu halten. Diese sind häufig nicht nur günstiger, sondern auch leistungsfähiger oder verbrauchen bei gleicher Leistung deutlich weniger Energie.

2. Effiziente Datenspeicherung

Rechtliche Bestimmungen spielen je nach Branche eine große Rolle bei der Frage, welche Daten ein Unternehmen für welche Zeiträume speichern muss. Oftmals neigen Unternehmen daher dazu, alle verfügbaren Daten für unbegrenzte Zeit zu speichern, ohne die tatsächliche Notwendigkeit zu prüfen. Das führt zu einem unnötigen Anstieg der Speicherkosten und einem höheren Stromverbrauch der Systeme.

Dennis Breitling, codecentric

„Die gezielte Reduzierung der Kapazitäten in der Cloud kann zu erheblichen Kosteneinsparungen sowie zu einer Reduzierung des ökologischen Fußabdrucks führen.“

Dennis Breitling, codecentric

Durch regelmäßiges Löschen unserer Daten sorgen wir dafür, dass die Cloud-Anbieter weniger Speichermedien vorhalten müssen und reduzieren ihren Strombedarf. Es ist also aus verschiedener Sicht sinnvoll, die gespeicherten Daten regelmäßig zu überprüfen und nicht mehr verwendete Daten zu löschen.

Automatisiertes Löschen der gespeicherten Daten kann dabei helfen, den Arbeitsaufwand zu reduzieren. Bei AWS geht das zum Beispiel über Retention Policies, mit denen wir festlegen können, ab wann unsere Daten vom System entfernt werden sollen. Falls die Daten nicht gelöscht werden können, aber die Zugriffe ab einem bestimmten Zeitpunkt absehbar abnehmen, erlauben Lifecycle Policies das automatische Verschieben der Daten in andere Speichersysteme. Magnetspeicher sind dann eine gute Lösung, da sie energiesparender sind. Für Einträge in einer Datenbank lassen sich sogenannte Time-to-Live-Werte konfigurieren. Ist die Lebensdauer der Datensätze überschritten, räumt die Datenbank automatisch auf.

3. Kapazitäten reduzieren und dynamisch skalieren

Die gezielte Reduzierung der Kapazitäten in der Cloud kann zu erheblichen Kosteneinsparungen sowie zu einer Reduzierung des ökologischen Fußabdrucks führen. Je nach Tageszeit schwank die Anzahl der Anfragen, die ein System verarbeiten muss, oft erheblich. Zum Beispiel steht ein Onlineshop für seine Kunden rund um die Uhr zur Verfügung. In der Nacht kann die Last jedoch stark abnehmen, insbesondere wenn die Kunden nicht weltweit verteilt sind.

Ähnliches gilt für interne Entwicklungsprozesse. Während Teams tagsüber aktiv an Entwicklungen arbeiten, ist der Bedarf an einigen Ressourcen wie Testservern oder Build-Pipelines in der Nacht oft minimal. Es ist daher sinnvoll, kritisch zu hinterfragen, welche Systeme zu welchen Zeiten herunterskaliert werden können.

Nach der statischen Skalierung ist die Dynamische die Königsdisziplin: Anstatt an festen Zeiträumen werden Kapazitäten je nach Bedarf automatisch angepasst. So können Unternehmen flexibel auf sich ändernde Workloads reagieren und eine effiziente Nutzung der Cloud-Ressourcen sicherstellen, statt dauerhaft auf leistungsstarke Hardware zu setzen. Es ist zudem ratsam, kleine Skalierungsschritte zu konfigurieren, um eine Überprovisionierung zu vermeiden.

Wenn ein System dynamisch reagieren kann, lassen sich auch unerwartete Zugriffszahlen besser verarbeiten. Denn selbst bei stark überprovisionierter Hardware besteht das Risiko, dass die Last alle Erwartungen übersteigt und das System überfordert ist. Die Skalierungsregeln sollten über die prozentuale Auslastung des Servers implementiert werden, um so eine optimale Auslastung der gesamten Hardware umzusetzen. Skalierung ist nur dann erforderlich, wenn eine bestimmte Auslastung erreicht ist, und man sollte die Ressourcen sofort heruntersetzen, wenn sie nicht mehr benötigt werden.

4. Function as a Service

Function as a Service (FaaS) ist ein spezieller Fall in der Cloud, bei dem Unternehmen Code ohne die übliche Komplexität der Infrastruktur direkt ausführen können. Die Anbieter stellen sicher, dass ausreichend Ressourcen vorhanden sind, um Anfragen zu verarbeiten. Eine besonders interessante Eigenschaft ist die Möglichkeit des Scale to Zero: Da FaaS basierend auf der Laufzeit abgerechnet wird, entstehen keine Kosten, wenn eine Funktion nicht benötigt wird.

Cloud-Anbieter geben nur begrenzte Informationen über die genaue Architektur und Auslastung ihrer FaaS-Angebote preis. Es ist aber wichtig zu beachten, dass eine gewisse Grundkapazität immer vorhanden ist, selbst wenn eine Funktion nicht aktiv genutzt wird. Da die Nutzer jedoch nicht für diese Serverkapazität zahlen müssen, ist anzunehmen, dass die Anbieter bestrebt sind, die Auslastung so effizient wie möglich zu optimieren. Für Unternehmen bieten FaaS-Angebote daher eine attraktive Möglichkeit, die Skalierung ihres Systems vollständig auszulagern und sich auf die Entwicklung von Funktionen zu konzentrieren, ohne sich um die zugrunde liegende Infrastruktur kümmern zu müssen.

Fazit

Die Skalierung von IT-Ressourcen bietet Unternehmen diverse Vorteile. Solange aktuelle Auslastungen problemlos verarbeitet werden können, kann die kleinste Hardwarekonfiguration eines Systems genutzt werden. Bei unvorhergesehenen Spitzen bietet sich eine dynamische Skalierung an, vorausgesetzt, Unternehmen verfügen über ein solides Monitoring und detaillierte Kenntnisse ihres Systems, denn nur so kann die Skalierung korrekt konfiguriert werden.

Durch dynamische Skalierung sparen Unternehmen nicht nur beim Stromverbrauch, sondern auch bei den Gesamtkosten des Systems. Zu einem ganzheitlichen Ansatz für eine nachhaltigere IT-Infrastruktur gehört auch die Auswahl umweltfreundlicher Hardware, effiziente Datenspeicherung und die Nutzung von Function as a Service (FaaS). Auch wenn es zunächst unkomplizierter erscheinen mag, statische Ressourcen zu nutzen, ist eine dynamische Skalierung langfristig sowohl finanziell als auch in Bezug auf die Umweltauswirkungen vorteilhafter.

Über den Autor:
Mit sieben Jahren Berufserfahrung in der IT versteht Dennis Breitling die Gesamtheit von Computersystemen und Anwendungen und berät Kunden in der Planung, Koordination und Umsetzung ihrer Softwareprojekte. Bei der codecentric AG spezialisiert er sich aktuell insbesondere auf die Themen Cloud und Nachhaltigkeit.

Die Autoren sind für den Inhalt und die Richtigkeit ihrer Beiträge selbst verantwortlich. Die dargelegten Meinungen geben die Ansichten der Autoren wieder.

Erfahren Sie mehr über Cloud Computing

ComputerWeekly.de
Close