Replicar objetos existentes com o S3 Batch Replication

Ao usar a funcionalidade Replicação em Lote do S3, você pode replicar os seguintes tipos de objetos:

  • Objetos que já existiam antes da implantação de uma configuração de replicação

  • Objetos que já foram replicados anteriormente

  • Objetos que já falharam em uma replicação

Você pode replicar esses objetos sob demanda usando um trabalho da funcionalidade Operações em Lote. A funcionalidade Replicação em Lote do S3 é diferente da replicação em tempo real, que replica contínua e automaticamente novos objetos nos buckets do Amazon S3.

Para começar a usar a funcionalidade Replicação em Lote, você pode:

  • Iniciar a funcionalidade Replicação em Lote para uma nova regra ou destino de replicação: você pode criar um trabalho único da funcionalidade Replicação em Lote ao criar a primeira regra em uma nova configuração de replicação ou ao adicionar um novo destino a uma configuração existente por meio do console do Amazon S3.

  • Iniciar a funcionalidade Replicação em Lote para uma configuração de replicação existente: você pode criar um trabalho da funcionalidade Replicação em Lote usando a funcionalidade Operações em Lote do S3 por meio do console do Amazon S3, da AWS Command Line Interface (AWS CLI), dos AWS SDKs ou da API REST do Amazon S3.

Quando o trabalho de replicação em lote termina, você recebe um relatório de conclusão. Para obter mais informações sobre como usar o relatório para examinar o trabalho, consulte Rastreamento de relatórios de status e conclusão.

Considerações sobre o recurso S3 Batch Replication

  • O bucket de origem deve ter uma configuração de replicação existente. Para habilitar a replicação, consulte Configurar a replicação em tempo real e Exemplos para configurar a replicação em tempo real.

  • Se a funcionalidade Ciclo de Vida do S3 estiver configurada para o bucket, recomendamos desabilitar as regras de ciclo de vida enquanto o trabalho da funcionalidade Replicação em Lote estiver ativo. Isso ajudará a garantir a paridade entre os buckets de origem e de destino. Caso contrário, esses buckets poderão divergir e o bucket de destino não será uma réplica exata do bucket de origem. Por exemplo, considere os seguintes cenários:

    • Seu bucket de origem tem várias versões de um objeto e um marcador de exclusão nesse objeto.

    • Seus buckets de origem e destino têm uma configuração de ciclo de vida para remover marcadores de exclusão expirados.

    Nesse cenário, a funcionalidade Replicação em Lote pode acabar replicando o marcador de exclusão para o bucket de destino antes de replicar as versões do objeto. Esse comportamento pode fazer com que a configuração de ciclo de vida marque o marcador de exclusão como expirado e com que o marcador de exclusão seja removido do bucket de destino antes que as versões do objeto sejam replicadas.

  • O perfil do AWS Identity and Access Management (IAM) que você especifica para executar o trabalho da funcionalidade Operações em Lote precisa ter as permissões necessárias para executar a operação da funcionalidade Replicação em Lote subjacente. Para obter mais informações sobre como criar funções do IAM, consulte Configurar políticas do IAM para replicação em lote.

  • A funcionalidade Replicação em Lote requer um manifesto que pode ser gerado pelo Amazon S3. O manifesto gerado deve ser armazenado na mesma Região da AWS que o bucket de origem. Se escolher não gerar o manifesto, você poderá fornecer um relatório da funcionalidade Inventário Amazon S3 ou um arquivo CSV que contenha os objetos que deseja replicar.

  • A funcionalidade Replicação em Lote não é compatível com a repetição da replicação de objetos que foram excluídos com o ID de versão do objeto do bucket de destino. Para replicar esses objetos novamente, copie os objetos de origem no local com um trabalho de cópia em lote. Copiar esses objetos no local criará versões dos objetos no bucket de origem e iniciará a replicação automaticamente para o bucket de destino. A exclusão e a recriação do bucket de destino não iniciam a replicação.

    Para obter mais informações sobre a cópia em lote, consulte Exemplos que usam o Batch Operations para copiar objetos.

  • Se você estiver usando uma regra de replicação no bucket do S3, atualize a configuração de replicação, concedendo ao perfil do IAM anexado à regra de replicação as permissões adequadas para replicar objetos. O perfil do IAM precisa ter permissões necessárias para executar a replicação nos buckets de origem e de destino.

  • Se você enviar vários trabalhos da funcionalidade Replicação em Lote para o mesmo bucket em um curto espaço de tempo, o Amazon S3 executará esses trabalhos simultaneamente.

  • Se você enviar vários trabalhos da funcionalidade Replicação em Lote para dois buckets diferentes, esteja ciente de que o Amazon S3 poderá não executar todos os trabalhos simultaneamente. Se você exceder o número de trabalhos da funcionalidade Replicação em Lote que podem ser executados ao mesmo tempo em sua conta, o Amazon S3 pausará os trabalhos de menor prioridade para trabalhar nos de maior prioridade. Depois que os itens de maior prioridade forem concluídos, todos os trabalhos pausados se tornarão ativos novamente.

  • A funcionalidade Replicação em Lote não é compatível com objetos armazenados nas classes de armazenamento S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive.

  • Para replicar em lote objetos da classe S3 Intelligent-Tiering armazenados nos níveis de armazenamento Archive Access ou Deep Archive Access, primeiro é necessário iniciar uma solicitação de restauração e aguardar até que os objetos sejam movidos para o nível Frequent Access.

