Replicación de objetos existentes con replicación por lotes de S3

Al utilizar la replicación por lotes de S3, puede replicar los siguientes tipos de objetos:

  • Objetos que existían antes de que se estableciera una configuración de replicación

  • Objetos que se han replicado anteriormente

  • Objetos que no se han podido replicar

Puede replicar estos objetos a demanda mediante un trabajo de operaciones por lotes. La replicación por lotes de S3 difiere de la replicación en directo que replica objetos nuevos de forma continua y automática en buckets de Amazon S3.

Para comenzar a utilizar la replicación por lotes, puede hacer lo siguiente:

  • Iniciar la replicación por lotes para una nueva regla de replicación o destino: puede crear un trabajo de replicación por lotes único cuando cree la primera regla de una nueva configuración de replicación o agregue un nuevo destino a una configuración existente a través de la consola de Amazon S3.

  • Iniciar la replicación por lotes para una configuración de replicación existente: puede crear un nuevo trabajo de replicación por lotes mediante Operaciones por lotes de S3 a través de la consola de Amazon S3, la AWS Command Line Interface (AWS CLI), los AWS SDK o la API de REST de Amazon S3.

Cuando termina el trabajo de replicación por lotes, recibe un reporte de finalización. Para obtener más información sobre cómo utilizar el reporte para examinar el trabajo, consulte Seguimiento del estado del trabajo e informes de finalización.

Consideraciones sobre la replicación por lotes de S3

  • Su bucket de origen debe tener una configuración de replicación existente. Para habilitar la replicación, consulte Configuración de la replicación en directo y Ejemplos para configurar la replicación en directo.

  • Si tiene configurado el ciclo de vida de S3 para su bucket, le recomendamos desactivar las reglas del ciclo de vida mientras el trabajo de replicación por lotes está activo. Al hacerlo le ayuda a garantizar la paridad entre los buckets de origen y de destino. De lo contrario, estos buckets podrían diferir y el bucket de destino no será una réplica exacta del bucket de origen. Por ejemplo, fíjese en el siguiente escenario:

    • El bucket de origen tiene varias versiones de un objeto y un marcador de eliminación en ese objeto.

    • Los buckets de origen y destino tienen una configuración de ciclo de vida para eliminar los marcadores de eliminación vencidos.

    En este caso, la replicación por lotes puede replicar el marcador de eliminación en el bucket de destino antes de replicar las versiones del objeto. Este comportamiento podría provocar que la configuración de ciclo de vida marcara el marcador de eliminación como caducado y el marcador de eliminación se eliminara del bucket de destino antes de replicar las versiones del objeto.

  • El rol de AWS Identity and Access Management (IAM) que especifique para ejecutar el trabajo de la herramienta de Operaciones por lotes debe tener los permisos necesarios para realizar la operación subyacente de replicación por lotes. Para obtener más información sobre cómo crear un rol de IAM, consulte Configuración de políticas de IAM para replicación por lotes.

  • La replicación por lotes requiere un manifiesto que Amazon S3 puede generar. El manifiesto generado debe almacenarse en la misma Región de AWS que el bucket de origen. Si elige no generar el manifiesto, puede proporcionar un informe de inventario de Amazon S3 o un archivo CSV que contenga los objetos que desea replicar.

  • La replicación por lotes no admite volver a replicar objetos que se eliminaron con el ID de versión del objeto del bucket de destino. Para volver a replicar estos objetos, puede copiar los objetos de origen en su lugar con un trabajo de copia por lotes. Al copiar esos objetos en su lugar, se crean nuevas versiones de los objetos en el bucket de origen e inicia la replicación automáticamente en el bucket de destino. Al eliminar y volver a crear el bucket de destino no se inicia la replicación.

    Para obtener más información acerca de la copia por lotes, consulte Ejemplos donde se utilizan las operaciones por lotes para copiar objetos.

  • Si utiliza una regla de replicación en el bucket de S3, asegúrese de actualizar la configuración de replicación y conceder al rol de IAM asociado a la regla de replicación los permisos adecuados para replicar objetos. El rol de IAM debe tener permisos para realizar la replicación tanto en el bucket de origen como en el de destino.

  • Si envía varios trabajos de replicación por lotes para el mismo bucket en un periodo breve, Amazon S3 ejecutará esos trabajos simultáneamente.

  • Si envía varios trabajos de replicación por lotes para dos buckets diferentes, tenga en cuenta que es posible que Amazon S3 no ejecute todos los trabajos simultáneamente. Si supera el número de trabajos de replicación por lotes que se pueden ejecutar a la vez en su cuenta, Amazon S3 detendrá los trabajos de menor prioridad para trabajar en los de mayor prioridad. Cuando se hayan completado los elementos de mayor prioridad, todos los trabajos en pausa volverán a estar activos.

  • La replicación por lotes no es compatible para los objetos almacenados en las clases de almacenamiento S3 Glacier Flexible Retrieval y S3 Glacier Deep Archive.

  • Para replicar por lotes objetos S3 Intelligent-Tiering almacenados en el nivel de almacenamiento Acceso a archivos o Acceso a archivos profundo, primero debe iniciar una solicitud de restauración y esperar a que los objetos se muevan al nivel Acceso frecuente.

