¿Cómo puedo restaurar un objeto de Amazon S3 desde la clase de almacenamiento S3 Glacier Flexible Retrieval o S3 Glacier Deep Archive mediante la AWS CLI?
He archivado un objeto de Amazon Simple Storage Service (Amazon S3) en la clase de almacenamiento Amazon S3 Glacier Flexible Retrieval (anteriormente Glacier) o Amazon S3 Glacier Deep Archive mediante una configuración Lifecycle (ciclo de vida). Quiero restaurar el objeto mediante la Interfaz de la línea de comandos de AWS (AWS CLI).
Solución
Siga los siguientes pasos para restaurar un objeto de S3 desde el almacenamiento S3 Glacier Flexible Retrieval o la clase S3 Glacier Deep Archive mediante la AWS CLI.
Nota: Si al ejecutar los comandos de la AWS CLI, le da error, asegúrese de utilizar la versión más reciente.
Iniciar una solicitud de restauración
Ejecute el siguiente comando para iniciar una solicitud de restauración. Asegúrese de reemplazar todos los valores del comando de ejemplo por los valores del bucket, el objeto y la solicitud de restauración.
Nota: Dado que los cargos por recuperación de datos se basan en la cantidad de solicitudes, asegúrese de confirmar que los parámetros de la solicitud de restauración sean correctos.
$ aws s3api restore-object --bucket awsexamplebucket --key dir1/example.obj --restore-request '{"Days":25,"GlacierJobParameters":{"Tier":"Standard"}}'
Tras ejecutar este comando, estará disponible una copia temporal del objeto durante el tiempo especificado en la solicitud de restauración. En este ejemplo, la duración especificada en la solicitud de restauración es de 25 días, mientras que el nivel de restauración está configurado en S3 Standard.
Tenga en cuenta que puede hacer las siguientes modificaciones en el comando:
- Para restaurar una versión de objeto específica en un bucket versionado, incluya la opción**--version-id** y, a continuación, especifique el ID de versión correspondiente.
- Para la clase de almacenamiento S3 Glacier Flexible Retrieval, puede utilizar las opciones de recuperación Expedited, Standard o Bulk (acelerada, estándar o en bloque). Sin embargo, solo puede utilizar las opciones de recuperación Standard o Bulk (estándar o en bloque) para la clase de almacenamiento S3 Glacier Deep Archive.
- Si la sintaxis JSON utilizada en el ejemplo produce un error en un cliente de Windows, sustituya la solicitud de restauración por la siguiente sintaxis:
--restore-request Days=25,GlacierJobParameters={"Tier"="Standard"}
Nota: Si un objeto se almacena en S3 Glacier Instant Retrieval, la recuperación de datos es instantánea y la operación de restauración no es necesaria. Para obtener más información, consulte Clases de almacenamiento de Amazon S3.
Supervisar el estado de la solicitud de restauración
Ejecute el siguiente comando para supervisar el estado de la solicitud de restauración:
aws s3api head-object --bucket awsexamplebucket --key dir1/example.obj
Si la restauración sigue en curso después de ejecutar el comando, recibirá una respuesta similar a la siguiente:
{ "Restore": "ongoing-request=\"true\"", ... "StorageClass": "GLACIER | DEEP_ARCHIVE", "Metadata": {} }
Una vez finalizada la restauración, recibirá una respuesta similar a la siguiente:
{ "Restore": "ongoing-request=\"false\", expiry-date=\"Sun, 13 Aug 2017 00:00:00 GMT\"", ... "StorageClass": "GLACIER | DEEP_ARCHIVE", "Metadata": {} }
Anote la expiry-date (fecha de caducidad) de la respuesta; tiene hasta ese momento para acceder al objeto de almacenamiento temporal, almacenado en la clase Reduced Redundancy Storage (Almacenamiento de redundancia reducida). El objeto temporal está disponible junto con el objeto archivado que se encuentra en la clase de almacenamiento S3 Glacier Flexible Retrieval o S3 Glacier Deep Archive. Una vez transcurrida la expiry-date, se elimina el objeto temporal. Debe cambiar la clase de almacenamiento del objeto antes de que caduque el objeto temporal. Para cambiar la clase de almacenamiento del objeto después de laexpiry-date, debe iniciar una nueva solicitud de restauración.
Cambiar la clase de almacenamiento del objeto a Amazon S3 Standard
Para cambiar la clase de almacenamiento del objeto a Amazon S3 Standard, utilicecopy. Puede sobrescribir el objeto existente o copiarlo en otra ubicación.
Advertencia: Si utiliza la versión 1.x de la AWS CLI, asegúrese de que el umbral multiparte esté establecido en 5 GB antes de copiar un objeto. De lo contrario, los metadatos de usuario del objeto se perderán cuando el tamaño del objeto supere los umbrales multiparte de la AWS CLI. Para objetos de más de 5 GB, utilice la versión 2.x de la AWS CLI para conservar los metadatos de los usuarios.
(Opcional) Para aumentar el umbral multiparte de la AWS CLI, ejecute el siguiente comando:
aws configure set default.s3.multipart_threshold 5GB
Para sobrescribir el objeto existente con la clase de almacenamiento Amazon S3 Standard, ejecute el siguiente comando:
aws s3 cp s3://awsexamplebucket/dir1/example.obj s3://awsexamplebucket/dir1/example.obj --storage-class STANDARD
Para realizar una copia recursiva de un prefijo completo y sobrescribir los objetos existentes con la clase de almacenamiento Amazon S3 Standard, ejecute el siguiente comando:
aws s3 cp s3://awsexamplebucket/dir1/ s3://awsexamplebucket/dir1/ --storage-class STANDARD --recursive --force-glacier-transfer
Nota: Los objetos que se archivan en S3 Glacier Flexible Retrieval tienen una duración de almacenamiento mínima de 90 días. Los objetos que se archivan en S3 Glacier Deep Archive tienen una duración de almacenamiento mínima de 180 días. Si ha sobrescrito un objeto en S3 Glacier Flexible Retrieval antes del mínimo de 90 días, se le cobrará el importe de 90 días. Del mismo modo, si los objetos que se encuentren en S3 Glacier Deep Archive se sobrescriben antes del mínimo de 180 días, se le cobrará 180 días.
Para copiar el objeto en otra ubicación, ejecute el siguiente comando:
aws s3 cp s3://awsexamplebucket/dir1/example.obj s3://awsexamplebucket/dir2/example2.obj
Nota: En el caso de los buckets suspendidos o los buckets con el control de versiones activado, este paso crea copias adicionales de los objetos. Estos objetos adicionales también conllevan costes de almacenamiento. Para evitar costes de almacenamiento, elimine las versiones no actuales que aún estén en la clase de almacenamiento Amazon S3 Glacier o cree una regla de caducidad de S3 Lifecycle.
Información relacionada
Vídeos relacionados
Contenido relevante
- OFICIAL DE AWSActualizada hace 4 años