Ressourcennutzung für Nachhaltigkeit optimieren

Last reviewed 2026-01-28 UTC

Dieses Prinzip im Bereich „Nachhaltigkeit“ des Google Cloud Well-Architected Framework enthält Empfehlungen zur Optimierung der Ressourcennutzung durch Ihre Arbeitslasten in Google Cloud.

Übersicht über die Grundsätze

Die Optimierung der Ressourcennutzung ist entscheidend, um die Nachhaltigkeit Ihrer Cloud-Umgebung zu verbessern. Jede bereitgestellte Ressource – von Rechenzyklen bis hin zum Datenspeicher – wirkt sich direkt auf den Energieverbrauch, die Wasserintensität und die Kohlenstoffemissionen aus. Um die Umweltbelastung Ihrer Arbeitslasten zu verringern, müssen Sie fundierte Entscheidungen treffen, wenn Sie Cloud-Ressourcen bereitstellen, verwalten und verwenden.

Empfehlungen

Beachten Sie die Empfehlungen in den folgenden Abschnitten, um die Ressourcennutzung zu optimieren.

Automatisierte und dynamische Skalierung implementieren

Durch automatisches und dynamisches Skalieren wird die Ressourcennutzung optimiert. So wird Energieverschwendung durch inaktive oder überdimensionierte Infrastruktur vermieden. Die Reduzierung des Energieverlusts führt zu niedrigeren Kosten und geringeren CO₂-Emissionen.

Verwenden Sie die folgenden Techniken, um die automatische und dynamische Skalierbarkeit zu implementieren.

Horizontale Skalierung verwenden

Die horizontale Skalierung ist die bevorzugte Skalierungsmethode für die meisten Cloud-First-Anwendungen. Anstatt die Größe jeder Instanz zu erhöhen, was als vertikale Skalierung bezeichnet wird, fügen Sie Instanzen hinzu, um die Last zu verteilen. Sie können beispielsweise verwaltete Instanzgruppen (Managed Instance Groups, MIGs) verwenden, um eine Gruppe von Compute Engine-VMs automatisch zu skalieren. Horizontal skalierte Infrastruktur ist robuster, da sich der Ausfall einer Instanz nicht auf die Verfügbarkeit der Anwendung auswirkt. Die horizontale Skalierung ist auch eine ressourceneffiziente Methode für Anwendungen mit variablen Lasten.

Geeignete Skalierungsrichtlinien konfigurieren

Konfigurieren Sie die Autoscaling-Einstellungen entsprechend den Anforderungen Ihrer Arbeitslasten. Definieren Sie benutzerdefinierte Messwerte und Grenzwerte, die für das Verhalten der Anwendung spezifisch sind. Anstatt sich nur auf die CPU-Auslastung zu verlassen, sollten Sie Messwerte wie die Warteschlangentiefe für asynchrone Aufgaben, die Anfragelatenz und benutzerdefinierte Anwendungsmesswerte berücksichtigen. Um häufige, unnötige Skalierungen oder Flapping zu vermeiden, sollten Sie klare Skalierungsrichtlinien definieren. Konfigurieren Sie beispielsweise für Arbeitslasten, die Sie in Google Kubernetes Engine (GKE) bereitstellen, eine geeignete Cluster-Autoscaling-Richtlinie.

Reaktive und proaktive Skalierung kombinieren

Beim reaktiven Skalieren wird das System in Reaktion auf Echtzeit-Laständerungen skaliert. Diese Technik eignet sich für Anwendungen, bei denen es zu unvorhersehbaren Lastspitzen kommt.

Die proaktive Skalierung eignet sich für Arbeitslasten mit vorhersagbaren Mustern, z. B. feste tägliche Geschäftszeiten und wöchentliche Berichterstellung. Verwenden Sie für solche Arbeitslasten das zeitbasierte Autoscaling, um Ressourcen vorab bereitzustellen, damit sie ein erwartetes Lastniveau bewältigen können. Diese Technik verhindert, dass Ressourcen knapp werden, und sorgt für eine reibungslosere Nutzererfahrung mit höherer Effizienz. Mit dieser Technik können Sie auch proaktiv für bekannte Lastspitzen planen, z. B. bei großen Verkaufsveranstaltungen und gezielten Marketingmaßnahmen.

Google Cloud Verwaltete Dienste und Funktionen wie GKE Autopilot, Cloud Run und MIGs verwalten die proaktive Skalierung automatisch, indem sie aus Ihren Arbeitslastmustern lernen. Wenn ein Cloud Run-Dienst keinen Traffic empfängt, wird er standardmäßig auf null Instanzen skaliert.

