Loading...
Alle Artikel
Cloud · 7 min read

AWS Cost Management: FinOps-Strategien, die wirklich funktionieren

Praxiserprobte Strategien zur Reduktion der AWS-Kosten um 30–50 % durch Rightsizing, Reserved Capacity, Tagging und organisatorische FinOps-Praktiken.

Das Problem mit der AWS-Rechnung

Jedes Unternehmen, das auf AWS läuft, macht dieselbe Erfahrung. In den ersten Monaten sind die Kosten überschaubar. Dann wächst die Nutzung, Teams provisionieren Ressourcen, und zwölf Monate später fragt jemand, warum sich die Rechnung verdreifacht hat. Die Antwort ist fast immer dieselbe: Niemand hat hingeschaut.

Cloud-Kostenmanagement bedeutet nicht, geizig zu sein. Es bedeutet, bewusst Geld auszugeben. Bei DevOpsVibe helfen wir Kunden regelmäßig, ihre AWS-Ausgaben um 30–50 % zu senken, ohne Performance oder Zuverlässigkeit einzubüßen. Hier sind die Strategien, die zuverlässig Ergebnisse liefern.

Mit Sichtbarkeit beginnen: Die Tagging-Strategie

Sie können nicht optimieren, was Sie nicht messen können. Eine konsistente Tagging-Strategie ist das Fundament jeder FinOps-Praxis:

# Enforce these tags on every resource
Required Tags:
  - Environment: dev | staging | production
  - Team: platform | backend | data | ml
  - Service: api-gateway | user-service | analytics
  - CostCenter: CC-1001 | CC-1002
  - ManagedBy: terraform | manual | cdk

Erzwingen Sie Tagging mit einer SCP auf Ebene der AWS Organization:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "RequireTags",
      "Effect": "Deny",
      "Action": [
        "ec2:RunInstances",
        "rds:CreateDBInstance",
        "elasticloadbalancing:CreateLoadBalancer"
      ],
      "Resource": "*",
      "Condition": {
        "Null": {
          "aws:RequestTag/Environment": "true",
          "aws:RequestTag/Team": "true",
          "aws:RequestTag/Service": "true"
        }
      }
    }
  ]
}

Richten Sie anschließend AWS Cost Explorer mit Tag-basierter Gruppierung ein. Innerhalb einer Woche wissen Sie genau, welches Team und welcher Service für jeden Dollar verantwortlich ist.

Rightsizing: Der größte schnelle Gewinn

Unserer Erfahrung nach sind 40–60 % der EC2-Instances überdimensioniert. Teams provisionieren für Lastspitzen und überprüfen die Entscheidung nie wieder.

Überdimensionierte Instances identifizieren

Verwenden Sie AWS Compute Optimizer oder fragen Sie CloudWatch direkt ab:

# Find instances with average CPU below 20% over 14 days
aws cloudwatch get-metric-statistics \
  --namespace AWS/EC2 \
  --metric-name CPUUtilization \
  --dimensions Name=InstanceId,Value=i-0abc123def456 \
  --start-time $(date -d '14 days ago' --iso-8601) \
  --end-time $(date --iso-8601) \
  --period 3600 \
  --statistics Average \
  --query 'Datapoints[?Average<`20.0`]'

Vorher und nachher

Ein reales Beispiel aus einem Kundenprojekt:

RessourceVorherNachherMonatliche Einsparung
API-Server (12x)m5.2xlargem6i.xlarge$2,880
Worker-Nodes (8x)c5.4xlargec6i.2xlarge$3,520
RDS Primarydb.r5.4xlargedb.r6g.2xlarge$1,840
Redis-Clustercache.r5.2xlargecache.r7g.xlarge$960
Gesamt$9,200/mo

