Abrufen von Replikationsstatusinformationen - Amazon Simple Storage Service

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.

Abrufen von Replikationsstatusinformationen

Der Replikationsstatus hilft Ihnen, den aktuellen Status eines derzeit replizierten Objekts zu bestimmen. Der Replikationsstatus eines Quellobjekts gibt entweder PENDING, COMPLETED oder FAILED zurück. Der Replikationsstatus eines Replikats gibt REPLICA zurück.

Sie können Replikationsstatus-Werte auch verwenden, wenn Sie S3-Batch-Replikationsaufträge erstellen. Sie können diese Statuswerte beispielsweise verwenden, um Objekte zu replizieren, die entweder nie repliziert wurden oder bei denen die Replikation fehlgeschlagen ist. Weitere Informationen zur Verwendung dieser Werte mit der Batch-Replikation finden Sie unter Verwenden von Replikationsstatusinformationen mit Batch-Replikationsaufträgen.

Übersicht über den Replikationsstatus

Bei der Replikation haben Sie einen Quell-Bucket, auf dem die Replikation konfiguriert wird, und einen oder mehrere Ziel-Buckets, in die Amazon S3 Objekte repliziert. Wenn Sie ein Objekt (mit GetObject) oder Objektmetadaten (mit HeadObject) von diesen Buckets anfordern, gibt Amazon S3 den Header x-amz-replication-status wie folgt in der Antwort zurück:

  • Wenn Sie ein Objekt aus dem Quell-Bucket anfordern, gibt Amazon S3 den Header x-amz-replication-status zurück, wenn das Objekt in der Anforderung für die Replikation geeignet ist.

    Nehmen wir beispielsweise an, dass Sie in Ihrer Replikationskonfiguration das Objektpräfix TaxDocs angeben, um Amazon S3 anzuweisen, nur Objekte mit dem Schlüsselnamenpräfix TaxDocs zu replizieren. Alle Objekte mit diesem Schlüsselnamenpräfix, die Sie hochladen, z. B. TaxDocs/document1.pdf, werden repliziert. Für Objektanforderungen mit diesem Schlüsselnamenpräfix gibt Amazon S3 den Header x-amz-replication-status mit einem der folgenden Werte für den Replikationsstatus des Objekts zurück: PENDING, COMPLETED oder FAILED.

    Anmerkung

    Wenn nach dem Hochladen eines Objekts die Objektreplikation fehlschlägt, können Sie die fehlgeschlagene Replikation nicht erneut durchzuführen versuchen. Sie müssen das Objekt erneut hochladen, oder Sie müssen die S3-Batch-Replikation verwenden, um alle fehlgeschlagenen Objekte zu replizieren. Weitere Informationen zur Verwendung der Batch-Replikation finden Sie unter Replizieren vorhandener Objekte mit der Batch-Replikation.

    Objekte wechseln aufgrund von Problemen wie fehlenden Berechtigungen für Replikationsrollen, AWS Key Management Service (AWS KMS) -Berechtigungen oder Bucket-Berechtigungen in einen FAILED Status. Bei temporären Fehlern, z. B. wenn ein Bucket oder eine Region nicht verfügbar ist, geht der Replikationsstatus nicht in FAILED über, sondern verbleibt bei PENDING. Wenn die Ressource wieder online ist, setzt Amazon S3 die Replikation dieser Objekte fort.

  • Wenn Sie ein Objekt aus einem Ziel-Bucket anfordern und es sich bei dem Objekt Ihrer Anforderung um ein Replikat handelt, das Amazon S3 erstellt hat, gibt Amazon S3 den Header x-amz-replication-status mit dem Wert REPLICA zurück.

Anmerkung

Bevor Sie ein Objekt aus einem Quell-Bucket löschen, bei dem die Replikation aktiviert ist, sollten Sie den Replikationsstatus des Objekts überprüfen, um sicherzustellen, dass das Objekt repliziert wurde.

Wenn eine S3-Lebenszykluskonfiguration auf dem Quell-Bucket aktiviert ist, setzt Amazon S3 alle Lebenszyklusaktionen aus, bis der Status der Objekte als COMPLETED oder FAILED gekennzeichnet wird.

Replikationsstatus bei einer Replikation auf mehrere Ziel-Buckets

Wenn Sie Objekte in mehrere Ziel-Buckets replizieren, verhält sich der Header x-amz-replication-status anders. Der Header des Quellobjekts gibt den Wert COMPLETED nur zurück, wenn die Replikation in alle Ziele erfolgreich ist. Der Header bleibt auf dem Wert PENDING, bis die Replikation für alle Ziele abgeschlossen ist. Wenn die Replikation bei einem oder mehreren Zielen fehlschlägt, liefert der Header FAILED.

Replikationsstatus, wenn die Synchronisierung von Amazon-S3-Replikatänderungen aktiviert ist