Zustandslose Anwendungen entwerfen

Damit eine Anwendung horizontal skaliert werden kann, müssen ihre Komponenten zustandslos sein. Das bedeutet, dass die Sitzung oder Daten eines bestimmten Nutzers nicht an eine einzelne Compute-Instanz gebunden sind. Wenn Sie den Sitzungsstatus außerhalb der Compute-Instanz speichern, z. B. in Memorystore for Redis, kann jede Compute-Instanz Anfragen von jedem Nutzer verarbeiten. Dieser Designansatz ermöglicht eine nahtlose und effiziente horizontale Skalierung.

Planung und Batches verwenden

Die Batchverarbeitung eignet sich ideal für umfangreiche, nicht dringende Arbeitslasten. Batchjobs können dazu beitragen, Ihre Arbeitslasten hinsichtlich Energieeffizienz und Kosten zu optimieren.

Verwenden Sie die folgenden Techniken, um Zeitplan- und Batchjobs zu implementieren.

Planung für geringe CO₂-Intensität

Planen Sie Ihre Batchjobs so, dass sie in Regionen mit geringen CO2-Emissionen und zu Zeiten ausgeführt werden, in denen das lokale Stromnetz einen hohen Anteil an sauberer Energie hat. Mit dem CO₂-Bilanzbericht können Sie die Tageszeiten mit der geringsten CO₂-Intensität für eine Region ermitteln.

Spot-VMs für nicht kritische Arbeitslasten verwenden

Mit Spot-VMs können Sie ungenutzte Compute Engine-Kapazität zu einem erheblichen Rabatt nutzen. Spot-VMs können vorzeitig beendet werden, bieten aber eine kostengünstige Möglichkeit, große Datasets zu verarbeiten, ohne dass dedizierte, immer aktive Ressourcen erforderlich sind. Spot-VMs sind ideal für nicht kritische, fehlertolerante Batchjobs.

Jobs konsolidieren und parallelisieren

Um den Aufwand für das Starten und Beenden einzelner Jobs zu reduzieren, sollten Sie ähnliche Jobs in einem großen Batch zusammenfassen. Führen Sie diese Arbeitslasten mit hohem Volumen in Diensten wie Batch aus. Der Dienst stellt die erforderliche Infrastruktur automatisch bereit und verwaltet sie, was zu einer optimalen Ressourcennutzung beiträgt.

Verwaltete Dienste verwenden

Verwaltete Dienste wie Batch und Dataflow übernehmen automatisch die Bereitstellung, Planung und Überwachung von Ressourcen. Die Cloud-Plattform übernimmt die Ressourcenoptimierung. Sie können sich auf die Anwendungslogik konzentrieren. Dataflow skaliert die Anzahl der Worker automatisch basierend auf dem Datenvolumen in der Pipeline. Sie zahlen also nicht für inaktive Ressourcen.

VM-Maschinenfamilien an Arbeitslastanforderungen anpassen

Die Maschinentypen, die Sie für Ihre Compute Engine-VMs verwenden können, sind in Maschinenfamilien gruppiert, die für verschiedene Arbeitslasten optimiert sind. Wählen Sie geeignete Maschinenfamilien basierend auf den Anforderungen Ihrer Arbeitslasten aus.