Wichtige Beobachtungen:

  • Der Wechsel auf aktuelle Instance-Generationen (m6i, c6i, r6g) liefert bessere Performance bei niedrigeren Kosten dank verbesserter Preis-Leistungs-Verhältnisse.
  • Graviton-basierte Instances (das „g"-Suffix) sind für die meisten Workloads typischerweise 20–30 % günstiger bei gleicher oder besserer Performance.
  • Rightsizing ist kein einmaliges Ereignis. Verankern Sie es in einem quartalsweisen Review-Prozess.

Reserved Instances und Savings Plans

Sobald Ihre Baseline richtig dimensioniert ist, committen Sie sich auf Kapazität für vorhersagbare Workloads:

Savings Plans vs. Reserved Instances

MerkmalCompute Savings PlanEC2 Instance Savings PlanReserved Instances
FlexibilitätJede Instance-Familie, Region, OSBestimmte Instance-Familie, beliebige GrößeSpezifischer Instance-Typ und AZ
RabattBis zu 66 %Bis zu 72 %Bis zu 72 %
Geeignet fürVariable WorkloadsStabile Instance-FamilienHochgradig vorhersagbare Workloads

Unsere Empfehlung: Beginnen Sie mit Compute Savings Plans wegen ihrer Flexibilität. Sie gelten automatisch für EC2-, Fargate- und Lambda-Nutzung über beliebige Regionen oder Instance-Familien hinweg.

# Check current coverage and recommendations
aws ce get-savings-plans-coverage \
  --time-period Start=$(date -d '30 days ago' +%Y-%m-%d),End=$(date +%Y-%m-%d) \
  --granularity MONTHLY

aws ce get-savings-plans-purchase-recommendation \
  --savings-plans-type COMPUTE_SP \
  --term-in-years ONE_YEAR \
  --payment-option NO_UPFRONT \
  --lookback-period-in-days SIXTY_DAYS

Ein praxiserprobter Ansatz für die Commitment-Abdeckung:

  • 70–80 % der stabilen Baseline: 1-jährige Savings Plans, No-Upfront
  • 10–15 % der vorhersehbaren Spitzen: 1-jährige Reserved Instances, Partial-Upfront
  • Verbleibende 10–20 %: On-Demand und Spot für Burst-Kapazität

Spot Instances für unkritische Workloads

Spot Instances bieten Einsparungen von bis zu 90 %. Sie eignen sich gut für:

  • CI/CD-Build-Runner
  • Batch-Verarbeitungsjobs
  • Entwicklungs- und Testumgebungen
  • Zustandslose Worker-Nodes in Kubernetes

Konfigurieren Sie eine gemischte ASG für Resilienz:

{
  "MixedInstancesPolicy": {
    "InstancesDistribution": {
      "OnDemandBaseCapacity": 2,
      "OnDemandPercentageAboveBaseCapacity": 20,
      "SpotAllocationStrategy": "capacity-optimized"
    },
    "LaunchTemplate": {
      "LaunchTemplateSpecification": {
        "LaunchTemplateId": "lt-0abc123",
        "Version": "$Latest"
      },
      "Overrides": [
        { "InstanceType": "m6i.xlarge" },
        { "InstanceType": "m5.xlarge" },
        { "InstanceType": "m5a.xlarge" },
        { "InstanceType": "m6a.xlarge" }
      ]
    }
  }
}

So werden 2 On-Demand-Instances als Baseline gehalten, 20 % der zusätzlichen Kapazität mit On-Demand gedeckt und die restlichen 80 % über Spot abgedeckt. Das Auflisten mehrerer Instance-Typen maximiert die Spot-Verfügbarkeit.

Optimierung der Storage-Kosten

S3- und EBS-Kosten summieren sich leise. Begegnen Sie ihnen mit Lifecycle-Policies und Tiering:

S3 Intelligent Tiering

Aktivieren Sie Intelligent-Tiering für Buckets, in denen Zugriffsmuster unvorhersehbar sind:

aws s3api put-bucket-intelligent-tiering-configuration \
  --bucket my-data-bucket \
  --id entire-bucket \
  --intelligent-tiering-configuration '{
    "Id": "entire-bucket",
    "Status": "Enabled",
    "Tierings": [
      { "AccessTier": "ARCHIVE_ACCESS", "Days": 90 },
      { "AccessTier": "DEEP_ARCHIVE_ACCESS", "Days": 180 }
    ]
  }'

S3-Lifecycle-Regeln

Für Buckets mit bekannten Zugriffsmustern:

{
  "Rules": [
    {
      "ID": "archive-old-logs",
      "Status": "Enabled",
      "Filter": { "Prefix": "logs/" },
      "Transitions": [
        { "Days": 30, "StorageClass": "STANDARD_IA" },
        { "Days": 90, "StorageClass": "GLACIER" },
        { "Days": 365, "StorageClass": "DEEP_ARCHIVE" }
      ],
      "Expiration": { "Days": 730 }
    }
  ]
}

Bereinigung von EBS-Volumes

Nicht angehängte EBS-Volumes sind reine Verschwendung. Finden und bereinigen Sie sie:

# Find unattached volumes
aws ec2 describe-volumes \
  --filters Name=status,Values=available \
  --query 'Volumes[*].{ID:VolumeId,Size:Size,Created:CreateTime}' \
  --output table

# Also check for old snapshots
aws ec2 describe-snapshots --owner-ids self \
  --query 'Snapshots[?StartTime<`2025-06-01`].{ID:SnapshotId,Size:VolumeSize,Date:StartTime}' \
  --output table

Automatisieren Sie dies mit einer wöchentlichen Lambda-Funktion oder nutzen Sie AWS Trusted Advisor.