Wenn in Ihren Replikationsregeln die Synchronisierung von Amazon-S3-Replikatänderungen aktiviert ist, können Replikate einen anderen Status als REPLICA melden. Wenn Änderungen an Metadaten gerade repliziert werden, gibt der x-amz-replication-status-Header den Wert PENDING zurück. Wenn die Synchronisierung der Replikatänderung Metadaten nicht repliziert, gibt der Header FAILED zurück. Wenn Metadaten korrekt repliziert werden, geben die Replikate den Header REPLICA zurück.

Verwenden von Replikationsstatusinformationen mit Batch-Replikationsaufträgen

Wenn Sie einen Batch-Replikationsauftrag erstellen, können Sie optional zusätzliche Filter angeben, z. B. das Erstellungsdatum des Objekts und den Replikationsstatus, um den Umfang des Auftrags zu reduzieren.

Sie können Objekte filtern, die repliziert werden sollen, basierend auf dem ObjectReplicationStatuses-Wert, indem Sie einen oder mehrere der folgenden Werte angeben:

  • "NONE" – Zeigt an, dass Amazon S3 noch nie versucht hat, das Objekt zu replizieren.

  • "FAILED" – Zeigt an, dass Amazon S3 versucht hat, das Objekt zu replizieren, es jedoch zuvor nicht replizieren konnte.

  • "COMPLETED" – Zeigt an, dass Amazon S3 das Objekt zuvor erfolgreich repliziert hat.

  • "REPLICA" – Zeigt an, dass dies ein Replikatobjekt ist, das Amazon S3 von einer anderen Quelle repliziert hat.

Weitere Informationen zur Verwendung dieser Replikationsstatus-Werte mit der Batch-Replikation finden Sie unter Filter für einen Batch-Replikationsauftrag.

Finden des Replikationsstatus

Verwenden Sie das Amazon-S3-Inventory-Tool, um den Replikationsstatus der Objekte in einem Bucket abzurufen. Amazon S3 sendet eine CSV-Datei an den Ziel-Bucket, den Sie in der Bestands-Konfiguration angeben. Sie können auch Amazon Athena verwenden, um den Replikationsstatus im Bestandsbericht abzufragen. Weitere Informationen zu Amazon S3 Inventory finden Sie unter Katalogisieren und Analysieren Ihrer Daten mit S3 Inventory.

Sie können den Status der Objektreplikation auch mithilfe der Amazon S3 S3-Konsole, des AWS Command Line Interface (AWS CLI) oder des AWS SDK ermitteln.

In der Amazon-S3-Konsole können Sie den Replikationsstatus für ein Objekt auf seiner Detailseite anzeigen.

  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/.

  2. Wählen Sie im linken Navigationsbereich Buckets aus.

  3. Wählen Sie in der Liste der Allzweck-Buckets den Namen des Quell-Buckets der Replikation aus.

  4. Wählen Sie in der Liste Objekte den Objektnamen aus. Die Seite mit den Objektdetails wird angezeigt.

  5. Scrollen Sie auf der Registerkarte Properties (Eigenschaften) nach unten zum Abschnitt Object management overview (Objektverwaltung – Übersicht). Beachten Sie unter Management configurations (Verwaltungskonfigurationen) den Wert unter Replication status (Replikationsstatus).

Verwenden Sie den head-object Befehl AWS Command Line Interface (AWS CLI), um Objektmetadaten abzurufen, wie im folgenden Beispiel gezeigt. Ersetzen Sie den amzn-s3-demo-source-bucket1 durch den Namen Ihres Quell-Buckets der Replikation und die anderen user input placeholders durch Ihre eigenen Informationen.

aws s3api head-object --bucket amzn-s3-demo-source-bucket1 --key object-key --version-id object-version-id

Der Befehl gibt Informationen zu Objektmetadaten, einschließlich des ReplicationStatus, zurück, wie in der folgenden Beispielantwort dargestellt:

{ "AcceptRanges":"bytes", "ContentType":"image/jpeg", "LastModified":"Mon, 23 Mar 2015 21:02:29 GMT", "ContentLength":3191, "ReplicationStatus":"COMPLETED", "VersionId":"jfnW.HIMOfYiD_9rGbSkmroXsFj3fqZ.", "ETag":"\"6805f2cfc46c0f04559748bb039d69ae\"", "Metadata":{ } }

Die folgenden Codefragmente ermitteln Ihren Replikationsstatus mithilfe von AWS SDK for Java und AWS SDK for .NET.

Java
GetObjectMetadataRequest metadataRequest = new GetObjectMetadataRequest(bucketName, key); ObjectMetadata metadata = s3Client.getObjectMetadata(metadataRequest); System.out.println("Replication Status : " + metadata.getRawMetadataValue(Headers.OBJECT_REPLICATION_STATUS));
.NET
GetObjectMetadataRequest getmetadataRequest = new GetObjectMetadataRequest { BucketName = sourceBucket, Key = objectKey }; GetObjectMetadataResponse getmetadataResponse = client.GetObjectMetadata(getmetadataRequest); Console.WriteLine("Object replication status: {0}", getmetadataResponse.ReplicationStatus);