Especificando um manifesto para um trabalho de replicação em lote

Um manifesto é um objeto do Amazon S3 que contém as chaves de objeto em que você deseja que o Amazon S3 atue. Se quiser criar um trabalho da funcionalidade Replicação em Lote, você deverá fornecer um manifesto gerado pelo usuário ou fazer com que o Amazon S3 gere um manifesto com base na configuração de replicação.

Se você fornecer um manifesto gerado pelo usuário, ele deverá estar na forma de um relatório da funcionalidade Inventário Amazon S3 ou um arquivo CSV. Se os objetos no manifesto estiverem em um bucket versionado, você deverá especificar os IDs de versão dos objetos. Somente o objeto com o ID de versão especificado no manifesto será replicado. Para saber mais sobre como especificar um manifesto, consulte Especificar um manifesto.

Se você preferir que o Amazon S3 gere um arquivo de manifesto em seu nome, os objetos listados usarão o mesmo bucket de origem, prefixo e etiquetas das configurações de replicação do bucket de origem. Com um manifesto gerado, o Amazon S3 replicará todas as versões elegíveis dos objetos.

nota

Se você decidir que o Amazon S3 deve gerar o manifesto, ele deverá ser armazenado na mesma Região da AWS que o bucket de origem.

Filtros para um trabalho de replicação em lote

Ao criar o trabalho da funcionalidade Replicação em Lote, você pode especificar filtros adicionais, como data de criação e status de replicação do objeto, para reduzir o escopo do trabalho.

É possível filtrar os objetos a serem replicados com base no valor de ObjectReplicationStatuses, fornecendo um ou mais dos seguintes valores:

  • "NONE": indica que o Simple Storage Service (Amazon S3) nunca tentou replicar o objeto antes.

  • "FAILED": indica que o Amazon S3 tentou replicar o objeto, mas não conseguiu.

  • "COMPLETED": indica que o Simple Storage Service (Amazon S3) já replicou com êxito o objeto anteriormente.

  • "REPLICA": indica que essa é uma réplica de um objeto que foi replicado pelo Amazon S3 de outra origem.

Para obter mais informações sobre a replicação, consulte Obtenção de informações sobre o status da replicação.

Se você não filtrar o trabalho da funcionalidade Replicação em Lote, a funcionalidade Operações em Lote tentará replicar todos os objetos (independentemente do ObjectReplicationStatus deles) em seu manifesto que correspondam às regras na configuração de replicação, exceto alguns objetos que não são replicados por padrão. Para ter mais informações, consulte O que não é replicado com as configurações de replicação?.

Dependendo do objetivo, você pode definir ObjectReplicationStatuses com um ou mais dos seguintes valores:

  • Para replicar somente objetos existentes que nunca foram replicados, inclua apenas "NONE".

  • Para repetir a replicação somente dos objetos cuja replicação falhou anteriormente, inclua apenas "FAILED".

  • Para replicar os objetos existentes e tentar replicar novamente os objetos cuja replicação falhou anteriormente, inclua "NONE" e "FAILED".

  • Para preencher um bucket de destino com objetos que foram replicados para outro destino, inclua "COMPLETED".

  • Para replicar objetos que já foram replicados anteriormente, inclua "REPLICA".

Relatório de conclusão da replicação em lote

Ao criar um trabalho de replicação em lote, solicite um relatório de conclusão CSV. Este relatório mostra objetos, códigos de sucesso ou falha na replicação, saídas e descrições. Para obter mais informações sobre o monitoramento de trabalhos e relatórios de conclusão, consulte Relatórios de conclusão.

Para obter uma lista de códigos e descrições de falhas de replicação, consulte Motivos de falha da replicação do Amazon S3.

Consulte mais informações sobre como solucionar problemas de Replicação em Lote em Erros de replicação em lote.

Introdução à replicação em lote

Para saber mais sobre como usar a replicação em lote, consulte o Tutorial: replicar objetos existentes nos buckets do Amazon S3 com o S3 Batch Replication.