Dieser Inhalt ist veraltet. Diese Version des Well-Architected Framework finden Sie jetzt unter: https://docs.aws.amazon.com/de_de/wellarchitected/2022-03-31/framework/reliability.html

REL 12: Wie lässt sich die Zuverlässigkeit testen?

Nachdem Sie Ihre Workload so konzipiert haben, dass sie den Belastungen der Produktion standhält, sind Tests die einzige Möglichkeit, sie auf die erwartete Funktionalität und Ausfallsicherheit hin zu testen.

Ressourcen

Well-Architected lab: Level 300: Testing for Resiliency of EC2 RDS and S3
Injecting Chaos to Amazon EC2 using AWS Systems Manager
Resilience Engineering: Learning to Embrace Failure
AWS re:Invent 2019: Improving resiliency with chaos engineering (DOP309-R1)
Continuous Delivery and Continuous Integration
Using Canaries (Amazon CloudWatch Synthetics)
Use CodePipeline with AWS CodeBuild to test code and run builds
Automate your operational playbooks with AWS Systems Manager
Principles of Chaos Engineering
Apache JMeter
Casey Rosenthal, Lorin Hochstein, Aaron Blohowiak, Nora Jones, Ali Basiri. “Chaos Engineering” (August 2017)
AWS Marketplace: products that can be used for continuous integration
APN Partner: partners that can help with implementation of a continuous integration pipeline

Bewährte Methoden:

Verbesserungsplan

Untersuchen von Fehlern mit Playbooks

  • Ermitteln von Probleme mit Playbooks: Playbooks sind dokumentierte Prozesse für die Untersuchung von Problemen. Durch die Dokumentation der Prozesse in Playbooks schaffen Sie die Voraussetzung für eine einheitliche und schnelle Reaktion auf Fehlerszenarien. Playbooks müssen die Informationen und Anleitungen enthalten, die eine entsprechend qualifizierte Person zum Zusammentragen sachdienlicher Informationen, zum Identifizieren möglicher Fehlerursachen, zum Isolieren von Fehlern und zum Bestimmen beitragender Faktoren (d. h. zum Analysieren nach einem Vorfall) benötigt.
  • Durchführen von Analysen nach Vorfällen

  • Festlegen eines Standards für Analysen nach Vorfällen: Durch gute Analysen nach Vorfällen lassen sich allgemeine Lösungen für Probleme mit Architekturmustern ermitteln, die Sie bereits an anderer Stelle in den Systemen anwenden.
  • Verwenden eines Prozesses zur Ermittlung beitragender Faktoren: Erarbeiten Sie ein Verfahren, um die beitragenden Faktoren eines Ereignisses zu ermitteln und zu dokumentieren. Damit können Sie Abhilfemaßnahmen entwickeln, um ein erneutes Auftreten einzudämmen oder gänzlich zu verhindern, und Verfahren für eine rasche und wirksame Reaktion erstellen. Informieren Sie nach Bedarf auf zielgruppengerechte Weise über beitragende Faktoren.
    What is log analytics?
  • Testen funktionaler Anforderungen

  • Testen funktionaler Anforderungen: Dazu gehören Komponenten- und Integrationstests, mit denen die erforderliche Funktionalität validiert wird.
    Use CodePipeline with AWS CodeBuild to test code and run builds
    AWS CodePipeline Adds Support for Unit and Custom Integration Testing with AWS CodeBuild
    Continuous Delivery and Continuous Integration
    Using Canaries (Amazon CloudWatch Synthetics)
    Software test automation
  • Testen von Skalierungs- und Leistungsanforderungen

  • Testen von Skalierungs- und Leistungsanforderungen: Führen Sie Lasttests durch, um zu überprüfen, ob die Workload die Skalierungs- und Leistungsanforderungen erfüllt.
    Distributed Load Testing on AWS: simulate thousands of connected users
    Apache JMeter
  • Testen der Ausfallsicherheit mit Chaos Engineering

  • Testen der Ausfallsicherheit mit Chaos Engineering: Führen Sie Tests aus, die regelmäßig Fehler in Vorproduktions- und Produktionsumgebungen einschleusen. Stellen Sie eine Hypothese dazu auf, wie Ihre Workload auf einen Fehler reagiert, vergleichen Sie dann die Hypothese mit den Testergebnissen und iterieren Sie, wenn sie nicht übereinstimmen. Stellen Sie sicher, dass Produktionstests keine Auswirkungen auf Benutzer haben.
    Principles of Chaos Engineering
    Well-Architected lab: Level 300: Testing for Resiliency of EC2 RDS and S3
    Injecting Chaos to Amazon EC2 using AWS Systems Manager
    AWS re:Invent 2019: Improving resiliency with chaos engineering (DOP309-R1)
  • Regelmäßiges Durchführen von Ernstfallübungen

  • Planen Sie Ernstfallübungen zur regelmäßigen Erprobung Ihrer Runbooks und Playbooks.: An Ernstfallübungen sollten alle Mitarbeiter beteiligt sein, die von einer Produktionsunterbrechung betroffen sein können: Geschäftsinhaber, Entwickler, Betriebspersonal und Notfallteams.