WAF++ WAF++
Back to WAF++ Homepage

WAF-PERF-060 – Load & Stress Testing in CI/CD Pipeline

Beschreibung

Alle produktionskritischen Services MÜSSEN Lasttests mit definierten Akzeptanzkriterien als Bestandteil der CI/CD-Pipeline haben. Deployment in Produktion MUSS durch bestandenen Lasttest freigegeben werden. Performance-Regressionen (> 10% P99-Verschlechterung gegenüber Baseline) MÜSSEN automatisch erkannt und als Deployment-Blocker behandelt werden. Stresstests MÜSSEN mindestens quartalsweise durchgeführt werden, um Kapazitätsgrenzen zu ermitteln.

Rationale

Performance-Probleme, die in der Produktion entdeckt werden, sind 10–100x teurer als in der Vorproduktionsphase. Jedes Deployment ohne Lasttest ist ein Experiment mit Nutzern als Probanden. Auto-Scaling, Connection Pools, Datenbankabfrage-Pläne und Caching-Konfigurationen müssen alle unter realistischer gleichzeitiger Last validiert werden.

Bedrohungskontext

Risiko Beschreibung

Performance-Regression in Produktion

Neues Feature verursacht 30% P99-Anstieg → entdeckt erst nach Nutzerbeschweren.

Auto-Scaling-Versagen

Scaling-Konfiguration greift zu spät oder gar nicht → entdeckt erst beim echten Traffic-Peak.

Connection-Pool-Erschöpfung

Concurrent-Load sättigt Connection Pool → entdeckt erst bei Production-Incident.

Unbekannte Kapazitätsgrenzen

Kein Stresstest → niemand weiß, bei welcher Last der Service versagt.

Anforderung

  • Lasttests MÜSSEN automatisch als Deployment-Gate in der CI/CD-Pipeline ausgeführt werden

  • Akzeptanzkriterien MÜSSEN vor dem Test definiert sein: P95 < [SLO-Ziel], Fehlerrate < 0.1%

  • Performance-Regressionen (> 10% P99-Anstieg gegenüber Baseline) MÜSSEN Deployment blockieren

  • Stresstests MÜSSEN quartalsweise für alle kritischen Services durchgeführt werden

Implementierungsanleitung

  1. Lasttest-Framework wählen: k6 (developer-friendly, JavaScript), Gatling (Scala, hoher Throughput), Locust (Python)

  2. Test-Szenarien definieren: Haupt-User-Journeys testen, nicht nur einzelne Endpoints

  3. Akzeptanzkriterien definieren: P95/P99 < SLO-Ziel, Error-Rate < 0.1%, Target-TPS erreicht

  4. CI/CD-Integration: Lasttest-Stage nach Build/Unit-Tests, vor Produktion-Deployment

  5. Baseline-Management: Testergebnisse als Artefakte speichern; Baseline nach jedem erfolgreichen Test aktualisieren

  6. Regression-Check: Automatischer Vergleich gegen Baseline; > 10% P99-Anstieg = Deployment-Stopp

  7. Stresstest-Kalender: Quartalsweise manuelle Stresstests mit 2x/5x Peak-Last

Reifegrad-Abstufung

Level Bezeichnung Kriterien

1

Keine Lasttests

Performance unter Last völlig unbekannt; Probleme werden in Produktion entdeckt.

2

Manuelle Lasttests

Vor großen Releases manuell ausgeführt; keine CI-Integration; keine Akzeptanzkriterien.

3

Automatisch im CI/CD-Gate

Automatisch nach Build; Akzeptanzkriterien enforced; Deployment blockiert bei Failure.

4

Regression-Detection

Baseline-Vergleich automatisch; > 10% P99-Anstieg = Block; quartalsweise Stresstests.

5

Continuous Performance Testing

Permanente Last auf Staging; Chaos Engineering integriert; ML-Anomalie-Detection.

Terraform Checks

waf-perf-060.tf.aws.codepipeline-performance-stage

Prüft: AWS CodePipeline sollte eine Performance-Test-Stage vor dem Produktions-Deployment haben.

Compliant Non-Compliant
resource "aws_codepipeline" "app" {
  name = "pipeline-payment-api"
  stage { name = "Source" }
  stage { name = "Build" }
  stage {
    name = "PerformanceTest"
    action {
      name     = "LoadTest"
      category = "Build"
      provider = "CodeBuild"
      configuration = {
        ProjectName = aws_codebuild_project.load_test.name
      }
    }
  }
  stage { name = "Deploy" }
}
resource "aws_codepipeline" "app" {
  name = "pipeline-payment-api"
  stage { name = "Source" }
  stage { name = "Build" }
  stage { name = "Deploy" }
  # Kein Performance-Test-Stage
  # WAF-PERF-060 Violation
}

Remediation: Performance-Test-Stage zwischen Build und Prod-Deployment hinzufügen. CodeBuild-Projekt für k6/Gatling-Ausführung konfigurieren. Pipeline blockiert Prod-Deployment bei Akzeptanzkriterien-Failure.

Evidenz

Typ Pflicht Beschreibung

IaC / Code

✅ Pflicht

Lasttest-Skripte mit Akzeptanzkriterien in Versionskontrolle.

Process

✅ Pflicht

CI/CD-Pipeline-Konfiguration mit Lasttest als Deployment-Gate.

Config

Optional

Historische Lasttest-Ergebnisse als Regression-Baseline.

Governance

Optional

Performance-Test-Strategie-Dokument mit Szenarien und Kadenz.

Regulatorisches Mapping

Framework Controls

ISO/IEC 25010:2011

8.3.2 – Performance efficiency; 8.3.2.1 – Time behaviour; 8.3.2.2 – Resource utilisation; 8.3.2.3 – Capacity

AWS Well-Architected Framework

Performance Efficiency Pillar – Select the right resource types and sizes

Azure Well-Architected Framework

Performance Efficiency – Choose the right resources

Google Cloud Architecture Framework

Performance optimization – Right-size your instances

TOGAF 10

ADM Phase B – Business architecture; ADM Phase C – Application architecture

DORA

DORA 2024 – Technical practices; DORA 2024 – Performance monitoring

ISO/IEC 29119

4.4.3 – Test design techniques; 4.5.3 – Test execution

ISO/IEC 12207

8.2.2.3 – Design and development of software

ITIL 4

SVS – Service value system; DP – Design principle

BSI C5:2020

OPS-01 – Operational monitoring; OPS-02 – Operational control

CIS Controls v8

CIS 8 – Continuous Vulnerability Management

NIST SP 800-53

RA-1 – Security assessment policy; RA-2 – Security assessment controls

NIST CSF 2.0

DE.CM – Continuous monitoring; DE.AE – Anomaly detection

FedRAMP

RA-2, RA-5 (Moderate/High baseline)

SOC 2 Type II

CC6.1 – Logical access security software; CC7.1 – Infrastructure and software monitoring

TISAX

Information security – Performance monitoring

ANSSI SecNumCloud

Domain – Performance monitoring

BIO

BIO – Prestatiedoelstellingen

ENS High

op.exp.2 – Configuración de seguridad

UK NCSC CAF

B4 – System security; B5 – System performance

CMMC 2.0

RA.L2-3.8.1 – Automated monitoring

IRAP

ISM – Performance monitoring

CCCS PBMM

RA-2 – Security assessment controls; RA-5 – Security assessments

MAS TRM

Ch.5 – Technology risk governance

ISMAP

Performance monitoring and validation

FISC

Technical measures – Performance monitoring

Verwandte Controls