Gestión de ciclo de vida de objetos de Object Storage

Descubra cómo utilizar la gestión del ciclo de vida de objetos para gestionar automáticamente el archivado y la supresión de objetos.

Mediante el uso de la gestión del ciclo de vida de objetos para gestionar los datos de Object Storage y Archive Storage, puede reducir los costos de almacenamiento y la cantidad de tiempo que dedica a gestionar datos manualmente.

La gestión del ciclo de vida de los objetos funciona realizando una acción automatizada basada en reglas que defina. Estas reglas indican a Object Storage que suprima cargas de varias partes sin confirmar, mueva objetos a un nivel de almacenamiento diferente y suprima los recursos soportados en su nombre en un cubo determinado. Las reglas de ciclo de vida de un cubo se conocen colectivamente como política de ciclo de vida de objetos. Los recursos que soportan la gestión del ciclo de vida de los objetos incluyen objetos, versiones de objetos y cargas de varias partes sin confirmar o con fallos.

Por ejemplo, puede definir reglas que realicen automáticamente lo siguiente:

  • Mueva los objetos de nivel Estándar con la extensión .doc al nivel Acceso poco frecuente o Archivo 60 días después de la creación o la última actualización.

  • Mueva los objetos del nivel Estándar al nivel Archivo 30 días después de la creación o la última actualización y, a continuación, suprima automáticamente esos objetos archivados después de 180 días.

  • Mueva los objetos del nivel Estándar al nivel Acceso poco frecuente 90 días después de la creación o la última actualización.

  • Suprima cualquier versión de objeto anterior 120 días después de que la versión de objeto pase de la versión más reciente a una versión anterior.

  • Suprima cargas de varias partes sin confirmar o con fallos después de 5 días.

  • Suprima todos los objetos y versiones de objetos de un cubo como preparación para la supresión del cubo.

Cada cubo de Object Storage o de Archive Storage puede tener una única política de ciclo de vida que conste de hasta 1000 reglas. Las reglas relacionadas con objetos pueden tener condiciones de prefijo y coincidencia de patrón de nombre de objeto. Las reglas de carga de varias partes sin confirmar no soportan condiciones de prefijo y coincidencia de patrón.

Puede crear, editar, eliminar, activar y desactivar reglas individuales en la consola según sea necesario. Para actualizar una política de ciclo de vida mediante la CLI o la API, sobrescriba una política existente con una nueva política. Asegúrese de que la nueva política incluye todas las reglas de política que desea aplicar al cubo.
Nota

Las reglas se ejecutan normalmente en los 10 minutos posteriores a la activación. Sin embargo, esto es sobre una base de mejor esfuerzo, y podría tomar más tiempo. Las reglas se pueden aplicar a todos los objetos de la mayoría de los cubos en un plazo de 24 horas, pero puede tardar más en cubos muy grandes. En circunstancias inusuales, el tiempo podría ser mucho más largo de lo esperado, especialmente cuando una regla afecta a muchos objetos a la vez. Se le seguirá facturando el nivel en el que se encuentra el objeto, incluso después de que se haya disparado una regla, pero aún no se haya procesado.

Tareas de política de ciclo de vida de objeto

Puede realizar las siguientes tareas de gestión del ciclo de vida de objetos:

Políticas de IAM necesarias

Importante

No puede utilizar la gestión del ciclo de vida de objetos hasta que autorice al servicio Object Storage para archivar y eliminar objetos en su nombre. Consulte Permisos del servicio para obtener más información.

Si no está familiarizado con las políticas, consulte Introducción a las políticas y Políticas comunes.

Permisos del usuario

Para utilizar Oracle Cloud Infrastructure, un administrador debe otorgarle acceso de seguridad en una política . Este acceso está requerido tanto si está utilizando la consola como la API de REST con un SDK, una CLI u otra herramienta. Si recibe un mensaje que indica que no tiene permiso o no está autorizado, verifique con el administrador el tipo de acceso que tiene y en qué compartimento debe trabajar.

Para administradores:

  • La política Permitir a los administradores de Object Storage gestionar cubos y objetos permite al grupo especificado realizar todas las acciones con cubos y objetos, incluida la adición y gestión de políticas de ciclo de vida.
  • Si crea políticas más restrictivas que otorguen permisos individuales:
    • OBJECT_VERSION_DELETE es necesario para suprimir versiones de objetos anteriores en su nombre mediante políticas de ciclo de vida.
    • OBJECT_UPDATE_TIER es necesario para cambiar el nivel de almacenamiento de un objeto.

Consulte Detalles de Object Storage, Archive Storage y Data Transfer para obtener más información sobre los permisos de usuario de Object Storage.

Permisos de servicio

Para ejecutar políticas de ciclo de vida de objetos, debe autorizar al servicio para archivar y suprimir objetos en su nombre. Para ello, cree la siguiente política en el compartimento raíz del arrendamiento:

Allow service objectstorage-<region_identifier> to manage object-family in compartment <compartment_name>

Dado que Object Storage es un servicio regional, debe autorizar al servicio Object Storage en cada región en la que utilice políticas de ciclo de vida. Object Storage garantiza que los datos no se lean desde ninguna región no autorizada.

Si no tiene permisos para escribir políticas para el compartimento raíz de su arrendamiento, póngase en contacto con el administrador de Oracle Cloud Infrastructure. Para determinar el valor del identificador de región de una región de Oracle Cloud Infrastructure, consulte Regiones y dominios de disponibilidad.

En lugar de utilizar el verbo de política manage, puede otorgar permisos individuales al servicio. Por ejemplo:

Allow service objectstorage-<region_identifier> to manage object-family in compartment <compartment_name> where any {request.permission='BUCKET_INSPECT', request.permission='BUCKET_READ', request.permission='OBJECT_INSPECT', request.permission='OBJECT_UPDATE_TIER', request.permission='OBJECT_DELETE', request.permission='OBJECT_VERSION_DELETE'}

Opciones

Al crear reglas de política de ciclo de vida de objetos, tiene las siguientes opciones:

  • Cuando se crea una regla de ciclo de vida, el sistema genera un nombre por defecto para dicha regla, por ejemplo, lifecycle-rule-20190321-1559. Este nombre de regla identifica el año, mes, día y hora en los que se creó la regla. Puede utilizar ese nombre generado por el sistema para la nueva regla o puede especificar un nombre diferente para ella.

  • Puede crear reglas de ciclo de vida que hagan lo siguiente:

    • Mueva o suprima todos los objetos del cubo.

    • Mueva o suprima los objetos del cubo que coincidan con los filtros del nombre de objeto que ha especificado. Puede seleccionar objetos utilizando prefijos de nombre de objeto y coincidencia de patrones. Consulte Uso de filtros de nombre de objeto para obtener más información.

    • Suprima cargas de varias partes sin confirmar o con fallos. Para obtener más información, consulte Cargas de varias partes de Object Storage.

    Si el control de versiones de objeto está activado o suspendido en un cubo, también puede crear reglas de ciclo de vida que hagan lo siguiente:
    • Mueva o suprima las versiones anteriores de todos los objetos del cubo.

    • Mueva o suprima las versiones anteriores de los objetos del cubo que coincidan con los filtros de nombre que especifique. Puede seleccionar objetos utilizando prefijos de nombre de objeto y coincidencia de patrones. Consulte Uso de filtros de nombre de objeto para obtener más información.

    Consulte Control de versiones de Object Storage para obtener más información.
  • Especifique el número de días hasta que se realice la acción especificada.

  • Decida si una nueva regla estará activada o desactivada en el momento de la creación.

Utilización de filtros de nombre de objeto

Utilice los filtros de nombre de objeto para especificar un subjuego de objetos, versiones de objeto o versiones de objeto anteriores a los que se aplica una regla de ciclo de vida. Cree una regla de filtro de nombre de objeto independiente para cada destino de regla (objetos, versiones de objeto o versiones de objeto anteriores).

Importante

No especifique filtros de nombre de objeto si desea que una regla se aplique a todos los objetos, a todas las versiones de objeto o a todos los destinos de versiones de objeto anteriores.

Están soportados dos tipos de filtros de nombre de objeto:

  • Coincidencia de prefijos es una coincidencia exacta de los caracteres del extremo izquierdo de un nombre de objeto. La coincidencia de prefijo no soporta caracteres comodín. Aunque los cubos y los objetos de Object Storage existen en una estructura plana, los prefijos le permiten simular una estructura de directorios cuando se utilizan con una barra inclinada (/). Consulte Nomenclatura de objetos mediante prefijos y jerarquías para obtener más información.

  • Coincidencia de patrones coincide con el nombre de objeto completo, pero soporta el uso de caracteres comodín y otras construcciones de coincidencia de patrones según sea necesario para que coincidan con cero o más caracteres del nombre de objeto.

Nota

Los filtros de nombre de objeto operan en todo el nombre de objeto. Los prefijos (que se muestran como carpetas y subcarpetas virtuales en la consola) forman parte del nombre del objeto.

Por ejemplo, para esta ruta: >marathon>participants>p_21.jpg, el nombre del objeto es /marathon/participants/p_21.jpg, no p_21.jpg.

Puede agregar filtros de nombre de objeto en cualquier orden. La gestión del ciclo de vida de objetos evalúa la prioridad de las reglas de la siguiente manera:

  1. Exclusiones de patrones

  2. Inclusiones de patrones

  3. Inclusiones de prefijos

