View a markdown version of this page

Latenzinjektion - Amazon EBS

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Latenzinjektion

Verwenden Sie die Aktion Latency Injection (aws:ebs:volume-io-latency) in AWS FIS , um eine erhöhte I/O Latenz auf Ihren Amazon EBS-Volumes zu simulieren und zu testen, wie Ihre Anwendungen auf eine Verschlechterung der Speicherleistung reagieren. Mit dieser Aktion können Sie den Latenzwert angeben, der injiziert werden soll, sowie den Prozentsatz I/O , in dem sich dies auf das Zielvolume auswirkt. Mit AWS FIS können Sie vorkonfigurierte Vorlagen für Latenzexperimente verwenden, um mit dem Testen verschiedener I/O Latenzmuster zu beginnen, die bei Speicherfehlern auftreten können. Diese Vorlagen sind als erste Reihe von Szenarien konzipiert, die Sie verwenden können, um Ihre Anwendungen zu unterbrechen und die Stabilität zu testen. Sie sind nicht dafür konzipiert, alle Arten von Auswirkungen abzudecken, denen Ihre Anwendungen in der realen Welt ausgesetzt sein können. Wir empfehlen Ihnen, sie so anzupassen, dass Sie je nach den Leistungsanforderungen Ihrer Anwendungen mehrere verschiedene Tests ausführen können. Sie können die verfügbaren Vorlagen anpassen oder neue Versuchsvorlagen erstellen, um sie auf Ihre anwendungsspezifischen Anforderungen hin zu testen.

Pre-configured Vorlagen für Latenzexperimente

Amazon EBS stellt die folgenden Vorlagen für Latenzexperimente über die EBS-Konsole und die AWS FIS Szenariobibliothek bereit. Sie können diese Vorlagen direkt auf Ihren Ziel-Volumes verwenden, um ein Latenzinjektionsexperiment durchzuführen.

  • Anhaltende Latenz — Simuliert eine konstante Latenz. Dieses Experiment verwendet eine Latenzinjektion und hat eine Gesamtdauer von 15 Minuten. Dieses Experiment simuliert eine anhaltende Latenz bei 50 Prozent des Lesens I/O und 100 Prozent des Schreibens I/O: 500 ms für 15 Minuten.

  • Steigende Latenz — Simuliert eine schrittweise Erhöhung der Latenz. Dieses Experiment verwendet fünf Latenzinjektionsaktionen und hat eine Gesamtdauer von 15 Minuten. In diesem Experiment wird ein allmählicher Anstieg der Latenz bei 10 Prozent des Lesens I/O und 25 Prozent des Schreibens simuliert I/O: 50 ms für 3 Minuten, 200 ms für 3 Minuten, 700 ms für 3 Minuten, 1 Sekunde für 3 Minuten und 15 Sekunden für 3 Minuten.

  • Intermittierende Latenz — Simuliert starke intermittierende Latenzspitzen mit dazwischen liegenden Erholungsphasen. Dieses Experiment verwendet drei Latenzinjektionsaktionen und hat eine Gesamtdauer von 15 Minuten. Bei diesem Experiment werden drei Latenzspitzen bei 0,1 Prozent der Lese- und Schreibvorgänge simuliert I/O: eine 30-Sekunden-Spitze, die eine Minute andauert, eine 10-Sekunden-Spitze, die 2 Minuten anhält, und eine 20-Sekunden-Spitze, die 2 Minuten andauert. Zwischen den einzelnen Latenzspitzen gibt es Erholungsphasen von 5 Minuten.

  • Abnehmende Latenz — Simuliert eine allmählich abnehmende Latenz. Dieses Experiment verwendet fünf Latenzinjektionsaktionen und hat eine Gesamtdauer von 15 Minuten. In diesem Experiment wird eine allmähliche Verringerung der Latenz bei 10 Prozent der Lese I/O - und Schreibvorgänge simuliert I/O: 20 Sekunden für 3 Minuten, 5 Sekunden für 3 Minuten, 900 ms für 3 Minuten, 300 ms für 3 Minuten und 40 ms für 3 Minuten.

Passen Sie vorkonfigurierte Szenarien an

