Replique los objetos existentes en sus buckets de Amazon S3 con la replicación por lotes de Amazon S3

TUTORIAL

Información general

Este tutorial le muestra cómo replicar objetos que ya existen en sus buckets dentro de la misma región de AWS o en diferentes regiones de AWS con la replicación por lotes de Amazon Simple Storage Service (Amazon S3).

La replicación de Amazon S3 es una característica elástica, completamente administrada y de bajo costo que replica objetos entre buckets de Amazon S3. Puede replicar datos nuevos y existentes de un bucket de origen a varios buckets de destino en la misma región o en diferentes regiones de AWS. Ya sea que desee mantener una copia secundaria de sus datos para la protección de datos o tener datos en múltiples localidades para brindar a los usuarios la latencia más baja, la replicación de S3 brinda los controles que necesita para satisfacer sus necesidades comerciales.

Puede utilizar la replicación por lotes de Amazon S3 para rellenar un bucket recién creado con objetos existentes, volver a replicar objetos que ya se han replicado o que no se pudieron replicar anteriormente, migrar datos entre cuentas o agregar nuevos buckets a su lago de datos. Los trabajos de replicación por lotes de S3 se crean sobre una configuración de replicación existente y se ejecutan para todas las reglas de replicación que están habilitadas para el bucket. Para obtener más información sobre la replicación de S3, visite la sección Replicación de objetos de la Guía del usuario de Amazon S3 y, para obtener un tutorial paso a paso sobre la configuración de la replicación de S3, visite Replicate data within and between AWS Regions using Amazon S3 Replication. Al final de este tutorial, podrá replicar los datos existentes en las regiones de AWS y entre ellas mediante la replicación de Amazon S3.

Lo que logrará

En este tutorial, hará lo siguiente:

  • Configurar la replicación de S3 en un bucket de Amazon S3
    • Crear dos buckets de S3
    • Crear una regla de replicación de S3 en un bucket de S3
    • Elegir un bucket de S3 de destino
    • Elegir o crear roles de IAM para la replicación
    • Especificar el tipo de cifrado (opcional)
    • Elegir el tipo de almacenamiento de S3 de destino
    • Habilitar opciones de replicación adicionales (opcional)
  •  Configure la replicación por lotes de S3 para los objetos existentes en su bucket de Amazon S3 de las siguientes maneras:
    • Cree un trabajo de replicación por lotes de S3 cuando cree una nueva configuración de replicación en su bucket o cuando agregue un nuevo destino a su configuración de replicación existente.
    • Cree un trabajo de replicación por lotes de S3 desde la página de inicio de Operaciones por lotes de S3 (recomendado)
    • Cree un trabajo de replicación por lotes de S3 a partir de la página de configuración de replicación existente.

Requisitos previos

Antes de comenzar este tutorial, necesitará lo siguiente:

 Experiencia en AWS

Principiante

 Tiempo de realización

20 minutos

 Costo de realización

Menos de 1 USD
Consulte la página de precios de Amazon S3 para obtener más información

 Requisitos

Cuenta de AWS

 Servicios utilizados

 Última actualización

30 de junio de 2023

Implementación

Paso 1: crear dos buckets de Amazon S3

1.1 Inicie sesión en la consola de administración de AWS con la información de su cuenta. En la barra de búsqueda, escriba S3 y, a continuación, seleccione S3 en los resultados.

1.2 En el panel de navegación izquierdo de la consola de S3, seleccione Buckets y, a continuación, seleccione Create bucket (Crear bucket).

1.3 Ingrese un nombre descriptivo y globalmente único para su bucket de origen. Seleccione la región de AWS en la que desea crear su bucket. En este ejemplo, se selecciona la región eu-central-1 de Europa (Fráncfort).

1.4 Habilite el Bucket Versioning (Control de versiones de bucket). Se requiere el control de versiones de los buckets de S3 de origen y de destino para la replicación de S3. Para obtener más información sobre el control de versiones, consulte Usar el control de versiones en buckets de S3.