Uso de la coincidencia de prefijos para filtrar objetos

Puede utilizar cadenas de prefijo para fines de coincidencia al realizar operaciones relacionadas con la gestión del ciclo de vida. Algunas operaciones masivas también se pueden realizar haciendo la coincidencia con la parte del prefijo del nombre de objeto.

  • En los siguientes ejemplos de nombres de objeto, los prefijos incluyen una o más barras inclinadas (/) para simular una estructura de directorios. La cadena marathon/ o marathon/participants/ puede servir como prefijo para fines de coincidencia en las reglas de ciclo de vida:
    marathon/finish_line.jpg
    marathon/podium.jpg
    marathon/participants/p_21.jpg
    marathon/participants/p_29.jpg
  • En los siguientes ejemplos de nombre de objeto, la cadena gloves_27_ puede servir como prefijo para fines de coincidencia en las reglas de ciclo de vida:
    gloves_27_dark_green.jpg
    gloves_27_light_blue.jpg
    gloves_27_deep_purple.jpg
    gloves_27_bright_orange.jpg
            

Uso de la coincidencia de patrones para filtrar objetos

Object Storagees compatible con los siguientes caracteres de coincidencia de patrones para incluir o excluir objetos:

Caracteres Descripción Ejemplos de patrón Coincide No coincide
* Coincide con 0 o más caracteres. *.tmp

foo.tmp

foo/bar/baz.tmp

tmp

Atmp

temp/*.tmp

temp/working.tmp

temp/new/file.tmp

file.tmp

temp.tmp

temp/new.draft

*.xls

.xls

/home/user/file.xls

xls

.xl

/archive/*

/archive/sub/dir/

/archive/1/2/3/4/foo.txt

/src/archive/a

archive/b

? Coincide con cualquier carácter. X? Z

XyZ

X_Z

XZ

XYYZ

\ Omite el carácter siguiente. \\dir\\sub\\*

\dir\sub\ABC

\dir\sub\

dir\sub\abc

dirsub

[...]

Coincide con un grupo de caracteres, que puede ser:

  • Un conjunto de caracteres, por ejemplo: [Zafg9@]. Coincide con cualquier carácter entre corchetes.
  • Un rango de caracteres, por ejemplo: [a-f]. Coincide con cualquier carácter del rango:
    • [a-f] es equivalente a [abcdef].

    • Para rangos de caracteres solo se admite el patrón CHARACTER-CHARACTER:

      • [ab-yz] no es válido.
      • [a-mn-z] no es válido.
    • Los rangos de caracteres no pueden comenzar por ^ ni dos puntos (:).

    • Para incluir un guión (-) en el rango, conviértalo en el primer o último carácter.

[-ab3]

-

a

b

3

-a

-ab

3b

backup.tar.gz. [0- 9]

backup.tar.gz. 0

backup.tar.gz. 5

backup.tar.gz. 9

backup.tar.gz10

backup.tar.gz

page-[0-9]*

page-0

page-2

page-22

page-2X

page-

page-A1

\[a-z\] [a-z]

a

z

[a-z

Limitaciones de filtro de nombre de objeto

Los siguientes límites se aplican a los filtros de nombre de objeto:

  • Se permite un máximo de 20 patrones en los filtros de nombre de objeto.

  • Los patrones tienen un límite de 1024 caracteres. A continuación se muestran ejemplos de patrones no válidos:

    • \
    • [^a-z]
    • [z-a]
    • [: isalpha:]

Trabajar con políticas de gestión del ciclo de vida de objetos

Puede crear, suprimir, editar o desactivar reglas de la política de ciclo de vida mediante la consola, la interfaz de línea de comandos (CLI), un SDK o la API.

La política de supresión de Object Lifecycle Management funciona en función de la hora de última modificación del objeto en UTC (hora universal coordinada), capturando la hora de creación o la última hora de sobrescritura. La hora de modificación se redondea al alza hasta el día más cercano en UTC.

La plataforma ejecuta la política de ciclo de vida una vez al día. Al configurar o editar una política de ciclo de vida, los cambios pueden tardar hasta 24 horas en entrar en vigor y en iniciarse la primera ejecución. El tiempo que se tarda en completar las acciones de política depende del número de objetos que se van a evaluar y a los que se va a operar.

Atención

Los objetos suprimidos en su nombre por las políticas de ciclo de vida no se pueden recuperar. Asegúrese al crear y editar políticas de ciclo de vida que no están eliminando los datos que desea retener. Le recomendamos que pruebe la política de ciclo de vida en los datos de desarrollo antes de utilizar la política en producción.