View a markdown version of this page

Exemplos para configurar a replicação em tempo real - Amazon Simple Storage Service

Exemplos para configurar a replicação em tempo real

Os exemplos a seguir fornecem demonstrações passo a passo que mostram como configurar a replicação em tempo real para casos de uso comuns.

nota

Replicação em tempo real refere-se à Same-Region Replication (SRR – Replicação na Mesma Região) e à Cross-Region Replication (CRR – Replicação entre Regiões). A replicação em tempo real não replica nenhum objeto que já existia no bucket antes de você configurar a replicação. Para replicar objetos que já existiam antes de você configurar a replicação, use a replicação sob demanda. Para sincronizar buckets e replicar os objetos existentes sob demanda, consulte Replicar objetos existentes.

Esses exemplos demonstram como criar uma configuração de replicação usando o console do Amazon S3, a AWS Command Line Interface (AWS CLI) e AWS SDKs (exemplos de AWS SDK para Java e AWS SDK para .NET são mostrados).

Consulte informações sobre como instalar e configurar a AWS CLI nos seguintes tópicos do Guia do usuário da AWS Command Line Interface:

Consulte informações sobre os SDKs da AWS em AWS SDK para Java e AWS SDK para .NET.

dica

Consulte um tutorial detalhado que demonstra como usar a replicação em tempo real para replicar dados em Tutorial: Replicar dados dentro das Regiões da AWS e entre elas usando a replicação do Amazon S3.

Replicação de anotações

Quando você configura a replicação em um bucket, o Amazon S3 replica as anotações automaticamente como parte da replicação ativa. Cada anotação é replicada de forma independente à medida que as alterações ocorrem. Para replicar anotações, o perfil do IAM de replicação deve incluir a permissão s3:GetObjectVersionAnnotationForReplication no bucket de origem.

O exemplo a seguir mostra a instrução do bucket de origem na política de permissões de perfil do IAM com a permissão de replicação de anotações incluída:

{ "Effect": "Allow", "Action": [ "s3:GetObjectVersionForReplication", "s3:GetObjectVersionAcl", "s3:GetObjectVersionTagging", "s3:GetObjectVersionAnnotationForReplication" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket/*" ] }

Nenhuma permissão adicional do bucket de destino é necessária para a replicação de anotações. A permissão s3:ReplicateObject no bucket de destino abrange a replicação de anotações.

Observe os seguintes comportamentos para replicação de anotações:

  • As adições e atualizações de anotação na origem são replicadas para o destino. Cada anotação é replicada de forma independente à medida que as alterações ocorrem.

  • As exclusões de anotação na origem não são replicadas para o destino. Se você excluir uma anotação na origem, a anotação persistirá no destino.

  • Se você excluir e recriar repetidamente anotações na origem com nomes diferentes, as anotações se acumularão no destino ao longo do tempo porque as exclusões não são replicadas.

Se você não quiser que as anotações sejam replicadas em um bucket de destino, o proprietário do bucket de destino poderá adicionar uma instrução Deny para a ação s3:ReplicateObjectAnnotation à política de bucket de destino. A replicação de objetos continua sendo bem-sucedida; somente a replicação de anotações é bloqueada. O exemplo a seguir mostra a instrução Deny:

... "Statement":[ { "Effect":"Deny", "Principal":{ "AWS":"arn:aws:iam::source-bucket-account-id:role/service-role/source-account-IAM-role" }, "Action":"s3:ReplicateObjectAnnotation", "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/*" } ] ...

Para obter mais informações sobre o comportamento de replicação de anotações, consulte O que o Amazon S3 replica?. Para obter instruções de configuração de permissão, consulte Configurar permissões para replicação em tempo real.