1.5 Puede dejar las opciones restantes con la configuración predeterminada. Desplácese hasta la
parte inferior de la página y seleccione Create bucket (Crear bucket).

1.6 Repita los pasos anteriores para crear otro bucket de S3 que sirva como bucket de destino. Este nuevo bucket puede existir en la misma región de AWS que el bucket de origen para la replicación en la misma región de S3 (S3 SRR) o en una región de AWS diferente para la replicación entre regiones de S3 (S3 CRR). Asegúrese de habilitar el control de versiones de bucket para el bucket de S3 de destino y asigne al nuevo bucket un nombre único.

Paso 2: crear una configuración de replicación de S3 en un bucket de S3

2.1 En la lista de buckets de S3, seleccione su bucket de S3 de origen. La consola lo lleva a la página de inicio del bucket de S3.

2.2 En la página de inicio del bucket de S3, puede revisar las opciones Objects (Objetos), Properties (Propiedades), Permissions (Permisos), Metrics (Métricas), Management (Administración) y Access Points (Puntos de acceso) del bucket de S3 seleccionado.

En la pestaña Management (Administración), en Replication rules (Reglas de replicación), seleccione Create replication rule (Crear regla de replicación).

2.3 Ingrese un nombre de regla de replicación y asegúrese de que esté seleccionada la opción Enabled (Habilitado) en la sección Status (Estado). Si la regla de replicación está deshabilitada, no se ejecutará.

NOTA: Amazon S3 intenta replicar los objetos de acuerdo con todas las reglas de replicación. Sin embargo, si hay dos o más reglas con el mismo bucket de destino, los objetos se replican según la regla con la prioridad más alta. Cuanto menor sea el número, mayor será la prioridad. Puede editar la prioridad de cada regla de replicación en la página de configuración de replicación.  

2.4 Reduzca el alcance de la replicación mediante la definición de un Filter type (Prefix or Tags) (Tipo de filtro [Prefijo o Etiquetas]), o seleccione replicar todo el bucket. Por ejemplo, si solo desea replicar objetos que incluyan el prefijo Finance (Finanzas), especifique ese alcance. Para obtener más información sobre el filtrado de objetos para la replicación, consulte la documentación sobre la especificación de un filtro en la Guía del usuario de S3.

2.5 Seleccione el bucket de destino que creó. Para ello, seleccione el botón Browse S3 (Examinar S3) y escriba el nombre completo del bucket.

No puede crear un nuevo bucket de S3 durante el proceso de configuración de la replicación.

2.6 Al crear nuevas reglas de replicación desde el mismo bucket de origen, asegúrese de que el rol de AWS Identity and Access Management (IAM) asociado a esta configuración tenga permisos suficientes para escribir objetos nuevos en el nuevo bucket de destino. Puede elegir crear un nuevo rol de IAM o seleccionar un rol de IAM existente con el conjunto de permisos adecuado. Para obtener más información, consulte la documentación sobre la configuración de permisos para la replicación de S3.

2.7 (Opcional) Si sus objetos están cifrados con claves de cifrado administradas por Amazon S3 (SSE-S3) o AWS Key Management Service (AWS KMS), especifique las opciones de cifrado. La replicación de S3 admite SSE-S3 (cifrado predeterminado), el cifrado del lado del servidor de AWS KMS (SSE-KMS) y el cifrado del lado del servidor con claves proporcionadas por el cliente (SSE-C). Si elige el cifrado de AWS KMS, proporcione las claves de AWS KMS para descifrarlas en el bucket de origen y volver a cifrarlas en el bucket de destino. Para ahorrar en los costos de AWS KMS, puede habilitar Amazon S3 Bucket Keys.