Maschinenfamilie Empfohlene Arbeitslasttypen Anleitung zur Nachhaltigkeit
Instanzen für allgemeine Zwecke (E2, N2, N4, Tau T2A/T2D): Diese Instanzen bieten ein ausgewogenes Verhältnis von CPU zu Arbeitsspeicher. Webserver, Mikrodienste, kleine bis mittelgroße Datenbanken und Entwicklungsumgebungen. Die E2-Serie ist aufgrund der dynamischen Zuweisung von Ressourcen sehr kosteneffizient und energieeffizient. Die Tau T2A-Serie verwendet Arm-basierte Prozessoren, die bei groß angelegten Arbeitslasten oft energieeffizienter pro Leistungseinheit sind.
Computing-optimierte Instanzen (C2, C3): Diese Instanzen bieten ein hohes Verhältnis von vCPU zu Arbeitsspeicher und eine hohe Leistung pro Kern. Hochleistungs-Computing (HPC), Batchverarbeitung, Gameserver und CPU-basierte Datenanalyse. Mit einer Instanz der C-Serie können Sie CPU-intensive Aufgaben schneller erledigen. Dadurch werden die gesamte Rechenzeit und der Energieverbrauch des Jobs reduziert.
Speicheroptimierte Instanzen (M3, M2): Diese Instanzen sind für Arbeitslasten konzipiert, die viel Arbeitsspeicher benötigen. Große In-Memory-Datenbanken und Data Warehouses wie SAP HANA oder In-Memory-Analysen. Speicheroptimierte Instanzen ermöglichen die Konsolidierung speicherintensiver Arbeitslasten auf weniger physischen Knoten. Durch diese Konsolidierung wird der Gesamtenergieverbrauch im Vergleich zur Verwendung mehrerer kleinerer Instanzen reduziert. Hochleistungsspeicher reduziert die Latenz beim Datenzugriff, was die Gesamtzeit verringern kann, die die CPU in einem aktiven Zustand verbringt.
Speicheroptimierte Instanzen (Z3) : Diese Instanzen bieten lokalen SSD-Speicher mit hohem Durchsatz und geringer Latenz. Data Warehousing, Log-Analyse sowie SQL-, NoSQL- und Vektordatenbanken. Speicheroptimierte Instanzen verarbeiten große Datasets lokal. Dadurch wird der Energieverbrauch für ausgehenden Netzwerktraffic zwischen Standorten reduziert. Wenn Sie lokalen Speicher für Aufgaben mit vielen IOPS verwenden, vermeiden Sie die Überbereitstellung mehrerer Standardinstanzen.
Beschleunigungsoptimierte Instanzen (A3, A2, G2): Diese Instanzen sind für GPU- und TPU-beschleunigte Arbeitslasten wie KI, ML und HPC konzipiert. ML-Modelltraining und ‑Inferenz sowie wissenschaftliche Simulationen.

TPUs sind auf optimale Energieeffizienz ausgelegt. Sie ermöglichen mehr Berechnungen pro Watt.

Eine GPU-beschleunigte Instanz wie die A3-Serie mit NVIDIA H100-GPUs kann für das Training großer Modelle deutlich energieeffizienter sein als eine reine CPU-Alternative. Eine GPU-beschleunigte Instanz hat zwar einen höheren nominellen Stromverbrauch, die Aufgabe wird aber viel schneller erledigt.

Upgrade auf die neuesten Maschinentypen

Die Verwendung der neuesten Maschinentypen kann zur Verbesserung der Nachhaltigkeit beitragen. Wenn Maschinentypen aktualisiert werden, sind sie oft energieeffizienter und bieten eine höhere Leistung pro Watt. VMs, die die neuesten Maschinentypen verwenden, können dieselbe Menge an Arbeit mit geringerem Stromverbrauch erledigen.

CPUs, GPUs und TPUs profitieren oft von technischen Fortschritten in der Chiparchitektur, z. B.:

  • Spezialisierte Kerne: Fortschritte bei Prozessoren umfassen oft spezialisierte Kerne oder Anweisungen für häufige Arbeitslasten. CPUs können beispielsweise dedizierte Kerne für Vektoroperationen oder integrierte KI-Beschleuniger haben. Wenn diese Aufgaben von der Haupt-CPU ausgelagert werden, werden sie effizienter ausgeführt und verbrauchen weniger Energie.
  • Verbessertes Energiemanagement: Fortschritte bei Chiparchitekturen umfassen oft ausgefeiltere Energiemanagementfunktionen, z. B. die dynamische Anpassung von Spannung und Frequenz basierend auf der Arbeitslast. Diese Funktionen zur Energieverwaltung ermöglichen es den Chips, mit maximaler Effizienz zu arbeiten und in den Leerlaufphasen in den Energiesparmodus zu wechseln, wodurch der Energieverbrauch minimiert wird.

Die technischen Verbesserungen in der Chiparchitektur bieten die folgenden direkten Vorteile für Nachhaltigkeit und Kosten:

  • Höhere Leistung pro Watt: Dies ist ein wichtiger Messwert für Nachhaltigkeit. C4-VMs bieten beispielsweise ein um 40% besseres Preis-Leistungs-Verhältnis als C3-VMs bei gleichem Energieverbrauch. Der C4A-Prozessor bietet eine 60% höhere Energieeffizienz als vergleichbare x86-Prozessoren. Mit diesen Leistungsfunktionen können Sie Aufgaben schneller erledigen oder weniger Instanzen für dieselbe Last verwenden.
  • Geringerer Gesamtenergieverbrauch: Dank verbesserter Prozessoren werden Rechenressourcen für eine bestimmte Aufgabe kürzer genutzt, was den Gesamtenergieverbrauch und den CO₂-Fußabdruck reduziert. Die CO2-Belastung ist besonders hoch bei kurzlebigen, rechenintensiven Arbeitslasten wie Batchjobs und ML-Modelltraining.
  • Optimale Ressourcennutzung: Die neuesten Maschinentypen eignen sich oft besser für moderne Software und sind mit den erweiterten Funktionen von Cloud-Plattformen kompatibler. Diese Maschinentypen ermöglichen in der Regel eine bessere Ressourcennutzung, wodurch die Notwendigkeit einer Überbereitstellung verringert wird und jeder Watt Strom produktiv genutzt wird.

