WAF-SUS-040 – Idle & Underutilized Resource Elimination
Beschreibung
Alle Cloud-Compute-Ressourcen MÜSSEN auf Auslastung überwacht werden. Ressourcen mit CPU-Auslastung < 5% für 14 Tage MÜSSEN als Idle markiert und einer Stop/Terminate-Review unterzogen werden. Non-Production-Umgebungen MÜSSEN Scheduled-Shutdown-Policies haben. Autoscaling MUSS für alle zustandslosen Compute-Workloads konfiguriert sein — mit Scale-to-Zero für nicht-produktive Umgebungen.
Rationale
30–45% aller Cloud-Compute-Ressourcen sind idle oder unterausgelastet. Eine EC2-Instanz bei 3% CPU verbraucht nahezu dieselbe Energie wie eine bei 80%. Non-Production-Umgebungen laufen oft 24/7, obwohl ihr Nutzungszeitraum ~30% der Kalenderzeit ausmacht. Idle-Elimination ist die höchste-ROI-Sustainability-Maßnahme: sie reduziert gleichzeitig Kosten und Emissionen.
Bedrohungskontext
| Risiko | Beschreibung |
|---|---|
Wasted Energy |
30–45% Cloud-Compute läuft idle; die Energie dieser Ressourcen trägt zu Scope-3-Emissionen bei ohne Mehrwert. |
Non-Prod 24/7 |
Dev/Test/Staging-Umgebungen laufen oft rund um die Uhr; 60–70% der Zeit ist reine Energieverschwendung. |
Zombie-Ressourcen |
Vergessene Instanzen, detached EBS-Volumes, ungenutzte Elastic IPs akkumulieren persistent Energie und Kosten. |
Fehlende Autoscaling-Governance |
Statische Instanzanzahl für Burst-Workloads bedeutet dauerhaftes Idle in Off-Peak-Phasen. |
Anforderung
-
Idle-Detection MUSS für alle EC2-Instanzen konfiguriert sein (< 5% CPU / 14 Tage)
-
Non-Production MUSS Scheduled Shutdown außerhalb der Geschäftszeiten haben
-
Autoscaling MUSS für alle zustandslosen Workloads konfiguriert sein (min_size ≥ 0 für non-prod)
-
Quarterly Zombie-Resource-Hunt MUSS durchgeführt werden
-
Spot-Instanzen SOLLEN für Batch- und Non-Production-Workloads genutzt werden
Implementierungsanleitung
-
AWS Compute Optimizer aktivieren: Weekly-Recommendations-Review einrichten
-
Non-Prod Scheduled Shutdown: Instance Scheduler oder Lambda-basierter Scheduler für Abend/Wochenende
-
CloudWatch Alarms: CPU < 5% für 14 Tage → SNS-Alert für Review
-
Autoscaling: Alle stateless Services auf ASG mit Target Tracking umstellen
-
Zombie-Hunt: Script für detached EBS, unassigned EIPs, leere Load Balancer — quarterly
-
Spot für Batch: AWS Batch +
SPOT-Compute-Environment; ASG mit Mixed Instance Policy
Reifegrad-Abstufung
| Level | Bezeichnung | Kriterien |
|---|---|---|
1 |
Kein Monitoring |
Keine Auslastungsüberwachung; Non-Prod läuft 24/7; kein Autoscaling. |
2 |
Manuelle Reviews |
Gelegentliche manuelle Überprüfung; punktuelles Autoscaling. |
3 |
Automatisierte Idle-Detection |
Idle-Alerts aktiv; Scheduled Shutdown für Non-Prod; Autoscaling konfiguriert. |
4 |
Proaktive Elimination |
>50% Spot für Batch/Non-Prod; Scale-to-Zero; Quarterly Zombie-Hunt aktiv. |
5 |
Zero Idle |
Alle Ressourcen demand-driven; Zero Idle; Emissionsreduktion documentiert. |
Terraform Checks
waf-sus-040.tf.aws.autoscaling-enabled
Prüft: Autoscaling Groups haben min_size und max_size konfiguriert.
| Compliant | Non-Compliant |
|---|---|
|
|
Remediation: min_size auf 0 (non-prod) oder 1 (prod); max_size basierend auf Peak-Load; Target-Tracking Policy hinzufügen.
Evidenz
| Typ | Pflicht | Beschreibung |
|---|---|---|
Config |
✅ Pflicht |
Autoscaling-Konfiguration (min/max/desired) für stateless Compute. |
Config |
✅ Pflicht |
Non-Production Scheduled-Shutdown-Konfiguration. |
Process |
Optional |
Idle-Detection-Alert-Konfiguration und Monthly-Report. |
Process |
Optional |
Quarterly Zombie-Resource-Cleanup-Report. |