2.8 (Opcional) Seleccione un tipo de almacenamiento S3 para los objetos replicados en el bucket de destino. Considere la posibilidad de elegir tipos de almacenamiento de menor costo según sea apropiado para sus cargas de trabajo. Por ejemplo, puede elegir Intelligent-Tiering para optimizar los costos de almacenamiento de los datos con patrones de acceso impredecibles o cambiantes, Glacier Instant Retrieval si se va a acceder a los objetos replicados con poca frecuencia, pero es necesario recuperarlos en milisegundos, o Glacier Deep Archive para archivar datos a los que rara vez se necesita acceder. Para obtener más información, consulte el uso de los tipos de almacenamiento de Amazon S3.

2.9 Elija las opciones de replicación adicionales que necesite:

  • Control del tiempo de replicación (RTC): S3 RTC lo ayuda a cumplir con los requisitos empresariales y de conformidad, ya que proporciona un acuerdo de nivel de servicio de 15 minutos para replicar el 99,99 % de sus objetos. Puede habilitar S3 RTC junto con S3 CRR y S3 SRR. Las métricas y notificaciones de replicación están habilitadas de forma predeterminada.
  • Métricas y notificaciones de replicación: para las reglas que no son de RTC, tiene la opción de seleccionar Replication metrics and notifications (Métricas y notificaciones de replicación), que proporciona métricas detalladas para realizar un seguimiento del progreso minuto a minuto de los bytes pendientes, las operaciones pendientes, las operaciones fallidas y la latencia de replicación de la regla de replicación.
  • Replicación de marcadores de eliminación: seleccionar Delete marker replication (Replicación de marcadores de eliminación) significa que las eliminaciones del bucket de origen se replicarán en el bucket de destino. Esta opción debería estar habilitada si desea mantener sincronizados los buckets de origen y destino, pero no si el objetivo es protegerlo contra eliminaciones accidentales o malintencionadas.
  • Sincronización de modificaciones de réplicas: para establecer una replicación bidireccional entre dos buckets de S3, cree reglas de replicación bidireccionales (de A a B y de B a A) y habilite Replica modification sync (Sincronización de modificaciones de réplicas) para las reglas de replicación en los buckets de S3 de origen y de destino. Esto lo ayudará a mantener sincronizados los metadatos de los objetos, como las etiquetas, las ACL y la configuración de bloqueo de objetos, entre las réplicas y los objetos de origen.

S3 RTC, Métricas y notificaciones de replicación y Sincronización de modificaciones de réplicas no se admiten al replicar objetos existentes con la replicación por lotes de S3.

Cuando haya configurado la replicación, seleccione Save (Guardar).  

2.10 Cuando crea la primera regla en una nueva configuración de replicación para su bucket de S3 o agrega una nueva región de AWS de destino a una configuración existente, tiene la opción de habilitar la replicación de objetos existente para esa regla de replicación. Para replicar objetos existentes, seleccione Yes, replicate existing objects (Sí, replicar objetos existentes) y, a continuación, seleccione Submit (Enviar).

La consola lo lleva a la página del trabajo Create Batch Operations (Crear operaciones por lotes).

Paso 3: replicar los objetos existentes mientras se crea una nueva configuración de replicación

En la página del trabajo Create Batch Operations (Crear operaciones por lotes), puede revisar la configuración del trabajo de operaciones por lotes de S3,
como las opciones de ejecución del trabajo, el alcance de los informes de finalización de S3 y los permisos.

3.1 Configure las opciones de ejecución del trabajo. Si desea que el trabajo de replicación por lotes de S3 se ejecute de inmediato, puede seleccionar Automatically run the job when it’s ready (Ejecutar automáticamente el trabajo cuando esté listo). Si desea esperar a ejecutar el trabajo cuando esté listo, puede guardar el manifiesto de operaciones por lotes para revisar la lista de objetos que se van a replicar.