Sie passen die oben genannten vorkonfigurierten Vorlagen an oder erstellen Ihre eigenen neuen Versuchsvorlagen mithilfe der folgenden anpassbaren Parameter.

  • readIOPercentage— Prozentsatz der I/O Lesevorgänge, bei denen Latenz erzeugt wird. Dies ist der Prozentsatz aller I/O Lesevorgänge auf dem Volume, die von der Aktion betroffen sein werden.

    Bereich: Min. 0,1%, Max. 100%

  • readIOLatencyMilliseconds— Umfang der Latenz, die bei I/O Lesevorgängen injiziert wird. Dies ist der Latenzwert, der I/O während des Experiments für den angegebenen Prozentsatz der Lesevorgänge beobachtet wird.

    Bereich: Min. 1 ms (io2)/10 ms (nicht io2), max. 60 Sekunden

  • writeIOPercentage— Prozentsatz der I/O Schreibvorgänge, bei denen Latenz erzeugt wird. Dies ist der Prozentsatz aller I/O Schreibvorgänge auf dem Volume, die von der Aktion betroffen sein werden.

    Bereich: Min. 0,1%, Max. 100%

  • writeIOLatencyMilliseconds— Umfang der Latenz, die bei I/O Schreibvorgängen injiziert wird. Dies ist der Latenzwert, der bei dem angegebenen Prozentsatz der Schreibvorgänge I/O während des Experiments beobachtet wird.

    Bereich: Min. 1 ms (io2)/10 ms (nicht io2), max. 60 Sekunden

  • duration— Dauer, für die die Latenz auf Basis des ausgewählten Prozentsatzes berechnet wird. I/O

    Bereich: Min. 1 Sekunde, Max. 12 Stunden

Überwachung der Latenzinjektion

Sie können die Auswirkungen auf die Leistung Ihrer Volumes auf folgende Weise überwachen:

  • Verwenden Sie Metriken zur durchschnittlichen Latenz CloudWatch , um die durchschnittliche I/O Latenz pro Minute zu ermitteln. Weitere Informationen finden Sie unter Überwachen Sie Ihre EBS-Volumes mit. CloudWatch

  • Verwenden Sie die detaillierten EBS-Leistungsstatistiken NVMe-CLI, die über CloudWatch Agent und Prometheus verfügbar sind, um die durchschnittliche Latenz pro Sekunde zu ermitteln. I/O Die detaillierten Metriken enthalten auch I/O Latenzhistogramme, anhand derer Sie die Latenzvarianz auf Ihren Volumes analysieren können. Weitere Informationen finden Sie unter Detaillierte NVMe-Leistungsstatistiken.

  • Verwenden Sie die Statusüberprüfungen des Amazon EBS-Volumes. Wenn Sie I/O Latenz eingeben, wechselt der Status des Volumes in den warning Status.

Überlegungen

Beachten Sie Folgendes, wenn Sie die EBS-Latenzinjektion verwenden:

  • Die Latenzinjektion wird auf allen Nitro-based Instance-Typen unterstützt, mit Ausnahme von: P4d, P5, P5e, Trn2u, G6, G6f, Gr6, Gr6f, M8i,, R8i,, i8GE und. M8i-flex C8i-flex R8i-flex Mac-m4pro Mac-m4

  • Möglicherweise stellen Sie eine Abweichung von bis zu 5 Prozent zwischen dem im Experiment angegebenen Latenzwert und der daraus resultierenden beobachteten Latenz fest.

  • Wenn Sie nur eine sehr kleine Anzahl von I/O Vorgängen ausführen, entspricht der in den Aktionsparametern I/O angegebene Prozentsatz der Operationen möglicherweise nicht dem tatsächlichen Prozentsatz der von der Aktion I/O betroffenen Operationen.

Um ein Latenzinjektionsexperiment auf einem Amazon EBS-Volume durchzuführen
  1. Öffnen Sie die Amazon-EC2-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Volumes aus.

  3. Wählen Sie die Volumes aus, auf denen das Experiment ausgeführt werden soll, und wählen Sie Actions, Resilience Testing, Inject Volume I/O Latency aus.

    Die AWS Fault Injection Service Konsole wird geöffnet.

  4. Wählen Sie im Fenster Experiment erstellen den Typ des auszuführenden Experiments aus: Intermittierend, Zunehmend , Anhaltend oder Abnehmend.

  5. Wählen Sie für die IAM-Rollenauswahl die Option Neue Rolle erstellen aus, um eine neue Rolle zu erstellen, die für die Durchführung der Experimente in Ihrem Namen verwendet AWS FIS wird. Wählen Sie alternativ eine vorhandene IAM-Rolle verwenden aus, wenn Sie zuvor eine IAM-Rolle mit den erforderlichen Berechtigungen erstellt haben.

  6. Im Abschnitt Kostenvoranschlag erhalten Sie eine Schätzung der Kosten für die Durchführung des Experiments. Mit wird Ihnen pro Minute AWS FIS, die eine Aktion von Anfang bis Ende ausgeführt wird, auf der Grundlage der Anzahl der Zielkonten für Ihr Experiment in Rechnung gestellt.

  7. Wählen Sie Start Experiment (Experiment starten) aus.