Containerisierte Anwendungen bereitstellen

Sie können containerbasierte, vollständig verwaltete Dienste wie GKE und Cloud Run als Teil Ihrer Strategie für nachhaltiges Cloud Computing verwenden. Diese Dienste helfen, die Ressourcennutzung zu optimieren und die Ressourcenverwaltung zu automatisieren.

Skalierung auf null in Cloud Run nutzen

Cloud Run bietet eine verwaltete serverlose Umgebung, in der Instanzen automatisch auf null skaliert werden, wenn für einen Dienst kein eingehender Traffic vorhanden ist oder ein Job abgeschlossen ist. Autoscaling trägt dazu bei, den Energieverbrauch durch inaktive Infrastruktur zu eliminieren. Ressourcen werden nur mit Strom versorgt, wenn sie Anfragen aktiv verarbeiten. Diese Strategie ist sehr effektiv für intermittierende oder ereignisgesteuerte Arbeitslasten. Für KI-Arbeitslasten können Sie GPUs mit Cloud Run verwenden. So zahlen Sie nur für GPUs, wenn sie verwendet werden.

Ressourcenoptimierung mit GKE automatisieren

GKE ist eine Plattform zur Containerorchestrierung, die dafür sorgt, dass Anwendungen nur die Ressourcen verwenden, die sie benötigen. Um die Ressourcenoptimierung zu automatisieren, bietet GKE die folgenden Techniken:

  • Bin-Packing: GKE Autopilot packt mehrere Container intelligent auf die verfügbaren Knoten. Durch Bin Packing wird die Auslastung jedes Knotens maximiert und die Anzahl der inaktiven oder unterausgelasteten Knoten reduziert, was den Energieverbrauch senkt.
  • Horizontales Pod-Autoscaling (HPA): Mit HPA wird die Anzahl der Containerreplikate (Pods) automatisch anhand vordefinierter Messwerte wie CPU-Auslastung oder benutzerdefinierter anwendungsspezifischer Messwerte angepasst. Wenn Ihre Anwendung beispielsweise einen Traffic-Anstieg verzeichnet, fügt GKE Pods hinzu, um die Nachfrage zu decken. Wenn der Traffic nachlässt, reduziert GKE die Anzahl der Pods. Durch diese dynamische Skalierung wird eine Überdimensionierung von Ressourcen verhindert, sodass Sie nicht für unnötige Rechenkapazität bezahlen oder diese mit Strom versorgen müssen.
  • Vertikales Pod-Autoscaling (VPA): Sie können GKE so konfigurieren, dass die CPU- und Arbeitsspeicherzuweisungen und ‑limits für einzelne Container automatisch angepasst werden. Mit dieser Konfiguration wird dafür gesorgt, dass einem Container nicht mehr Ressourcen zugewiesen werden, als er benötigt. So wird eine Überbereitstellung von Ressourcen verhindert.
  • Mehrdimensionales Pod-Autoscaling in GKE: Bei komplexen Arbeitslasten können Sie HPA und VPA gleichzeitig konfigurieren, um sowohl die Anzahl der Pods als auch die Größe der einzelnen Pods zu optimieren. Diese Technik trägt dazu bei, dass der Energieverbrauch für die erforderliche Leistung so gering wie möglich ist.
  • Topologiebewusste Planung (Topology-Aware Scheduling, TAS): TAS verbessert die Netzwerkeffizienz für KI- und ML-Arbeitslasten in GKE, indem Pods basierend auf der physischen Struktur der Rechenzentrumsinfrastruktur platziert werden. TAS platziert Arbeitslasten strategisch, um die Anzahl der Netzwerksprünge zu minimieren. Durch diese gemeinsame Unterbringung lassen sich die Kommunikationslatenz und der Energieverbrauch reduzieren. Durch die Optimierung der physischen Ausrichtung von Knoten und spezialisierter Hardware beschleunigt TAS die Ausführung von Aufgaben und maximiert die Energieeffizienz von umfangreichen KI- und ML-Arbeitslasten.

CO2-bewusste Planung konfigurieren