3.2 Establezca las opciones del manifiesto de operaciones por lotes. El archivo de manifiesto generado por Amazon S3 utiliza el mismo bucket de origen, el mismo prefijo y las mismas etiquetas que la configuración de replicación para enumerar todas las versiones de los objetos que son aptas para la replicación. Recomendamos seleccionar siempre Save Batch Operations manifest (Guardar el manifiesto de operaciones por lotes) para poder revisar la lista de objetos antes de que comience la replicación. Puede guardar el manifiesto en la misma cuenta de AWS o en una diferente, pero el archivo de manifiesto debe estar almacenado en la misma región de AWS que el bucket de origen.

En este ejemplo, elegimos el bucket “aws-s3-tutorial-batch-replication-manifest-destination” para guardar el archivo de manifiesto, que se encuentra en la misma cuenta de AWS que el bucket de origen.

3.3 Para mayor seguridad, cifre el archivo de manifiesto con las claves administradas por Amazon S3 (SSE-S3) o con la clave de AWS Key Management Service (SS3-KMS).

3.4 Siempre que las operaciones por lotes de S3 procesen correctamente al menos un objeto, Amazon S3 generará un informe de finalización una vez que el trabajo de replicación por lotes se complete, falle o se cancele. El informe de finalización contiene información adicional para cada tarea, incluidos el nombre y la versión de la clave del objeto, el estado, los códigos de error y las descripciones de los errores. Recomendamos seleccionar Generate completion report (Generar informe de finalización) para All tasks (Todas las tareas) a fin de poder revisar el estado de todos los objetos que se replican con este trabajo. Para ver ejemplos de informes de finalización, consulte Ejemplos: informes de finalización de las operaciones por lotes de S3.

3.5 Asegúrese de que el rol de IAM asociado a este trabajo de replicación por lotes tenga los permisos suficientes para realizar operaciones por lotes de S3 en su nombre. Para obtener más información, consulte la documentación sobre la configuración de las políticas de IAM para la replicación por lotes y la concesión de permisos para las operaciones por lotes de Amazon S3.

Revise la configuración y seleccione Save (Save).

Se redirigirá a la página de inicio de operaciones por lotes.

3.6 Seleccione el ID de trabajo de su nuevo trabajo para revisar la configuración. También puede realizar un seguimiento del estado del trabajo de replicación por lotes.

Paso 4: replicar los objetos existentes con la configuración de replicación existente

Además de crear un trabajo de replicación para una nueva regla de replicación, como se describe en el paso anterior, también puede crear trabajos de replicación por lotes de S3 para las reglas de replicación existentes en los buckets de S3. Para ello, vuelva a la página de inicio de la consola de Amazon S3.

4.1 En el panel de navegación izquierdo de la página de inicio de la consola, seleccione Batch Operations (Operaciones por lotes) y, a continuación, seleccione Create job (Crear trabajo).

4.2 En la página Create job (Crear trabajo), seleccione la región de AWS en la que desea crear su trabajo de replicación por lotes. Debe crear el trabajo en la misma región de AWS en la que se encuentra el bucket de S3 de origen.

4.3 Proporcione la lista de objetos para replicar. Puede agregar un manifiesto generado por el usuario en forma de informe de inventario de Amazon S3 o archivo CSV. El manifiesto debe tener todas las versiones de los objetos que se deben replicar. Amazon S3 también puede generar un manifiesto por usted utilizando la configuración de replicación de S3 existente en el bucket de origen.

NOTA: En este ejemplo, elegimos Create manifest using S3 Replication configuration (Crear manifiesto mediante la configuración de replicación de S3) para permitir que Amazon S3 genere un manifiesto en nuestro nombre y elegimos “aws-s3-replication-tutorial-source-bucket” como bucket de origen. Si decide dejar que Amazon S3 genere un manifiesto por usted, también verá filtros adicionales, como la fecha de creación de los objetos y el estado de replicación, para reducir el alcance del trabajo.

       4.4 (Opcional) Si decide guardar el manifiesto de las operaciones por lotes, cifre el archivo de manifiesto con las claves administradas por Amazon S3 (SSE-S3) o con la clave de AWS Key Management Service (SSE-KMS) para aumentar la seguridad y el control de acceso.

  • Si no especifica un modo de cifrado, Amazon S3 utilizará la configuración de cifrado predeterminada del bucket de destino del manifiesto para cifrar el archivo de manifiesto.
  • Si no hay ningún cifrado predeterminado habilitado en el bucket de destino, Amazon S3 utilizará SSE-S3 para cifrar el archivo de manifiesto.

 

 

