Blog

Regionsübergreifende Replikation mit S3

Dennis Vriend

Aktualisiert Oktober 21, 2025
3 Minuten

Manchmal benötigen Sie Objekte aus einer Region in einer anderen Region. Ein häufiger Anwendungsfall ist die Zentralisierung von Protokollen aus mehreren Regionen für die Datenanalyse. Amazon Simple Storage Storage (S3) ist ein Service, der Objekte mit Hilfe eines Schlüssels und eines Wertes speichert. Auf die mit einem Schlüssel verbundenen Daten kann über eine Webservice-API einfach zugegriffen werden. S3 ist ein Kerndienst von AWS und eignet sich hervorragend für die Speicherung von Protokolldaten. S3 speichert Daten lokal in einer Region. Die Daten werden niemals ohne ausdrückliche Konfiguration in eine andere Region kopiert. Schauen wir uns an, was es bedeutet, eine regionsübergreifende Kopie zwischen zwei S3-Buckets einzurichten.

Regionsübergreifende Replikation (CRR)

Cross Region Replication (CRR) ist ein Dienst, der automatisch Objekte von einer Region in eine andere kopiert. Der Dienst ist Teil von S3 und kann über die Konfiguration aktiviert werden. Die Daten werden dann sicher von einer Region in eine andere kopiert und in einem anderen Bucket gespeichert.

Architektur

Das CRR-Beispiel besteht aus zwei Buckets, einem in us-east-1 und einem in eu-west-1. Der Bucket in us-east-1 enthält Inhalte, die nach eu-west-1 repliziert werden müssen.
Regionsübergreifende Replikation Amazon Simple Storage Service - S3 - Architektur
Beispiel


Das Beispielprojekt besteht aus zwei CloudFormation-Vorlagen, die Buckets in verschiedenen Regionen konfigurieren. Für us-east-1 muss ein Bucket erstellt werden, in dem und aktiviert sind. Der Bucket konfiguriert den Amazon Resource Name (ARN) des Buckets eu-west-1 für die Replikation als . Der Bucket definiert auch eine Rolle - eine Sicherheitskonfiguration -, die S3 annimmt, um die Berechtigung zum Schreiben in den Bucket eu-west-1 zu erhalten.

  ReplicatedBucket:
    Type: AWS::S3::Bucket
    Properties:
      AccessControl: BucketOwnerFullControl
      VersioningConfiguration:
        Status: Enabled
      ReplicationConfiguration:
        Role: !GetAtt ReplicationRole.Arn
        Rules:
          - Prefix: ''
            Status: Enabled
            Destination:
              Bucket: !Ref ReplicatedBucketArn

  ReplicationRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Statement:
          - Effect: Allow
            Principal:
              Service: s3.amazonaws.com
            Action: sts:AssumeRole
      Path: /
      Policies:
        - PolicyName: Allow
          PolicyDocument:
            Statement:
              - Effect: Allow
                Action:
                  - s3:*
                Resource:
                  - '*'

Der Eimer eu-west-1 hat nur eine aktivierte VersioningConfiguration.

  SimpleBucket:
    Type: AWS::S3::Bucket
    Properties:
      AccessControl: BucketOwnerFullControl
      VersioningConfiguration:
        Status: Enabled

Um das Beispiel einzusetzen, geben Sie make deploy ein. Um Informationen über die Bucket-Namen zu erhalten, geben Sie make info ein.

Replizieren von Daten

Um die Daten zu replizieren, müssen wir die Daten nach us-east-1 kopieren. Um den Bucket-Namen zu erhalten, geben Sie ein, das die für beide Regionen anzeigt. Um Daten nach us-east-1 zu kopieren, benötigen wir den Namen des Buckets und den Typ:

$ aws s3 cp aws s3 cp LICENSE s3://cross-region-replication-example-eu-simplebucket-1adlmia5ye8ji

Nach einer Sekunde wird die Datei in eu-west-1 repliziert:

$ aws s3 ls s3://cross-region-replication-example-eu-simplebucket-8eeig5mggnah
2018-11-14 05:19:50      11357 LICENSE

Fazit

Es ist einfach, S3 Cross Region Replication (CRR) zu konfigurieren. Die Versionskontrolle muss aktiviert sein und der Bucket benötigt Berechtigungen für den Zugriff auf den Bucket in einer anderen Region. Mit CRR können wir Protokolle wie Zugriffsprotokolle, Fehlerprotokolle usw. an einen zentralen Ort für die Datenanalyse kopieren. Das nächste Mal werden wir uns AWS Athena ansehen, um einfache Protokollanalysen auf S3-Buckets durchzuführen.

Verfasst von

Dennis Vriend

Contact

Let’s discuss how we can support your journey.