Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
Warum schlägt mein Amazon S3-Batch-Replikationsauftrag fehl?
Ich möchte herausfinden, warum mein Amazon Simple Storage Service (Amazon S3)-Batch-Replikationsauftrag fehlschlägt.
Kurzbeschreibung
Die Batch-Replikation kann aufgrund von Problemen mit Berechtigungen, Richtlinien oder einer Auftragskonfiguration fehlschlagen.
Um eine große Anzahl von erfolglosen Vorgängen zu verhindern, legt Amazon S3 für jeden Sammelauftrag einen Schwellenwert für Aufgabenfehler fest. Amazon S3 überwacht die Aufgaben-Fehlerrate, nachdem der Auftrag mindestens 1000 Aufgaben ausführt. Wenn ein Auftrag die Ausfallrate von 50 % überschreitet, schlägt der Auftrag fehl. Gehe wie folgt vor, um das Problem zu ermitteln und zu lösen. Reiche den Auftrag dann erneut ein.
Lösung
Batch-Rollenberechtigungen
Gewähre der Batch-Rolle die folgenden Berechtigungen:
- Stelle PUT-Berechtigungen für das Manifest oder die Konfiguration bereit.
- Stelle GET-Berechtigungen für das Manifest mit dem Bucket bereit, in dem das Manifest gespeichert ist.
- Wenn du dein eigenes Manifest verwendest, gewähre der Batch-Rolle Berechtigungen für den Zugriff auf das Manifest.
- Erteile die s3:CreateJob-Berechtigung, um den Batch-Auftrag zu erstellen.
- Wenn du eine Tag-Option eines Auftrags anwendest, gewähre auch die s3:PutJobTagging-Berechtigung.
Hinweis: Um Batch-Vorgänge zu speichern, muss die Batch-Rolle über GET- und PUT-Berechtigungen für die Manifestdatei verfügen. Weitere Informationen findest du unter Konfigurieren einer AWS Identity and Access Management (IAM)-Rolle für die S3-Batch-Replikation.
Berechtigungen für Replikationsrollen
Wenn ein Batch-Auftrag die Ausfallrate von 50 % überschreitet, liegt möglicherweise ein Problem mit der Konfiguration der Replikationsrolle vor.
Verwende bei der Konfiguration der Replikationsrolle die folgenden Einstellungen:
- Wenn du dieselbe Rolle für Batch- und Replikationsaufträge verwendest, gewähre sowohl Amazon S3 als auch Amazon S3 Batch Operations die Berechtigung, die Rolle zu übernehmen.
- Schließe die erforderlichen Mindestberechtigungen für die Replikation ein. Weitere Informationen findest du unter Warum werden meine Amazon S3-Objekte nicht repliziert, wenn ich die Replikation zwischen meinen Buckets einrichte?
- Gewähre zusätzliche Berechtigungen für AWS Key Management Service (AWS KMS), Bucket-Schlüssel, Änderung des Objekteigentums und Löschen der Markerreplikation.
- Blockiere die Einstellungen für den öffentlichen Zugriff.
- Überprüfe die Berechtigungsgrenzen, die den IAM-Rollen möglicherweise zugeordnet sind, da die Grenzen zu Replikationsfehlern führen können.
Quell- und Ziel-Bucket-Richtlinie
Verwende die folgenden Bucket-Richtlinieneinstellungen:
- Wenn sich der Ziel-Bucket in einem anderen AWS-Konto befindet, gewähre der Replikationsrolle in der Quell-Replikationsregel des Buckets die Erlaubnis, Objekte zu replizieren. Diese Berechtigungen gelten zusätzlich zur IAM-Rollenrichtlinie. Außerdem, konfiguriere den Ziel-Bucket nicht als „Zahlung durch den Anforderer“.
- Standardmäßig ist der Besitzer des Quell-Buckets nicht berechtigt, auf die Objekte zuzugreifen, die andere Konten erstellen. Die Replikationskonfiguration repliziert nur die Objekte, auf die der Besitzer des Quell-Buckets zugreifen kann. Um dieses Problem zu beheben, deaktiviere entweder die Zugriffssteuerungslisten (ACLs) in den Objekteigentumskontrollen oder ändere den Besitz der Objekte auf das Quell-Konto.
- Wenn du das Manifest des Batch-Auftrags in einem kontoübergreifenden Bucket speicherst, erlaube dem Bucket-Konto den Zugriff auf das Manifest. Füge der Bucket-Richtlinie die Berechtigung für die Batch-Rolle hinzu.
AWS-KMS-Berechtigungen für verschlüsselte Objekte
Verwende die folgenden AWS-KMS-Einstellungen für verschlüsselte Objekte:
- Wenn du AWS KMS oder Verschlüsselung auf Objektebene für das Manifest und den Berichts-Bucket verwendest, füge die Batch-Rolle in den Schlüssel ein. Der AWS-KMS-Schlüssel muss es der Batch-Rolle ermöglichen, Daten aus dem Bucket herunterzuladen und hochzuladen.
- Wenn die Replikation einen verschlüsselten Quell- oder Ziel-Bucket umfasst, gewähre den Zugriff auf die Replikations- und Batch-Rollen mit den AWS-KMS-Schlüsseln. Erteile der Batch-Rolle die Berechtigung, das Manifest herunterzuladen.
- Wenn du die Erlaubnis auf der Grundlage des Verschlüsselungskontextes gewähren, gib den ARN an, der auf der Bucket-Schlüsselkonfiguration basiert. Warum werden meine Amazon S3-Objekte nicht repliziert, wenn ich die Replikation zwischen meinen Buckets einrichte?
- Verwende Amazon S3 Inventory-Berichte, die mit AWS KMS verschlüsselt sind. Amazon S3 unterstützt keine manuell generierten, mit AWS KMS verschlüsselten Manifestdateien für Batch-Vorgänge.
Explizite Deny-Anweisungen
Wenn die Deny-Anweisung der Bucket-Richtlinie Aktionen einschränkt, die auf dem Netzwerk basieren, kann Amazon S3 die Replikation nicht durchführen. Die Amazon S3-Replikation verwendet nicht den Virtual Private Cloud (VPC)-Endpunkt oder Amazon S3-Zugriffspunkte, die du für den privaten Zugriff konfiguriert hast.
Gehe wie folgt vor, um Einschränkungen aufzuheben:
- Konfiguriere die Bucket-Richtlinie des Manifests so, dass keine Aktionen verweigert werden, die die Batch-Rolle erfordert.
- Wenn du beim Erstellen des S3-Batch-Auftrags privaten Zugriff verwendest, gewähre dem VPC-Endpunkt die Berechtigung, den Batch-Auftrag zu erstellen.
- Stelle sicher, dass du die erforderlichen Replikationsberechtigungen in IAM, den Service-Kontrollrichtlinien (SCPs) von AWS Organizations, Bucket-Richtlinien oder AWS-KMS-Richtlinien nicht verweigert hast.
Fehler bei der Konfiguration von Batch-Replikationsaufträgen
Konfigurationsprobleme können zu den folgenden Fehlerreaktionen führen.
Bei der Manifestgenerierung wurden keine Schlüssel gefunden, die den Filterkriterien entsprechen
Nimm keine Objekte in das Manifest auf, die sich in Amazon S3 Glacier oder Amazon S3 Glacier Deep Archive befinden, da sie bei einem Replikationsvorgang nicht gefunden werden.
Wenn der Präfixfilter oder die Filterkriterien der Replikationsregel im Batch-Replikationsauftrag nicht mit einem Präfix im Bucket übereinstimmen, stelle die Objekte wieder her. Nachdem du die Objekte wiederhergestellt hast, führe die Replikation erneut durch.
SrcGetObjectNotPermitted oder SrcHeadObjectNotPermitted
Du erhältst den Fehler SrcGetObjectNotPermitted oder SrcHeadObjectNotPermitted, wenn die IAM-Rolle, die du in der Replikationsregel konfiguriert hast, nicht berechtigt ist, auf Objekte zuzugreifen. Du kannst auch einen der Fehler erhalten, wenn die IAM-Rolle keine Objektmetadaten aus dem Quell-Bucket abrufen kann. Um diese Probleme zu beheben, füge der IAM-Rollenrichtlinie die Berechtigung s3:GetObjectVersionForReplication hinzu.
Weitere Informationen findest du unter Berechtigungen zum Erstellen von Replikationsregeln einrichten.
DstPutObjectNotPermitted
Wenn du den Fehler DstObjectNotPermitted erhalten, kann Amazon S3 keine Objekte in den Ziel-Bucket replizieren. Um dieses Problem zu beheben, gewähre die Berechtigung s3:ReplicateObject oder s3:ObjectOwnerOverrideToBucketOwner sowohl in der IAM-Rollenrichtlinie als auch in der Ziel-S3-Bucket-Richtlinie.
Der Batch-Auftrag wurde erfolgreich ausgeführt, aber die Anzahl der im Ziel-Bucket erwarteten Objekte ist nicht dieselbe
Dieser Fehler tritt auf, wenn Objekte, die im Manifest aufgeführt sind und dem Filter nicht übereinstimmen. Um dieses Problem zu beheben, korrigiere die Tippfehler in dem Filter, den du beim Erstellen des Auftrag ausgewählt hast oder in der Konfiguration der Replikationsregeln.
400 InvalidRequest: Task failed due to missing VersionId
Dieser Fehler tritt auf, wenn der Auftrag im Manifest auf ein Objekt mit einem leeren Versions-ID-Feld stößt. Um dieses Problem zu beheben, wandle die leeren Versions-IDs in Null-Zeichenfolgen um.
Reasons for failure. The job report could not be written to your report bucket. Please check your permissions.
Amazon S3 unterstützt keine Objektsperren für den Bucket, den du zum Speichern des Batch-Abschlussberichts festgelegt hast. Speichere den Bericht stattdessen in einem S3-Bucket ohne Objektsperre.
Objekte wurden ohne Fehlermeldung übersprungen
Amazon S3 repliziert kein Objekt in einem Quell-Bucket, das eine Replik aus einer anderen Replikationskonfiguration ist.
Außerdem repliziert Amazon S3 keine Objekte in denselben Ziel-Bucket, in dem eine Replikation erfolgreich abgeschlossen wurde. Stattdessen überspringt Amazon S3 das Objekt ohne eine Fehlermeldung.
Überwachen
Nach Abschluss eines Batch-Replikationsauftrags generiert Amazon S3 einen Batch-Abschlussbericht in dem von dir angegebenen Ziel-Bucket oder Präfix. Dieser Bericht enthält detaillierte Informationen, einschließlich Ausfällen und zugehörigen Fehlermeldungen. Überprüfe den Batch-Abschlussbericht, um Objekte oder Vorgänge zu identifizieren, die während des Replikationsvorgangs fehlgeschlagen sind, und die damit verbundenen Fehler- oder Ausfallgründe.
Verwende Amazon S3-Ereignisbenachrichtigungen, um benachrichtigt zu werden, wenn Objekte nicht in die AWS-Zielregion repliziert werden.
Hinweis: Die Vorbereitung eines Manifests für Amazon S3 nimmt Zeit in Anspruch. Wenn sich der Batch-Auftrag jedoch in der Phase Vorbereiten befindet oder mehrere Stunden lang dieselbe Fertigstellungsrate erreicht hat, wende dich an den AWS Support.
Ähnliche Informationen
- Themen
- Storage
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor einem Jahr
AWS OFFICIALAktualisiert vor 3 Jahren
AWS OFFICIALAktualisiert vor 9 Monaten