4.5 Seleccione Next (Siguiente) para ir a la página Choose operation (Elegir operación).

4.6 Si eligió Create manifest using S3 Replication Configuration (Crear manifiesto con la configuración de replicación de S3) en la página anterior, la única opción de operación es Replicate (Replicar). Esto se debe a que la replicación es la única operación que se permite al usar un manifiesto generado por S3. Seleccione Replicate (Replicar) y, a continuación, seleccione Next (Siguiente).

4.7 Configure opciones adicionales:

  • Ingrese una descripción para definir mejor el propósito del trabajo.
  • Seleccione Priority (Prioridad) para indicar la prioridad relativa de este trabajo con respecto a otros que estén en ejecución en su cuenta. Un número más alto indica una prioridad más alta. Por ejemplo, un trabajo con prioridad 2 tendrá prioridad sobre un trabajo con prioridad 1. Las operaciones por lotes de S3 priorizan los trabajos según los números de prioridad, pero no se garantiza un orden estricto. Por lo tanto, no debe usar las prioridades de los trabajos para asegurarse de que un trabajo comience o termine antes que cualquier otro. Si necesita garantizar un orden estricto, espere a que termine un trabajo antes de comenzar el siguiente.

4.8 Elija si desea generar un informe de finalización. 

4.9 Elija un rol de IAM de operaciones por lotes válido para conceder permisos a Amazon S3 para realizar acciones en su nombre.

También debe adjuntar una política de IAM de replicación por lotes al rol de IAM de operaciones por lotes. Para crear un rol y una política de IAM válidos, consulte Configuración de políticas de IAM para replicación por lotes.

4.10 Agregue Job tags (Etiquetas de trabajo) a su trabajo de replicación por lotes y, a continuación, seleccione Next (Siguiente) para revisar la configuración de su trabajo.

 

4.11 En la página Review (Revisión), seleccione Edit (Editar) para realizar cambios y, a continuación, seleccione Next (Siguiente) para guardar los cambios y volver a la página Review (Revisión).

Cuando su trabajo esté listo, seleccione Create job (Crear trabajo).  

 

4.12 Una vez creado el trabajo de replicación por lotes, las operaciones por lotes procesan el manifiesto. Si tienen éxito, cambiarán el estado del trabajo a Awaiting your confirmation to run (Esperando su confirmación para ejecutarse). Debe confirmar los detalles del trabajo antes de que pueda ejecutarse.

Cuando el trabajo se ejecuta correctamente, aparece un cartel en la parte superior de la página Operaciones por lotes.

Paso 5: crear un trabajo de replicación por lotes desde la página de configuración de replicación de S3

5.1 En la lista de buckets de S3, elija el bucket de S3 que desee configurar como origen de replicación.

La consola lo lleva a la página de inicio del bucket de S3.

5.2 Reviese las opciones Objects (Objetos), Properties (Propiedades), Permissions (Permisos), Metrics (Métricas), Management (Administración) y Access Points (Puntos de acceso) del bucket de S3 seleccionado.

5.3 En la pestaña Management (Administración), en Replication rules (Reglas de replicación), seleccione View replication configuration (Ver configuración de replicación).

5.4 En la página principal de configuración de replicación de su bucket de origen, seleccione Create replication job (Crear trabajo de replicación) para ir a la página Create job (Crear trabajo) de las operaciones por lotes de S3. Repita los pasos anteriores para crear un trabajo de replicación por lotes a partir de la configuración de replicación existente.

Paso 6: supervisar el progreso de un trabajo de replicación por lotes de S3