Especificación de un manifiesto para un trabajo de replicación por lotes

Un manifiesto es un objeto de Amazon S3 que contiene las claves de objeto sobre las que desea que actúe Amazon S3. Si desea crear un trabajo de replicación por lotes, debe proporcionar un manifiesto generado por el usuario o hacer que Amazon S3 genere un manifiesto en función de la configuración de replicación.

Si proporciona un manifiesto generado por el usuario, debe ser en forma de informe de inventario de Amazon S3 o un archivo CSV. Si los objetos del manifiesto están en un bucket con control de versiones, debe especificar los ID de versión de los objetos. Solo se replicará el objeto con el ID de versión especificado en el manifiesto. Para obtener más información sobre cómo especificar un manifiesto, consulte Especificar un manifiesto.

Si elige que Amazon S3 genere un archivo de manifiesto en su nombre, los objetos enumerados utilizarán el mismo bucket de origen, el mismo prefijo y las mismas etiquetas que todas las configuraciones de replicación del bucket de origen. Con un manifiesto generado, Amazon S3 replicará todas las versiones aptas de sus objetos.

nota

Si elige que Amazon S3 genere el manifiesto, este debe almacenarse en la misma Región de AWS que el bucket de origen.

Filtros para un trabajo de replicación por lotes

En el momento de crear el trabajo de replicación por lotes, tiene la opción de especificar filtros adicionales, como la fecha de creación de los objetos y el estado de replicación para reducir el alcance del trabajo.

Puede filtrar los objetos para replicar en función del valor ObjectReplicationStatuses, proporcionando uno o varios de los siguientes valores:

  • "NONE": indica que Amazon S3 nunca intentó replicar el objeto antes.

  • "FAILED": indica que Amazon S3 intentó replicar el objeto antes, pero no pudo.

  • "COMPLETED": indica que Amazon S3 replicó el objeto correctamente antes.

  • "REPLICA": indica que se trata de un objeto de réplica que Amazon S3 ha replicado desde otro origen.

Para obtener más información sobre los estados de replicación, consulte Obtención de información del estado de replicación.

Si no filtra su trabajo de replicación por lotes, Operaciones por lotes intentará replicar todos los objetos (independientemente de cuáles sean sus ObjectReplicationStatus) en el manifiesto que coincida con las reglas de la configuración de replicación, excepto algunos objetos que no se replican de forma predeterminada. Para obtener más información, consulte ¿Qué elementos no se replican con las configuraciones de replicación?

Dependiendo de su objetivo, puede establecer ObjectReplicationStatuses en uno o más de los siguientes valores:

  • Para replicar solo los objetos existentes que nunca se han replicado, incluya únicamente "NONE".

  • Para volver a intentar replicar solo los objetos que no se habían podido replicar antes, incluya únicamente "FAILED".

  • Para replicar objetos existentes y volver a intentar replicar objetos que no se pudieron replicar anteriormente, incluya tanto "NONE" como "FAILED".

  • Para reponer un bucket de destino con objetos que se han replicado en otro destino, incluya "COMPLETED".

  • Para replicar objetos previamente replicados, incluya "REPLICA".

Informe de finalización de replicación por lotes

Al crear un trabajo de replicación por lotes, puede solicitar un informe de finalización CSV. Este informe muestra los objetos, los códigos de éxito o error de la replicación, las salidas y las descripciones. Para obtener más información sobre el seguimiento del trabajo y los informes de finalización, consulte Informes de finalización.

Para obtener una lista de códigos y descripciones de errores de replicación, consulte Motivos de errores de replicación de Amazon S3.

Para obtener más información sobre la resolución de problemas de la replicación por lotes, consulte Errores de replicación por lotes.

Introducción a la replicación por lotes

Para obtener más información sobre cómo utilizar la replicación por lotes, consulte el Tutorial: Replicación de objetos existentes en los buckets de Amazon S3 con la replicación por lotes de S3.