Warum habe ich bei meinem Amazon-EBS-Volume eine hohe I/O-Wartezeit, eine längere Warteschlangenlänge und eine erhöhte Latenz?

Lesedauer: 4 Minute
0

Ich habe bei meinem Amazon Elastic Block Store (Amazon EBS) -Volume eine hohe I/O-Wartezeit, eine längere Warteschlangenlänge und einen Anstieg der Latenz. Warum passiert das?

Kurzbeschreibung

Bei Amazon EBS-Volumes weisen eine längere Warteschlangenlänge und eine hohe I/O-Wartezeit darauf hin, dass es zu einer Latenz beim Abschluss des I/O-Vorgangs kommt.

Im Folgenden sind die häufigsten Gründe für eine erhöhte Latenz aufgeführt:

  • Das EBS-Volumen erreicht seinen Durchsatz oder seine IOPS-Grenze.
  • Der Durchsatz oder die IOPS-Grenze der Amazon Elastic Compute Cloud (Amazon EC2) -Instance ist erreicht.
  • Es kommt zu Mikroplatzen.
  • Das Volume wird aus einem Snapshot wiederhergestellt und wird initialisiert.
  • Es liegt ein Problem mit den zugrunde liegenden Speichersubsystemen des Volumes vor.

Lösung

Das Volumen erreicht seinen Durchsatz oder seine IOPS-Grenze

EBS-Volumes haben je nach Typ und Größe Durchsatz- und IOPS-Grenzwerte. Sie können diese Grenzwerte auch für die Volumetypen gp3, io1 und io2 bereitstellen. Wenn Sie an Ihre Grenzen stoßen, kann es zu Latenz kommen. Informationen zum Ermitteln Ihres Durchsatzes und Ihrer IOPS-Grenzwerte finden Sie unter Wie kann ich die maximalen IOPS und den maximalen Durchsatz für ein Amazon EBS-Volume berechnen? Dann können Sie die CloudWatch-Metriken verwenden, um zu überprüfen, ob die EBS-Volumes Ihrer EC2-Instanz die Durchsatz- oder IOPS-Grenzen erreichen.

Wenn Sie häufig Ihr Durchsatz- oder IOPS-Limit erreichen, sollten Sie erwägen, den Datentyp oder die Volumengröße so zu ändern, dass sie Ihren Anwendungsanforderungen entspricht. Es hat sich bewährt, Ihre EBS-Volumes in einer Testumgebung mit Ihrer Workload zu vergleichen, um festzustellen, welche Datentypen für Sie am besten geeignet sind.

Der Durchsatz oder das IOPS-Limit der Instance ist erreicht

EBS-optimierte Instances haben einen maximalen aggregierten Durchsatz und maximale IOPS, die für alle EBS-Volumes erreicht werden können, die an die Instance angeschlossen sind. Möglicherweise stellen Sie eine hohe I/O-Wartezeit und eine erhöhte Latenz fest, aber Ihr Volume erreicht nicht seinen Durchsatz oder seine IOPS-Grenzen. Wenn dies der Fall ist, überprüfen Sie, ob der Durchsatz oder die IOPS-Grenze des Volumes den Durchsatz oder die IOPS-Grenze der Instance erreicht.

Sie haben beispielsweise ein GP3-Volumen von 1 TiB mit 16.000 bereitgestellten IOPS und einem Durchsatz von 700 MiB/s, das an eine t3.medium-Instance angehängt ist. Eine t3.medium-Instance kann eine maximale Leistung von 260,57 MiB/s Durchsatz und 11.800 IOPS erreichen, die über alle an sie angeschlossenen Volumes aggregiert werden. Die Instance erreicht dies nur für 30 Minuten in einem Zeitraum von 24 Stunden. Anschließend wird die Leistung auf einen Basiswert von 43,43 MiB/s und 2.000 IOPS gedrosselt, die über alle angeschlossenen Volumes aggregiert werden. Ihr einzelnes Volume kann zwar bis zu 700 MiB/s und 16.000 IOPS aufrechterhalten, die Instance kann diese Leistung jedoch nicht erreichen.

Wenn Ihre Anforderungen an die Anwendungsleistung die Fähigkeiten Ihrer Instance übersteigen, sollten Sie erwägen, den Instance-Typ auf einen zu ändern, der Ihren Workload-Anforderungen gerecht wird. Eine Liste der verfügbaren Instance-Typen mit ihren jeweiligen Amazon EBS-Durchsatz- und IOPS-Grenzwerten finden Sie unter Spezifikationen für EBS-optimierte Instances.

Es kommt zu Mikroplatzen

Micro-Bursting tritt auf, wenn ein Volume IOPS oder Durchsatz über einen deutlich kürzeren Zeitraum als den Erfassungszeitraum erreicht. Micro-Bursting wirkt sich nicht auf die Amazon CloudWatch-Metriken aus, und Sie könnten Micro-Bursting verpassen, wenn Sie nicht danach suchen. Um festzustellen, ob Micro-Bursting das Problem ist, findest du unter Wie kann ich feststellen, ob mein EBS-Volume ein Micro-Bursting ist, und wie kann ich verhindern, dass dies passiert?

Das Volumen wird aus einem Snapshot wiederhergestellt und wird initialisiert

Wenn ein Volume aus einem Snapshot wiederhergestellt wird, werden seine Daten aus Amazon Simple Storage Service (Amazon S3) abgerufen und auf das Volume geschrieben. Dieser Vorgang wird Initialisierung genannt. Die Initialisierung kann zu einer erhöhten Latenz bei I/O-Vorgängen führen, wenn auf jeden Datenblock zum ersten Mal zugegriffen wird.

Um die Auswirkungen der Initialisierung auf die Volumenleistung zu verringern, können Sie die Initialisierung des Volumes erzwingen, indem Sie aus den Blöcken auf dem Volume lesen. Sie können auch die schnelle Snapshot-Wiederherstellung von Amazon EBS aktivieren, sodass das Volume bei der Erstellung vollständig initialisiert wird.

Es liegt ein Problem mit den zugrunde liegenden Speichersubsystemen des Volumes vor

Wenn Sie alle vorherigen Schritte zur Fehlerbehebung ausprobiert haben und immer noch eine hohe Latenz auftritt, wenden Sie sich an den AWS-Support.


Ähnliche Informationen

Wie kann ich CloudWatch-Metriken verwenden, um den durchschnittlichen Durchsatz und die durchschnittliche Anzahl von IOPS zu berechnen, die mein EBS-Volume bereitstellt?

Behebung der I/O-Latenz bei der Wiederherstellung von Amazon EBS-Volumes aus EBS-Snapshots

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren