Solucionar problemas de Amazon S3 Lifecycle - Amazon Simple Storage Service

Solucionar problemas de Amazon S3 Lifecycle

La siguiente información puede ayudarle a solucionar problemas habituales con las reglas de Amazon S3 Lifecycle.

He ejecutado una operación de lista en mi bucket y he visto objetos que pensaba que habían caducado o cambiado de conformidad con una regla del ciclo de vida.

Las transiciones de objetos y los vencimientos de los objetos de S3 Lifecycle son operaciones asincrónicas. Por lo tanto, es posible que haya un retraso entre el momento en que los objetos cumplan los requisitos de caducidad o cambio y el momento en que realmente estén cambiando o caduquen. Los cambios en la facturación se aplican en cuanto se cumple la regla de ciclo de vida, incluso aunque la acción no se haya completado. La excepción a este comportamiento es si hay una regla de ciclo de vida para pasar a la clase de almacenamiento S3 Intelligent-Tiering. En ese caso, los cambios en la facturación no se producen hasta que el objeto haya pasado a S3 Intelligent-Tiering. Para obtener más información sobre los cambios en la facturación, consulte Configurar el ciclo de vida de un bucket.

nota

Amazon S3 no realiza la transición de objetos de menos 128 KB de la clase de almacenamiento S3 Standard o S3 Standard-IA a la clase de almacenamiento S3 Intelligent-Tiering, S3 Standard-IA o S3 One Zone-IA.

¿Cómo puedo supervisar las acciones que se llevan a cabo según mis reglas de ciclo de vida?

Para supervisar las acciones que se llevan a cabo según las reglas de ciclo de vida, puede utilizar las siguientes características:

  • Notificaciones de eventos de S3: puede configurar las notificaciones de eventos de S3 para que se le notifique cualquier evento de transición o caducidad del ciclo de vida de S3.

  • Registros de acceso al servidor de S3: puede habilitar los registros de acceso al servidor para los buckets de S3 para capturar acciones del ciclo de vida de S3, como, por ejemplo, las transiciones de objetos a otra clase de almacenamiento o la caducidad de objetos. Para obtener más información, consulte Ciclos de vida y registros.

Para ver los cambios en el almacenamiento provocados por las acciones del ciclo de vida a diario, le recomendamos que utilice los paneles de Almacenamiento de lente de S3 en lugar de utilizar las métricas de Amazon CloudWatch. En el panel de Almacenamiento de lente puede ver las siguientes métricas, que supervisan el número o el tamaño de los objetos:

  • Bytes de la versión actual

  • Recuento de objetos de la versión actual

  • Bytes de la versión que no es actual

  • Recuento de objetos de la versión que no es actual

  • Recuento de objetos del marcador de eliminación

  • Bytes de almacenamiento del marcador de eliminación

  • Bytes de carga multiparte incompletos

  • Recuento de objetos con carga multiparte incompleta

Mi recuento de objetos de S3 sigue aumentando, incluso después de configurar las reglas del ciclo de vida en un bucket con la versión activada.

En un bucket con control de versiones, cuando un objeto caduca, este no se elimina por completo del bucket. En su lugar, se crea un marcador de eliminación como la versión más reciente del objeto. Los marcadores de eliminación también cuentan como objetos. Por lo tanto, si se crea una regla de ciclo de vida para que caduquen solo las versiones actuales, el recuento de objetos en el bucket de S3 en realidad aumenta en lugar de disminuir.

Por ejemplo, supongamos que un bucket de S3 tiene activado el control de versiones con 100 objetos y que una regla de ciclo de vida está configurada para que las versiones actuales del objeto caduquen transcurridos 7 días. Después del séptimo día, el recuento de objetos aumenta a 200 porque se crean 100 marcadores de eliminación además de los 100 objetos originales, que ahora son las versiones no actuales. Para obtener más información sobre las acciones de las reglas de configuración de S3 Lifecycle para los buckets con control de versiones, consulte Configurar el ciclo de vida de un bucket.

Para eliminar objetos de forma permanente, añada una configuración de ciclo de vida adicional para eliminar las versiones anteriores de los objetos, los marcadores de eliminación caducados y las cargas multiparte incompletas. Para obtener instrucciones sobre cómo crear nuevas reglas de ciclo de vida, consulte Configurar el ciclo de vida de un bucket.

nota
  • Amazon S3 redondea la fecha de transición o caducidad de un objeto a la medianoche UTC del día siguiente.

    Al evaluar los objetos para las acciones del ciclo de vida, Amazon S3 utiliza la hora de creación del objeto en UTC. Por ejemplo, supongamos que tenemos un bucket sin control de versiones con una regla de ciclo de vida configurada para que los objetos caduquen al cabo de un día. Supongamos que un objeto se creó el 1 de enero a las 17:05 PDT, que corresponde al 2 de enero a las 00:05 UTC. El objeto tiene un día de antigüedad a las 00:05 UTC del 3 de enero, por lo que podrá caducar cuando S3 Lifecycle evalúe los objetos a las 00:00 UTC del 4 de enero.

    Dado que las acciones del ciclo de vida de Amazon S3 se producen de forma asíncrona, es posible que haya algún retraso entre la fecha especificada en la regla del ciclo de vida y la transición física real del objeto. Para obtener más información, consulte Retraso de caducidad o transición.

    Para obtener más información, consulte Reglas de ciclo de vida: basadas en la edad de un objeto

  • En el caso de los objetos de S3 que están protegidos por un bloqueo de objetos, las versiones actuales no se eliminan de forma permanente. En su lugar, se añade un marcador de eliminación a los objetos, por lo que dejan de ser actuales. Las versiones no actuales se conservan y no caducan de forma permanente.

¿Cómo puedo vaciar mi bucket de S3 con las reglas de ciclo de vida?

Las reglas de ciclo de vida de S3 son una herramienta eficaz para vaciar un bucket de S3 con millones de objetos. Para eliminar una gran cantidad de objetos del bucket de S3, asegúrese de utilizar estos dos pares de reglas de ciclo de vida:

  • Hacer que caduquen las versiones actuales de los objetos y Eliminar de forma permanente las versiones anteriores de los objetos

  • Eliminar los marcadores de eliminación caducados y Eliminar las cargas multiparte incompletas

Para obtener instrucciones sobre cómo crear nuevas reglas de configuración del ciclo de vida, consulte Configurar el ciclo de vida de un bucket.

nota

En el caso de los objetos de S3 que están protegidos por un bloqueo de objetos, las versiones actuales no se eliminan de forma permanente. En su lugar, se añade un marcador de eliminación a los objetos, por lo que dejan de ser actuales. Las versiones no actuales se conservan y no caducan de forma permanente.

Mi factura de Amazon S3 ha aumentado tras pasar los objetos a una clase de almacenamiento más barata.

Hay varios motivos por los que la factura podría aumentar tras cambiar los objetos a una clase de almacenamiento más barata:

  • Gastos generales de S3 Glacier para objetos pequeños

    Por cada objeto que pasa a S3 Glacier Flexible Retrieval o S3 Glacier Deep Archive Flexible Retrieval, esta actualización de almacenamiento tiene asociada un gasto adicional total de 40 KB. Dentro del gasto adicional de 40 KB, se utilizan 8 KB para almacenar los metadatos y el nombre del objeto. Estos 8 KB se cobran según las tarifas de S3 Standard. Los 32 KB restantes se utilizan para la indexación y los metadatos relacionados. A estos 32 KB se les aplican los precios de S3 Glacier Flexible Retrieval o S3 Glacier Deep Archive.

    Por lo tanto, si almacena muchos objetos de menor tamaño, no recomendamos utilizar transiciones del ciclo de vida. En su lugar, para reducir los cargos adicionales, le recomendamos agregar muchos objetos pequeños en un número menor de objetos grandes antes de almacenarlos en Amazon S3. Para obtener más información sobre las consideraciones de costos, consulte Transición a las clases de almacenamiento S3 Glacier Flexible Retrieval y S3 Glacier Deep Archive (archivo de objetos).

  • Gastos de almacenamiento mínimos

    Algunas clases de almacenamiento de S3 tienen requisitos mínimos de duración de almacenamiento. A los objetos que se eliminen, sobrescriban o cambien de esas clases antes de cumplir con la duración mínima se les cobrará una tarifa de transición o eliminación anticipada prorrateada. Estos requisitos mínimos de duración del almacenamiento son los siguientes:

    • S3 Standard-IA y S3 One Zone-IA: 30 días

    • S3 Glacier Flexible Retrieval y S3 Glacier Instant Retrieval: 90 días

    • S3 Glacier Deep Archive: 180 días

    Para obtener más información sobre estos requisitos, consulte la sección Restricciones de Transición de objetos con Amazon S3 Lifecycle. Para obtener información general sobre los precios de S3, consulte Precios de Amazon S3 y la calculadora de precios de AWS.

  • Costos de la transición del ciclo de vida

    Cada vez que un objeto pasa a una clase de almacenamiento diferente según la regla de ciclo de vida, Amazon S3 contabiliza dicha transición como una solicitud de transición. Los costos de estas solicitudes de transición se suman a los costos de esas clases de almacenamiento. Si tiene previsto pasar una gran cantidad de objetos, tenga en cuenta los costos de la solicitud al pasar a un nivel inferior. Para obtener más información, consulte Precios de Amazon S3.

He actualizado mi política de bucket, pero las reglas del ciclo de vida caducadas siguen borrando mis objetos de S3.

Las instrucciones Deny de una política de bucket no impiden que caduquen los objetos definidos en una regla de ciclo de vida. Las acciones del ciclo de vida (como las transiciones o los vencimientos) no utilizan la operación DeleteObject de S3. En cambio, las acciones del ciclo de vida de S3 se realizan mediante puntos de conexión internos de S3. (Para obtener más información, consulte Ciclos de vida y registros).

Para evitar que la regla del ciclo de vida lleve a cabo alguna acción, debe editar, eliminar o desactivar la regla.

¿Puedo recuperar objetos de S3 que hayan caducado según las reglas de S3 Lifecycle?

La única forma de recuperar los objetos caducados de conformidad con S3 Lifecycle es mediante el control de versiones, que debe establecerse antes de que los objetos cumplan los requisitos de caducidad. No puede deshacer las operaciones de caducidad que realicen las reglas del ciclo de vida. Si las reglas de S3 Lifecycle eliminan los objetos de forma permanente, no podrá recuperarlos. Para activar el control de versiones en un bucket, consulte Usar el control de versiones en buckets de S3.

Si ha aplicado el control de versiones al bucket y las versiones no actuales de los objetos siguen intactas, puede restaurar las versiones anteriores de los objetos caducados. Para obtener más información sobre el comportamiento de las acciones de las reglas y los estados de control de versiones de S3 Lifecycle, consulte la tabla Acciones del ciclo de vida y estado de las versiones del bucket en Elementos para describir las acciones del ciclo de vida.

nota

Si el bucket de S3 está protegido por Copia de seguridad de AWS o Replicación de objetos de S3, es posible que también pueda utilizar estas funciones para recuperar los objetos caducados.