Eine FinOps-Praxis etablieren

Tools und Taktiken sind wichtig, doch dauerhafte Kostenoptimierung erfordert organisatorischen Wandel:

Struktur des FinOps-Teams

  • FinOps Lead -- verantwortet die Praxis, setzt Ziele, reportet an die Leitung
  • Engineering Champions -- einer pro Team, verantwortlich für das Kostenbewusstsein im Team
  • Finance Partner -- übersetzt technische Einsparungen in Geschäftskennzahlen

Der monatliche FinOps-Zyklus

  1. Woche 1: Report. Erstellen Sie Kostenberichte nach Team, Service und Umgebung. Vergleichen Sie mit Budget und Vormonat.
  2. Woche 2: Analyse. Identifizieren Sie die fünf größten Kostenanomalien und Optimierungspotenziale.
  3. Woche 3: Optimierung. Führen Sie Rightsizing durch, aktualisieren Sie Reservierungen, bereinigen Sie ungenutzte Ressourcen.
  4. Woche 4: Review. Präsentieren Sie die Ergebnisse den Stakeholdern. Feiern Sie Erfolge.

Cost Anomaly Detection

Richten Sie AWS Cost Anomaly Detection ein, um unerwartete Ausschläge zu erwischen, bevor sie teuer werden:

aws ce create-anomaly-monitor \
  --anomaly-monitor '{
    "MonitorName": "service-monitor",
    "MonitorType": "DIMENSIONAL",
    "MonitorDimension": "SERVICE"
  }'

aws ce create-anomaly-subscription \
  --anomaly-subscription '{
    "SubscriptionName": "cost-alerts",
    "MonitorArnList": ["arn:aws:ce::123456789:anomalymonitor/abc123"],
    "Subscribers": [
      { "Address": "[email protected]", "Type": "EMAIL" },
      { "Address": "arn:aws:sns:us-east-1:123456789:cost-alerts", "Type": "SNS" }
    ],
    "Threshold": 100,
    "Frequency": "DAILY"
  }'

Checkliste schneller Gewinne

Wenn Sie diese Woche anfangen wollen, Geld zu sparen, sind dies die Maßnahmen mit der größten Wirkung:

  • Nicht angehängte EBS-Volumes und alte Snapshots löschen
  • Non-Production-Instances außerhalb der Geschäftszeiten stoppen oder beenden
  • S3 Intelligent-Tiering für große Buckets aktivieren
  • Ungenutzte Elastic IPs entfernen (sie kosten Geld, wenn sie nicht angehängt sind)
  • Alte AMIs und zugehörige Snapshots prüfen und löschen
  • NAT Gateways in Dev-Umgebungen gegen NAT-Instances tauschen
  • gp3-Volumes anstelle von gp2 aktivieren (20 % günstiger, bessere Performance)
  • Datentransferkosten prüfen -- VPC-Endpoints für S3 und DynamoDB nutzen

Die Zahlen, die zählen

Verfolgen Sie diese Metriken monatlich:

  • Unit Cost -- Kosten pro Transaktion, Nutzer oder Request (nicht nur Gesamtausgaben)
  • Coverage Ratio -- Anteil der Compute-Kapazität, die durch Savings Plans oder RIs abgedeckt ist
  • Waste Ratio -- ungenutzte Ressourcen als prozentualer Anteil der Gesamtausgaben
  • Kosten pro Umgebung -- Verhältnis Produktion zu Non-Production (Ziel: 70/30 oder besser)

Fazit

AWS-Kostenoptimierung ist kein Projekt mit Enddatum. Sie ist eine fortlaufende Praxis, die Sichtbarkeit, Verantwortlichkeit und regelmäßige Aufmerksamkeit erfordert. Die Strategien in diesem Leitfaden -- Tagging, Rightsizing, Commitment-Rabatte, Spot Instances, Storage-Optimierung und organisatorische FinOps-Praktiken -- wirken zusammen, um eine Kultur zu schaffen, in der Kosteneffizienz ein Feature ist, kein nachträglicher Gedanke.

Bei DevOpsVibe führen wir umfassende AWS-Kosten-Audits durch und etablieren FinOps-Praktiken, die messbare Einsparungen liefern. Unsere Kunden erzielen in der Regel innerhalb des ersten Quartals Kostenreduktionen von 30–50 %. Wenn Ihre AWS-Rechnung schneller wächst als Ihr Geschäft, melden Sie sich bei uns und lassen Sie uns Ihnen helfen, wieder die Kontrolle zu übernehmen.

abgelegt unter
awsawsfinopscloudcost-optimizationinfrastructuregovernance
mit uns arbeiten

Soll unser Team Ihrer Infrastruktur helfen?

talk to an engineerFree 30-min discovery callBook
close