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 10: Wie schützen Sie Ihre Workload mithilfe der Fehlerisolierung?

Fehlerisolierte Grenzen beschränken die Auswirkungen eines Ausfalls innerhalb eines Workloads auf eine begrenzte Anzahl von Komponenten. Komponenten außerhalb der Grenze sind vom Ausfall nicht betroffen. Wenn Sie mehrere fehlerisolierte Grenzen verwenden, können Sie die Auswirkungen auf Ihren Workload einschränken.

Ressourcen

AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications (ARC209-R2)
Shuffle-sharding: AWS re:Invent 2019: Introducing The Amazon Builders’ Library (DOP328)
AWS re:Invent 2018: How AWS Minimizes the Blast Radius of Failures (ARC338)
AWS re:Invent 2019: Innovation and operation of the AWS global network infrastructure (NET339)
What is AWS Outposts?
Global Tables: Multi-Region Replication with DynamoDB
AWS Local Zones FAQ
AWS Global Infrastructure
The Amazon Builders' Library: Workload isolation using shuffle-sharding

Bewährte Methoden:

Verbesserungsplan

Bereitstellen des Workloads an mehreren Standorten

  • Verwendung mehrerer Availability Zones und AWS-Regionen: Verteilen Sie die Workload-Daten und -Ressourcen über mehrere Availability Zones oder ggf. über mehrere AWS-Regionen. Die Standorte können so vielfältig wie nötig sein.
  • Wenn Ihr Workload für mehrere Regionen bereitgestellt werden muss, wählen Sie eine Strategie für mehrere Regionen aus.: Die meisten Zuverlässigkeitsanforderungen können innerhalb einer einzelnen AWS-Region mithilfe einer Multi Availability Zone-Strategie erfüllt werden. Verwenden Sie bei Bedarf eine Strategie für mehrere Regionen, um Ihre Geschäftsanforderungen zu erfüllen.
    AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications (ARC209-R2)
  • Auswerten von AWS Outposts für Ihre Workload: Wenn Ihre Workload eine niedrige Latenz für Ihr Rechenzentrum vor Ort erfordert oder lokale Datenverarbeitungsanforderungen hat. Führen Sie in diesem Fall die AWS-Infrastruktur und -Services lokal mit AWS Outposts aus.
    What is AWS Outposts?
  • Bestimmen Sie, ob AWS Local Zones Ihnen beim Bereitstellen von Services für Ihre Benutzer hilft: o Wenn Sie Anforderungen mit geringer Latenz haben, prüfen Sie, ob sich AWS Local Zones in der Nähe Ihrer Benutzer befindet. Wenn ja, verwenden Sie es, um Workloads näher an diesen Benutzern bereitzustellen
    AWS Local Zones FAQ
  • Automatisierte Wiederherstellung für Komponenten, die auf einen einzelnen Standort beschränkt sind

  • Implementieren der Selbstreparatur: Stellen Sie Ihre Instances oder Container nach Möglichkeit mit automatischer Skalierung bereit. Wenn dies nicht möglich ist, nutzen Sie für EC2-Instances die automatische Wiederherstellung oder implementieren Sie eine automatische Selbstreparatur basierend auf Amazon EC2- oder ECS-Container-Lebenszyklusereignissen.
  • Nutzen Sie die automatische Wiederherstellung von EC2-Instances für Workloads, die eine IP-Adresse für eine einzelne Instance, eine private oder elastische IP-Adresse und Instance-Metadaten erfordern.
    Recover your instance.
  • Wenn eine automatische Skalierung oder EC2-Wiederherstellung nicht möglich ist, können Sie die Selbstreparatur mithilfe von EC2-Instance-Lebenszyklusereignissen oder ECS-Ereignissen automatisieren.
    EC2 Auto Scaling lifecycle hooks
    Amazon ECS events
  • Verwenden von Bulkhead-Architekturen

  • Verwenden von Bulkhead-Architekturen: Mit einem Bulkhead-Muster wird gewährleistet, dass sich ein Fehler auf eine kleine Teilmenge von Anfragen/Benutzern beschränkt, sodass nur eine geringe Anzahl von Anfragen beeinträchtigt sind und der Großteil fehlerfrei ausgeführt werden kann. Bulkheads für Daten werden in der Regel Partitionen oder Shards genannt, während Bulkheads für Services als Zellen bezeichnet werden.
    Shuffle-sharding: AWS re:Invent 2019: Introducing The Amazon Builders’ Library (DOP328)
    AWS re:Invent 2018: How AWS Minimizes the Blast Radius of Failures (ARC338)
  • Auswerten der zellenbasierten Architektur für Ihre Workload: In einer zellenbasierten Architektur ist jede Zelle eine vollständige, unabhängige Instance des Service und hat eine feste maximale Größe. Mit zunehmender Last wachsen die Workloads, indem weitere Zellen hinzugefügt werden. Bei eingehendem Datenverkehr wird mit einem Partitionsschlüssel ermittelt, welche Zelle die Anfrage verarbeitet. Jeder Fehler beschränkt sich auf die Zelle, in der er auftritt, sodass die Anzahl der beeinträchtigten Anfragen begrenzt ist, da andere Zellen weiterhin fehlerfrei funktionieren. Es ist wichtig, den richtigen Partitionsschlüssel zu identifizieren, um zellenübergreifende Interaktionen zu minimieren und zu verhindern, dass bei jeder Anfrage komplexe Zuordnungsservices berücksichtigt werden müssen. Services, die komplexe Zuordnungen erfordern, führen nur zu einer Verlagerung des Problems auf die Zuordnungsservices, während Services, für die zellenübergreifende Interaktionen erforderlich sind, die Abhängigkeit von Zellen (und damit die angenommenen Verfügbarkeitsverbesserungen) reduzieren.