Bei Google verlagern wir unsere Arbeitslasten kontinuierlich an Standorte und zu Zeiten, an denen der sauberste Strom verfügbar ist. Außerdem verwerten wir ältere Geräte für alternative Anwendungsfälle. Mit dieser Strategie für die CO2-bewusste Planung können Sie dafür sorgen, dass für Ihre containerisierten Arbeitslasten saubere Energie verwendet wird.

Um die CO₂-bewusste Planung zu implementieren, benötigen Sie Echtzeitinformationen zum Energiemix, der die Rechenzentren in einer Region mit Strom versorgt. Sie können diese Informationen in einem maschinenlesbaren Format aus dem Repository Carbon free energy for Google Cloud regions auf GitHub oder aus einem öffentlichen BigQuery-Dataset abrufen. Die stündlichen Daten zum Stromnetzmix und zur Kohlenstoffintensität, die zur Berechnung des jährlichen CO₂-Datensatzes von Google verwendet werden, stammen von Electricity Maps.

Für die Implementierung von CO2-bewusster Planung empfehlen wir die folgenden Techniken:

  • Geografische Verlagerung: Planen Sie Ihre Arbeitslasten so, dass sie in Regionen ausgeführt werden, in denen ein höherer Anteil an erneuerbaren Energiequellen verwendet wird. Mit diesem Ansatz können Sie sauberere Stromnetze nutzen.
  • Zeitliche Verlagerung: Konfigurieren Sie nicht kritische, flexible Arbeitslasten wie die Batchverarbeitung so, dass sie außerhalb der Spitzenzeiten oder dann ausgeführt werden, wenn erneuerbare Energien am häufigsten verfügbar sind. Dieses Verfahren wird als zeitliche Verlagerung bezeichnet und trägt dazu bei, die gesamte CO2-Bilanz zu verbessern, indem sauberere Energiequellen genutzt werden, wenn sie verfügbar sind.

Energieeffiziente Notfallwiederherstellung entwickeln

Die Vorbereitung auf die Notfallwiederherstellung (Disaster Recovery, DR) umfasst oft die Vorab-Bereitstellung redundanter Ressourcen in einer sekundären Region. Im Leerlauf befindliche oder unterausgelastete Ressourcen können jedoch zu erheblichem Energieverbrauch führen. Wählen Sie DR-Strategien aus, mit denen die Ressourcennutzung maximiert und die CO2-Belastung minimiert wird, ohne dass Ihre Recovery Time Objectives (RTO) beeinträchtigt werden.

Für effiziente Kaltstarts optimieren

Mit den folgenden Ansätzen können Sie aktive Ressourcen in Ihrer sekundären (DR-)Region minimieren oder eliminieren:

  • Cold-DR priorisieren: Ressourcen in der DR-Region bleiben deaktiviert oder im Status „Auf null skaliert“. So lässt sich die CO₂-Bilanz von inaktiven Computing-Ressourcen verbessern.
  • Serverloses Failover nutzen: Verwenden Sie verwaltete serverlose Dienste wie Cloud Run für DR-Endpunkte. Cloud Run wird auf null skaliert, wenn es nicht verwendet wird. So können Sie eine DR-Topologie aufrechterhalten, die keinen Strom verbraucht, bis der Traffic in die DR-Region umgeleitet wird.
  • Wiederherstellung mit Infrastructure-as-Code (IaC) automatisieren: Anstatt Ressourcen auf der DR-Website (warm) auszuführen, verwenden Sie ein IaC-Tool wie Terraform, um Umgebungen nur bei Bedarf schnell bereitzustellen.

Gleichgewicht zwischen Redundanz und Auslastung

Ressourcenredundanz ist ein Hauptgrund für Energieverschwendung. So können Sie Redundanz reduzieren:

  • Aktiv/Aktiv-Konfiguration gegenüber Aktiv/Passiv-Konfiguration bevorzugen: Bei einer Aktiv/Passiv-Konfiguration sind die Ressourcen am passiven Standort inaktiv, was zu Energieverschwendung führt. Eine Aktiv-Aktiv-Architektur, die optimal dimensioniert ist, sorgt dafür, dass alle bereitgestellten Ressourcen in beiden Regionen aktiv Traffic verarbeiten. So können Sie die Energieeffizienz Ihrer Infrastruktur maximieren.
  • Redundanz richtig dimensionieren: Daten und Dienste nur dann über Regionen hinweg replizieren, wenn die Replikation erforderlich ist, um die Anforderungen an Hochverfügbarkeit oder Notfallwiederherstellung zu erfüllen. Jedes zusätzliche Replikat erhöht die Energiekosten für persistenten Speicher und ausgehenden Netzwerktraffic.