Después de crear y ejecutar un trabajo de replicación por lotes, este pasa por una serie de estados. Puede realizar un seguimiento del progreso de un trabajo de replicación por lotes consultando estos estados en la página de inicio de Operaciones por lotes.

Por ejemplo, un trabajo está en el estado New (Nuevo) cuando se crea, pasa al estado de Preparing (En preparación) cuando Amazon S3 procesa el manifiesto y otros parámetros del trabajo, luego pasa al estado Ready (Listo) cuando está listo para ejecutarse, Active (Activo) cuando está en curso y, por último, Complete (Finalizado) cuando se completa el procesamiento. Para obtener una lista completa de los estados de los trabajos, consulte los estados de los trabajos de operaciones por lotes.

Puede optar por generar un informe de finalización al crear su trabajo de replicación por lotes para realizar un seguimiento del estado de la replicación de objetos. El informe de finalización es un archivo CSV que genera Amazon S3 después de que un trabajo se complete, falle o se cancele; siempre y cuando al menos una tarea se haya invocado correctamente con las operaciones por lotes de S3.

Además, si tiene habilitadas las métricas de replicación o el control del tiempo de replicación de S3 (S3 RTC) para su regla de replicación, puede revisar la cantidad de operaciones fallidas por minuto en la consola de Amazon S3 y la consola de Amazon CloudWatch con la métrica Operations Failed Replication (Las operaciones que fallaron en la replicación). Para obtener más información, consulte los informes de finalización de las operaciones por lotes de S3 y la supervisión del progreso con las métricas de replicación de S3.

Paso 7: eliminar los recursos

Eliminar los objetos de prueba

  1. Si ha cerrado sesión en la consola de administración de AWS, vuelva a iniciarla.
  2. Vaya a la consola de S3 y seleccione la opción de menú Buckets.
  3. Primero, tiene que eliminar los objetos de prueba del bucket de prueba. Seleccione el bucket con el que ha trabajado para este tutorial.
  4. Seleccione el objeto de prueba y, a continuación, seleccione Delete (Eliminar).
  5. En la página Delete objects (Eliminar objetos), verifique que haya seleccionado el objeto correcto para eliminar, ingrese delete (eliminar) en el campo de confirmación y, a continuación, seleccione Delete object (Eliminar objeto).

Un cartel en la parte superior de la página indica que la eliminación se ha realizado correctamente.

Eliminar los buckets de prueba

  1. Regrese a la lista de buckets de su cuenta.
  2. Seleccione el botón de opción a la izquierda del bucket de origen que creó para este tutorial y luego seleccione Delete (Eliminar).
  3. Ingrese el nombre del bucket en el campo de confirmación y seleccione Delete bucket (Eliminar bucket).
  4. Repita estos pasos para eliminar el bucket de destino que creó como parte de este tutorial.

Un cartel en la parte superior de la página indica que la eliminación se ha realizado correctamente.

Conclusión

¡Felicitaciones! Ha aprendido a usar la replicación por lotes de S3 para replicar objetos existentes desde los buckets de S3 de origen a destino para rellenar los buckets recién creados con objetos existentes, replicar objetos que se han replicado anteriormente y replicar objetos que no se pudieron replicar en el pasado. Cuando utilice la replicación por lotes de S3, le recomendamos que utilice un manifiesto generado por S3 para enumerar los objetos que se van a replicar automáticamente. También debe guardar el manifiesto de replicación para revisarlo y analizarlo en el futuro. Por último, recomendamos generar informes de finalización para realizar un seguimiento del estado de los objetos que se replican con la replicación por lotes de S3.

Siguientes pasos

Para obtener más información sobre la replicación de S3, visite los siguientes recursos.

Documentación de replicación por lotes de S3

Preguntas frecuentes sobre la replicación de S3

Publicación de blog Replicate existing objects with Amazon S3 Batch Replication

Replicate data within and between AWS Regions using Amazon S3 Replication