Si necesitas más tiempo para restablecer los objetos borrados de forma no definitiva antes de que se borren de forma permanente, puedes pausar las eliminaciones permanentes (también llamadas eliminaciones definitivas) de los objetos borrados de forma no definitiva en un bucket de Cloud Storage.
De forma predeterminada, los objetos y buckets borrados de forma no definitiva se borran de forma permanente cuando alcanzan su duración de retención de eliminación no definitiva. Cuando pausas las eliminaciones definitivas de un bucket, los objetos borrados de forma no definitiva se conservan en un estado borrado de forma no definitiva de forma indefinida, independientemente de sus períodos de retención de eliminación no definitiva. Los objetos borrados de forma no definitiva solo se borran de forma permanente después de que reanudas las eliminaciones definitivas del bucket.
Casos de uso
Pausar las eliminaciones definitivas te brinda tiempo adicional para realizar restablecimientos de objetos muy grandes o complicados que, de lo contrario, podrían tardar más tiempo en resolverse que la duración de la retención de la eliminación no definitiva. Por ejemplo:
- Recuperar buckets muy grandes que contienen miles de millones de objetos Si un bucket contiene una gran cantidad de objetos, es posible que se tarde más que el período de retención en recuperar todos los objetos del bucket, en especial si detectas la eliminación después de que ya haya transcurrido parte del período de retención. Pausar las eliminaciones definitivas puede ayudarte a recuperarte de un incidente de eliminación masiva inesperado, sin tener que establecer una duración de retención más larga para las operaciones diarias.
- Alcance poco claro de las eliminaciones. Si no sabes con certeza qué objetos se borraron por error, es posible que tardes un tiempo en investigarlo. Pausar las eliminaciones definitivas puede darte más tiempo para determinar qué se debe restablecer.
- Recuperaciones complejas En el caso de las restauraciones complejas, puede haber tiempo para detectar y realizar una recuperación masiva dentro del período de retención. Si eso no produce los resultados esperados, pausar las eliminaciones definitivas puede darte más tiempo para validar que estás conforme con el estado de recuperación.
Flujo de trabajo recomendado
Te recomendamos el siguiente flujo de trabajo para pausar temporalmente las eliminaciones definitivas de un bucket. Cuando detectes un incidente de eliminación masiva que podría tardar más tiempo en resolverse que la duración de la retención de la eliminación no definitiva, sigue estos pasos:
Si es necesario, restablece el bucket.
Pausar las eliminaciones definitivas del bucket
Restablece los objetos del bucket.
Después de completar la recuperación y validar que tus datos se restablecieron correctamente, reanuda las eliminaciones definitivas para el bucket.
Consideraciones
- Puedes pausar las eliminaciones definitivas de un bucket actualizando un bucket existente que tenga habilitada la eliminación no definitiva. Las eliminaciones definitivas no se pueden pausar durante la creación del bucket ni para los buckets que no tienen habilitada la eliminación no definitiva.
- Cuando reanudas las eliminaciones definitivas de un bucket, Cloud Storage reanuda las eliminaciones permanentes de todos los objetos borrados de forma no definitiva en el bucket según sus períodos de retención de eliminación no definitiva. Si algún objeto superó su duración de retención, se borrará de forma permanente cuando reanudes las eliminaciones definitivas.
- La pausa de las eliminaciones definitivas se aplica de inmediato. Es posible que las operaciones de la API almacenadas en caché tarden unos segundos en devolver la información actualizada.
- Puedes seguir borrando objetos en un bucket cuando las eliminaciones definitivas están en pausa. Los objetos borrados se borran de forma no definitiva.
- Puedes pausar y reanudar las eliminaciones definitivas en un bucket un máximo de una vez cada 24 horas.
- Puedes actualizar la duración de la retención de la eliminación no definitiva mientras las eliminaciones definitivas están en pausa. Sin embargo, no puedes inhabilitar la eliminación no definitiva mientras las eliminaciones definitivas están en pausa.
- No se puede borrar un bucket mientras las eliminaciones definitivas están en pausa.
Roles obligatorios
Para obtener los permisos que
necesitas para pausar o reanudar las eliminaciones definitivas,
pídele a tu administrador que te otorgue el rol de IAM de
Administrador de almacenamiento (roles/storage.admin) en el bucket o el proyecto que contiene el bucket.
Este rol predefinido contiene los permisos necesarios para pausar o reanudar las eliminaciones definitivas. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para pausar o reanudar las eliminaciones definitivas:
-
storage.buckets.update -
Si usas la consola de Google Cloud para realizar las tareas de esta página, haz lo siguiente:
-
storage.buckets.get -
storage.buckets.list
-
Para obtener más información sobre cómo otorgar roles, consulta Configura y administra políticas de IAM en buckets o Administra el acceso a los proyectos.
Pausar las eliminaciones definitivas
API de REST
API de JSON
Tener la gcloud CLI instalada e inicializada, lo que te permite generar un token de acceso para el encabezado
Authorization.Crea un archivo JSON que contenga la siguiente información:
{ "softDeletePolicy": { "hardDeletePause": { "enabled": true } } }
Para pausar las eliminaciones definitivas de un bucket, usa
cURLpara llamar a la API de JSON con una solicitud de bucketPATCH:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage./storage/v1/b/BUCKET_NAME"
Reemplaza lo siguiente:
JSON_FILE_NAME: Es la ruta de acceso al archivo JSON que creaste en el paso anterior.BUCKET_NAME: el nombre del bucket. Por ejemplo,my-bucket.
Reanudar las eliminaciones definitivas
API de REST
API de JSON
Tener la gcloud CLI instalada e inicializada, lo que te permite generar un token de acceso para el encabezado
Authorization.Crea un archivo JSON que contenga la siguiente información:
{ "softDeletePolicy": { "hardDeletePause": { "enabled": false } } }
Para reanudar las eliminaciones definitivas de un bucket, usa
cURLpara llamar a la API de JSON con una solicitud de bucketPATCH:curl -X PATCH --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storage./storage/v1/b/BUCKET_NAME"
Reemplaza lo siguiente:
JSON_FILE_NAME: Es la ruta de acceso al archivo JSON que creaste en el paso anterior.BUCKET_NAME: el nombre del bucket. Por ejemplo,my-bucket.
Verifica si las eliminaciones definitivas están pausadas para un bucket
La política de eliminación no definitiva de un bucket proporciona información sobre si las eliminaciones definitivas están pausadas. Para conocer los pasos para recuperar la política de eliminación no definitiva de un bucket, consulta Verifica si la eliminación no definitiva está habilitada en un bucket.
¿Qué sigue?
- Obtén más información para restablecer objetos borrados de forma no definitiva.
- Obtén más información para restablecer buckets borrados de forma no definitiva.