Strategie im Umgang mit Wiederholungen

Strategie für Wiederholungen

Wenn ein gsutil-Vorgang aus einem der folgenden Gründe fehlschlägt, müssen Sie vor einem Neuversuch Maßnahmen ergreifen:

  • Ungültige Anmeldedaten.
  • Das Netzwerk ist nicht erreichbar, da Probleme mit der Proxykonfiguration aufgetreten sind.
  • Der Zugriff wurde verweigert, da der Bucket oder das Objekt, das Sie verwenden möchten, eine ACL hat, die die auszuführende Aktion verhindert.
  • Einzelne Vorgänge, die innerhalb eines Befehls fehlschlagen, der Vorgänge parallel ausführt (d. h. Befehle mit dem übergeordneten Flag "-m").

gsutil wiederholt die folgenden Fehler, ohne dass Sie weitere Maßnahmen ergreifen müssen:

  • Vorübergehende Netzwerkfehler
  • HTTP 429- und 5xx-Fehlercodes
  • HTTP 408-Fehlercodes bei fortsetzbaren Uploads

Bei wiederholbaren Fehlern wiederholt gsutil Anfragen nach der Strategie eines abgeschnittenen binären exponentiellen Backoffs:

  • Abwarten eines zufälligen Zeitraums zwischen [0–1] Sekunden und Wiederholen des Vorgangs.
  • Bei einem Fehlschlag: Abwarten eines zufälligen Zeitraums zwischen [0–2] Sekunden und Wiederholen des Vorgangs.
  • Bei einem weiteren Fehlschlag: Abwarten eines zufälligen Zeitraums zwischen [0–4] Sekunden und Wiederholen des Vorgangs.
  • Dies wird in der Form bis zu einer konfigurierbaren Höchstanzahl an Wiederholungsversuchen (Standard = 23) fortgesetzt.

Dabei ist jeder Wiederholungszeitraum durch einen konfigurierbaren maximalen Zeitraum (Standard = 60 Sekunden) begrenzt.

Standardmäßig führt gsutil Wiederholungsversuche 23 Mal im Verlauf von 1+2+4+8+16+32+60… Sekunden durch, was ungefähr 10 Minuten entspricht. Sie können die Anzahl der Wiederholungsversuche und die maximale Verzögerung für jeden einzelnen Wiederholungsversuch anpassen. Bearbeiten Sie dafür im Abschnitt "[Boto]" der .boto-Konfigurationsdatei die Konfigurationsvariablen num_retries (Anzahl der Wiederholungsversuche) und max_retry_delay (maximale Verzögerung für Wiederholungsversuche). In der Regel müssen diese Werte nicht geändert werden.

Für Datenübertragungen (die Befehle "gsutil cp" und "gsutil rsync") bietet gsutil zusätzliche Funktionen für Wiederholungen in Form von fortsetzbaren Übertragungen. Eine Übertragung, die aufgrund eines vorübergehenden Fehlers unterbrochen wurde, kann im Allgemeinen neu gestartet werden, ohne von vorne beginnen zu müssen. Weitere Informationen dazu finden Sie im Abschnitt zu fortsetzbaren Übertragungen von gsutil help cp.

Weitere Informationen dazu, wie andere Cloud Storage-Tools die Wiederholungsstrategie handhaben, finden Sie unter Wiederholungsstrategie.