Quiero restaurar un gran número de objetos de Amazon Simple Storage Service (Amazon S3). Los objetos de Amazon S3 se encuentran en la clase de almacenamiento Glacier Flexible Retrieval o Amazon S3 Glacier Deep Archive.
Solución
Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de problemas de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.
Para restaurar un gran volumen de objetos de clase de almacenamiento de Amazon S3 Glacier, utiliza Operaciones por lotes de Amazon S3 o un comando personalizado de la interfaz de la AWS CLI.
Uso de Operaciones por lotes de S3
Crea un trabajo de Operaciones por lotes de S3 para restaurar todos los objetos. Puedes ejecutar un trabajo de restauración en una lista personalizada de objetos o en un informe de inventario de Amazon S3.
Requisitos previos
Comprueba lo siguiente:
Para usar la consola de Amazon S3 para crear un trabajo de operación por lotes e iniciar una restauración, sigue estos pasos:
- Abre la consola de Amazon S3.
- En el panel de navegación, selecciona Operaciones por lotes.
- Selecciona Crear trabajo.
- En Región, selecciona la región de AWS en la que desees crear el trabajo.
- En Seleccionar manifiesto, introduce lo siguiente:
En Formato del manifiesto, selecciona Informe de inventario de S3 o CSV como formato de archivo.
En Ruta al objeto del manifiesto, introduce la ruta de la carpeta que conduce al archivo del manifiesto en el bucket de S3, por ejemplo, s3://awsexamplebucket/manifest.csv.
- Elige Siguiente.
- En Elegir operación, introduce lo siguiente:
En Operación, elige Restaurar.
En Restaurar origen, elige Glacier Flexible Retrieval o Glacier Deep Archive.
En Número de días que la copia restaurada está disponible, introduce el número de días.
En Nivel de restauración, selecciona Recuperación en bloque o Recuperación estándar.
Nota: Las operaciones por lotes de S3 no admiten el nivel de recuperación acelerado.
- Elige Siguiente.
- En Configurar opciones adicionales, introduce:
(Opcional) En Descripción, introduce una descripción.
En Prioridad, introduce un número para la prioridad del trabajo.
En Generar el informe de finalización, mantén seleccionada esta opción.
En Ámbito del informe de finalización, selecciona Solo tareas fallidas o Todas las tareas.
En Ruta al destino de informe de finalización, introduce la ruta a la cual deseas que se envíe el informe.
En Permiso, selecciona Elegir entre los roles de IAM existentes y, a continuación, selecciona el rol de IAM que tenga los permisos necesarios.
- Elige Siguiente.
- En la página Revisar, revisa los detalles del trabajo y, a continuación, selecciona Crear trabajo.
- Selecciona el trabajo y, a continuación, selecciona Confirmar y ejecutar.
- (Opcional) Si has seleccionado Generar el informe de finalización, revisa el informe después de que termine el trabajo. Encontrarás el informe en la ruta al destino de informe de finalización que habías especificado.
Para obtener descripciones de cada estado del trabajo, consulta Estados de los trabajos.
Importante: La tarea de restauración solo inicia la solicitud de restauración de objetos. Tras iniciar la solicitud, Operaciones por lotes de S3 informa que el trabajo para el objeto se ha completado. Una vez que el trabajo de operación por lotes restaura los objetos, Amazon S3 no actualiza el trabajo ni te notifica. Sin embargo, puedes usar las notificaciones de eventos de Amazon S3 para recibir notificaciones cuando los objetos estén disponibles en Amazon S3.
Para obtener más información sobre los trabajos fallidos, consulta Seguimiento de errores de trabajo.
Uso de un comando personalizado de la AWS CLI
Para restaurar datos masivos de las clases de almacenamiento de S3 Glacier, utiliza el siguiente comando personalizado que corresponda a tu sistema operativo (SO).
Nota: Se recomienda probar los scripts personalizados en un entorno que no sea de producción antes de usarlos en el entorno de producción. Si tienes demasiados objetos, es posible que se agote el tiempo de espera del comando. Utiliza el parámetro Prefix del comando para reducir el número de objetos.
Para un sistema basado en Linux o Unix
Puedes ejecutar el comando restore-object de la AWS CLI para restaurar sus objetos de Amazon S3 Glacier. Sin embargo, el comando restore-object solo puede restaurar un objeto de S3 Glacier a la vez y no admite la acción de restauración en masa.
Ejecuta el siguiente comando list-objects-v2 para restaurar todos los objetos de S3 Glacier del bucket:
`` aws s3api list-objects-v2 --bucket bucket-name --prefix your-prefix --query 'Contents[?StorageClass==`GLACIER`][Key]' --output text | xargs -I {} sh -c "aws s3api restore-object --bucket bucket-name --key \"{}\" --restore-request Days=5,GlacierJobParameters={Tier=Standard} || true"``
Nota: Sustituye bucket-name por el nombre de tu bucket de S3, your-prefix por la ruta de tu carpeta de Amazon S3 y el valor de StorageClass por GLACIER o DEEP_ARCHIVE.
Para un sistema basado en Windows
El siguiente comando personalizado de AWS CLI supone cargos adicionales para las solicitudes de recuperación de datos y listas. Como la llamada a la API list-objects-v2 es una operación paginada, varias llamadas a la API recuperan todo el conjunto de datos de resultados.
Sigue estos pasos:
-
Ejecuta el siguiente comando list-objects-v2 para obtener una lista de todos los objetos de S3 Glacier del bucket:
`` aws s3api list-objects-v2 --bucket bucket-name --prefix your-prefix --query "Contents[?StorageClass==`GLACIER`][Key]" --output text > list.txt``
-
Ejecuta el comando restore-object para restaurar los objetos de S3 Glacier:
` for /F "tokens=*" %i in (list.txt) do @aws s3api restore-object --bucket bucket-name --key "%i" --restore-request Days=5,GlacierJobParameters={Tier=Standard} || true"`
Nota: Puedes ejecutar el comando restore-object de la AWS CLI para restaurar tus objetos de Amazon S3 Glacier. Sin embargo, el comando restore-object solo puede restaurar un objeto de S3 Glacier a la vez y no admite la acción de restauración en masa.
Información relacionada
Descripción de las opciones de recuperación de archivos
Realización de operaciones de objetos de forma masiva con operaciones por lotes
Administración de trabajos de operaciones por lotes de S3