En esta página, se describe cómo habilitar la Administración del ciclo de vida de los objetos y se proporcionan ejemplos de configuración de ciclo de vida. La configuración del ciclo de vida se administran a nivel de depósito y se aplican a todos los objetos actuales y futuros en el depósito.
Configura la administración del ciclo de vida en un bucket
Habilita la administración del ciclo de vida
Para habilitar la administración del ciclo de vida de un depósito, haz lo siguiente:
Console
- Abre el navegador de Cloud Storage en Google Cloud Console.
Abrir el navegador de Cloud Storage En la lista de bucket s, busca el bucket que deseas habilitar y haz clic en su nombre.
Haz clic en la pestaña Ciclo de vida.
Aparece la página de reglas del ciclo de vida.
Haz clic en Agregar una regla.
En la página que aparece, especifica una configuración.
Selecciona la acción que debe realizarse cuando un objeto cumple las condiciones.
Haga clic en Continuar.
Selecciona las condiciones en las que se realiza una acción.
Haz clic en Continuar.
Haga clic en Crear.
Consulta Solución de problemas para obtener información detallada sobre las operaciones fallidas en el navegador de Cloud Storage.
gsutil
Crea un archivo
.json
con las reglas de configuración del ciclo de vida que deseas aplicar. Consulta los ejemplos de configuración para ver archivos.json
de muestra.Usa el comando
lifecycle set
para aplicar la configuración:gsutil lifecycle set LIFECYCLE_CONFIG_FILE gs://BUCKET_NAME
Donde:
LIFECYCLE_CONFIG_FILE
es el nombre del archivo que creaste en el paso 1.BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
Muestras de código
C++
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para C++.
C#
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para C#.
Go
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Go.
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Java.
Node.js
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Node.js.
PHP
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para PHP.
Python
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Python.
Ruby
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Ruby.
API de REST
API de JSON
- Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus credenciales de OAuth.
Crea un archivo
.json
con las reglas de configuración del ciclo de vida que deseas aplicar. Consulta los ejemplos de configuración para ver archivos.json
de muestra.Usa
cURL
para llamar a la API de JSON con una solicitud de depósitoPATCH
:curl -X PATCH --data-binary @LIFECYCLE_CONFIG_FILE.json \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=lifecycle"
Donde:
LIFECYCLE_CONFIG_FILE
es el nombre del archivo que creaste en el paso 2.OAUTH2_TOKEN
es el token de acceso que generaste en el paso 1.BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
API de XML
- Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus credenciales de OAuth.
Crea un archivo
.xml
con las reglas de configuración del ciclo de vida que deseas aplicar. Consulta los ejemplos de configuración para ver archivos.xml
de muestra.Usa
cURL
para llamar a la API de XML con una solicitud de depósitoPUT
:curl -X PUT --data-binary @XML_FILE.xml \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/BUCKET_NAME?lifecycle"
Donde:
XML_FILE
es el nombre del archivo que creaste en el paso 2.OAUTH2_TOKEN
es el token de acceso que generaste en el paso 1.BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
Inhabilita la administración del ciclo de vida
Para inhabilitar la administración del ciclo de vida de un depósito, haz lo siguiente:
Console
- Abre el navegador de Cloud Storage en Google Cloud Console.
Abrir el navegador de Cloud Storage En la lista de depósitos, busca el depósito que deseas inhabilitar y haz clic en la entrada de la columna Reglas del ciclo de vida.
Aparece la página de reglas del ciclo de vida.
Haz clic en Borrar todo.
En la ventana de confirmación que aparece, haz clic en Confirmar.
Consulta Solución de problemas para obtener información detallada sobre las operaciones fallidas en el navegador de Cloud Storage.
gsutil
Crea un archivo
.json
con una configuración de ciclo de vida vacía:{ "lifecycle": { "rule": [] } }
Usa el comando
lifecycle set
:gsutil lifecycle set LIFECYCLE_CONFIG_FILE gs://BUCKET_NAME
Donde:
LIFECYCLE_CONFIG_FILE
es el nombre del archivo que creaste en el paso 1.BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
Muestras de código
C++
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para C++.
C#
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para C#.
Go
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Go.
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Java.
Node.js
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Node.js.
PHP
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para PHP.
Python
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Python.
Ruby
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Ruby.
API de REST
API de JSON
- Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus propias credenciales de OAuth.
Crea un archivo
.json
con una configuración de ciclo de vida vacía:{ "lifecycle": { "rule": [] } }
Usa
cURL
para llamar a la API de JSON con una solicitud de depósitoPATCH
:curl -X PATCH --data-binary @LIFECYCLE_CONFIG_FILE.json \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=lifecycle"
Donde:
LIFECYCLE_CONFIG_FILE
es el nombre del archivo que creaste en el paso 2.OAUTH2_TOKEN
es el token de acceso que generaste en el paso 1.BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
API de XML
- Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus propias credenciales de OAuth.
Crea un archivo
.xml
con una configuración de ciclo de vida vacía:<LifecycleConfiguration/>
Usa
cURL
para llamar a la API de XML con una solicitud de depósitoPUT
:curl -X PUT --data-binary @XML_FILE.xml \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/BUCKET_NAME?lifecycle"
Donde:
XML_FILE
es el nombre del archivo que creaste en el paso 2.OAUTH2_TOKEN
es el token de acceso que generaste en el paso 1.BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
Comprueba la configuración del ciclo de vida
Para comprobar la configuración del ciclo de vida en un depósito, haz lo siguiente:
Console
- Abre el navegador de Cloud Storage en Google Cloud Console.
Abrir el navegador de Cloud Storage En la lista de depósitos, el estado del ciclo de vida de cada depósito se encuentra en la columna Ciclo de vida.
Puedes hacer clic en este estado para agregar, ver, editar y borrar reglas.
Consulta Solución de problemas para obtener información detallada sobre las operaciones fallidas en el navegador de Cloud Storage.
gsutil
Usa el comando
lifecycle get
:gsutil lifecycle get gs://BUCKET_NAME
En el ejemplo anterior,
BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
Muestras de código
C++
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para C++.
C#
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para C#.
Si deseas ver las políticas del ciclo de vida del bucket, sigue las instrucciones para mostrar los metadatos de un depósito y busca los campos de la política del ciclo de vida en la respuesta.Go
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Go.
Si deseas ver las políticas del ciclo de vida del bucket, sigue las instrucciones para mostrar los metadatos de un depósito y busca los campos de la política del ciclo de vida en la respuesta.Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Java.
Si deseas ver las políticas del ciclo de vida del bucket, sigue las instrucciones para mostrar los metadatos de un depósito y busca los campos de la política del ciclo de vida en la respuesta.Node.js
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Node.js.
Si deseas ver las políticas del ciclo de vida del bucket, sigue las instrucciones para mostrar los metadatos de un depósito y busca los campos de la política del ciclo de vida en la respuesta.PHP
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para PHP.
Si deseas ver las políticas del ciclo de vida del bucket, sigue las instrucciones para mostrar los metadatos de un depósito y busca los campos de la política del ciclo de vida en la respuesta.Python
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Python.
Si deseas ver las políticas del ciclo de vida del bucket, sigue las instrucciones para mostrar los metadatos de un depósito y busca los campos de la política del ciclo de vida en la respuesta.Ruby
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage para Ruby.
Si deseas ver las políticas del ciclo de vida del bucket, sigue las instrucciones para mostrar los metadatos de un depósito y busca los campos de la política del ciclo de vida en la respuesta.API de REST
API de JSON
- Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus credenciales de OAuth.
Usa
cURL
para llamar a la API de JSON con una solicitud de bucketGET
:curl -X GET \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME?fields=lifecycle"
Donde:
OAUTH2_TOKEN
es el token de acceso que generaste en el paso 1.BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
API de XML
- Obtén un token de acceso de autorización de OAuth 2.0 Playground. Configura Playground para usar tus credenciales de OAuth.
Usa
cURL
para llamar a la API de XML con una solicitud de bucketGET
:curl -X GET \ -H "Authorization: Bearer OAUTH2_TOKEN" \ "https://storage.googleapis.com/BUCKET_NAME?lifecycle"
Donde:
OAUTH2_TOKEN
es el token de acceso que generaste en el paso 1.BUCKET_NAME
es el nombre del depósito correspondiente. Por ejemplo,my-bucket
.
Ejemplos de configuración del ciclo de vida de los objetos
En los siguientes ejemplos, se muestran parámetros de configuración del ciclo de vida específicos que realizan acciones del ciclo de vida cuando se cumplen las condiciones del ciclo de vida comunes. Esta configuración se aplica a todos los objetos actuales y futuros en el depósito configurado.
Borra un objeto
La siguiente configuración del ciclo de vida define tres reglas. Ten en cuenta que la segunda y tercera regla son aplicables solo cuando se usa el control de versiones de objetos en el depósito:
Borra versiones publicadas de objetos con más de 30 días de antigüedad.
Si el bucket usa el control de versiones de objetos, esos objetos se vuelven no actuales y están sujetos a las otras dos reglas.
Si el bucket no usa el control de versiones de objetos, esos objetos se borran de forma permanente y no se pueden recuperar.
Borra las versiones no actuales de objetos si hay 2 versiones más recientes del objeto en el bucket. Los objetos sujetos a esta regla se borran de manera permanente y no se pueden recuperar.
Borra versiones no actuales de objetos con más de 35 días de antigüedad. Los objetos sujetos a esta regla se borran de manera permanente y no se pueden recuperar.
El efecto de la combinación de estas tres reglas es que los objetos están sujetos a la eliminación permanente después de un máximo de 35 días en el depósito: 30 días como versión publicada y 5 días como una versión no actual. En el caso de las versiones publicadas de objetos que fueron reemplazadas o borradas fuera del alcance de esta configuración, están sujetas a la eliminación permanente en menor tiempo: 5 días a partir de la fecha en que se volvieron no actuales o cuando haya más de una versión más reciente del objeto en el bucket.
Console
En esta configuración, se usan las instrucciones que se encuentran en la sección habilitar.
Sigue estos pasos para borrar versiones publicadas de objetos con más de 30 días de antigüedad:
- Selecciona la acción Borrar objeto.
- Selecciona la condición antigüedad y, luego, ingresa un valor de 30.
- Selecciona la condición Estado en vivo y elige la opción Activo.
Para borrar versiones no actuales de objetos si hay 2 versiones más recientes, haz lo siguiente:
- Selecciona la acción Borrar objeto.
- Selecciona la condición Cantidad de versiones más recientes y, luego, ingresa un valor de 2.
Para borrar versiones no actuales de objetos con más de 35 días de antigüedad, sigue estos pasos:
- Selecciona la acción Borrar objeto.
- Selecciona la condición Antigüedad y, luego, ingresa un valor de 35.
- Selecciona la condición Estado en vivo y elige la opción No actual.
gsutil
La siguiente configuración del ciclo de vida se puede aplicar a un depósito. Para ello, habilita la administración del ciclo de vida.
{ "lifecycle": { "rule": [ { "action": {"type": "Delete"}, "condition": { "age": 30, "isLive": true } }, { "action": {"type": "Delete"}, "condition": { "numNewerVersions": 2 } }, { "action": {"type": "Delete"}, "condition": { "age": 35, "isLive": false } } ] } }
Para obtener el formato generalizado de un archivo de configuración del ciclo de vida, consulta la representación de recursos de depósitos para JSON.
API de REST
API de JSON
La siguiente configuración del ciclo de vida se puede aplicar a un depósito. Para ello, habilita la administración del ciclo de vida.
{ "lifecycle": { "rule": [ { "action": {"type": "Delete"}, "condition": { "age": 30, "isLive": true } }, { "action": {"type": "Delete"}, "condition": { "numNewerVersions": 2 } }, { "action": {"type": "Delete"}, "condition": { "age": 35, "isLive": false } } ] } }
Para obtener el formato generalizado de un archivo de configuración del ciclo de vida, consulta la representación de recursos de depósitos para JSON.
API de XML
La siguiente configuración del ciclo de vida se puede aplicar a un depósito. Para ello, habilita la administración del ciclo de vida.
<?xml version="1.0" encoding="UTF-8" ?> <LifecycleConfiguration> <Rule> <Action> <Delete/> </Action> <Condition> <IsLive>true</IsLive> <Age>30</Age> </Condition> </Rule> <Rule> <Action> <Delete/> </Action> <Condition> <NumberOfNewerVersions>2</Age> </Condition> </Rule> <Rule> <Action> <Delete/> </Action> <Condition> <IsLive>false</IsLive> <Age>35</Age> </Condition> </Rule> </LifecycleConfiguration>
Si quieres obtener el formato generalizado de un archivo de configuración del ciclo de vida, consulta el formato de configuración del ciclo de vida para XML.
Cambia la clase de almacenamiento de un objeto
La siguiente configuración del ciclo de vida define dos reglas:
- Cambia la clase de almacenamiento de un objeto a Nearline Storage si su antigüedad es mayor a 365 días (un año) y su clase de almacenamiento actual es Standard Storage, Multi-Regional Storage o almacenamiento de disponibilidad reducida duradera (DRA).
- Cambia la clase de almacenamiento de un objeto a Coldline Storage si su antigüedad es superior a 1,095 días (tres años) y su clase de almacenamiento actual es Nearline Storage.
Console
En esta configuración, se usan las instrucciones que se encuentran en la sección habilitar.
Para mover objetos a Cloud Storage Nearline 365 días después de su creación, sigue estos pasos:
- Selecciona la acción Establecer la clase de almacenamiento en Nearline.
- Selecciona la condición Antigüedad y, luego, ingresa un valor de 365.
- Selecciona la condición La clase de almacenamiento coincide con… y elige las opciones Estándar, Multi-regional y Durable Reduced Availability.
Para mover objetos a Cloud Storage Coldline 1,095 días después de su creación, sigue estos pasos:
- Selecciona la acción Establecer la clase de almacenamiento en Coldline.
- Selecciona la condición Antigüedad y, luego, ingresa un valor de 1,095.
- Selecciona la condición La clase de almacenamiento coincide con… y elige la opción Nearline.
gsutil
La siguiente configuración del ciclo de vida se puede aplicar a un depósito. Para ello, habilita la administración del ciclo de vida.
{ "lifecycle": { "rule": [ { "action": { "type": "SetStorageClass", "storageClass": "NEARLINE" }, "condition": { "age": 365, "matchesStorageClass": ["MULTI_REGIONAL", "STANDARD", "DURABLE_REDUCED_AVAILABILITY"] } }, { "action": { "type": "SetStorageClass", "storageClass": "COLDLINE" }, "condition": { "age": 1095, "matchesStorageClass": ["NEARLINE"] } } ] } }
Para obtener el formato generalizado de un archivo de configuración del ciclo de vida, consulta la representación de recursos de depósitos para JSON.
API de REST
API de JSON
La siguiente configuración del ciclo de vida se puede aplicar a un depósito. Para ello, habilita la administración del ciclo de vida.
{ "lifecycle": { "rule": [ { "action": { "type": "SetStorageClass", "storageClass": "NEARLINE" }, "condition": { "age": 365, "matchesStorageClass": ["MULTI_REGIONAL", "STANDARD", "DURABLE_REDUCED_AVAILABILITY"] } }, { "action": { "type": "SetStorageClass", "storageClass": "COLDLINE" }, "condition": { "age": 1095, "matchesStorageClass": ["NEARLINE"] } } ] } }
Para obtener el formato generalizado de un archivo de configuración del ciclo de vida, consulta la representación de recursos de depósitos para JSON.
API de XML
La siguiente configuración del ciclo de vida se puede aplicar a un depósito. Para ello, habilita la administración del ciclo de vida.
<?xml version="1.0" encoding="UTF-8" ?> <LifecycleConfiguration> <Rule> <Action> <SetStorageClass>NEARLINE</SetStorageClass> </Action> <Condition> <Age>365</Age> <MatchesStorageClass>MULTI_REGIONAL</MatchesStorageClass> <MatchesStorageClass>STANDARD</MatchesStorageClass> <MatchesStorageClass>DURABLE_REDUCED_AVAILABILITY</MatchesStorageClass> </Condition> </Rule> <Rule> <Action> <SetStorageClass>COLDLINE</SetStorageClass> </Action> <Condition> <Age>1095</Age> <MatchesStorageClass>NEARLINE</MatchesStorageClass> </Condition> </Rule> </LifecycleConfiguration>
Si quieres obtener el formato generalizado de un archivo de configuración del ciclo de vida, consulta el formato de configuración del ciclo de vida para XML.
¿Qué sigue?
- Obtén más información sobre la administración del ciclo de vida de los objetos, incluidas las acciones y las condiciones del ciclo de vida disponibles.