Mueve y renombra buckets

Cuando creas un bucket, algunas de las propiedades que estableces son permanentes y no se pueden cambiar, incluidos el nombre del bucket, su ubicación geográfica y el proyecto del que es parte. Sin embargo, puedes mover o cambiar el nombre de tu bucket de forma efectiva:

  • Si no hay datos en tu bucket anterior, bórralo y crea otro con las propiedades que desees.

  • Si tienes datos en tu bucket anterior, crea un bucket nuevo con las propiedades que desees, copia los datos del bucket anterior al nuevo y borra el bucket anterior y su contenido. En los pasos que se indican en esta página, se describe este proceso.

    • Si deseas que tu bucket nuevo tenga el mismo nombre que el anterior, debes mover tus datos de forma temporal a un bucket con un nombre diferente. Esto te permite borrar el bucket original para que puedas volver a usar su nombre.

    • Mover datos entre ubicaciones genera costos de uso de la red. Además, mover datos puede generar cargos adicionales según las clases de almacenamiento de los datos de origen y la ubicación del bucket de destino. Para obtener más información, consulta los Precios de Cloud Storage.

Permisos necesarios

Console

Para completar esta guía con la consola de Google Cloud, debes tener los permisos de IAM adecuados. Si los buckets a los que deseas acceder existen en un proyecto que no creaste, tal vez necesites que el propietario del proyecto te otorgue un rol con los permisos necesarios.

Para obtener una lista de los permisos necesarios para acciones específicas, consulta Permisos de IAM para la consola de Google Cloud.

Para obtener una lista de los roles relevantes, consulta Funciones de Cloud Storage. Como alternativa, puedes crear un rol personalizado que tenga permisos más limitados.

Línea de comandos

Para completar esta guía con una utilidad de línea de comandos, debes tener los permisos de IAM adecuados. Si los buckets a los que deseas acceder existen en un proyecto que no creaste, tal vez necesites que el propietario del proyecto te otorgue un rol con los permisos necesarios.

Si deseas obtener una lista de los permisos necesarios para acciones específicas, consulta Permisos de IAM para los comandos de gcloud storage.

Para obtener una lista de los roles relevantes, consulta Funciones de Cloud Storage. Como alternativa, puedes crear un rol personalizado que tenga permisos más limitados.

APIs de REST

API de JSON

Para completar esta guía con la API de JSON, debes tener los permisos de IAM adecuados. Si los buckets a los que deseas acceder existen en un proyecto que no creaste, tal vez necesites que el propietario del proyecto te otorgue un rol con los permisos necesarios.

Si deseas obtener una lista de los permisos necesarios para acciones específicas, consulta Permisos de IAM para métodos JSON.

Para obtener una lista de los roles relevantes, consulta Funciones de Cloud Storage. Como alternativa, puedes crear un rol personalizado que tenga permisos más limitados.

Mover datos de un bucket a otro

Consola

Usa el Servicio de transferencia de almacenamiento de Cloud Storage desde la consola de Google Cloud:

  1. Si aún no tienes un depósito de destino, crea el bucket.
  2. Abre la página Transferencia en la consola de Google Cloud.

    Abrir la página Transferencia

  3. Haz clic en Crear trabajo de transferencia.
  4. Sigue la explicación detallada y haz clic en Siguiente a medida que completas cada uno de los siguientes pasos:

    • Elige una fuente: usa Bucket de Google Cloud Storage como el tipo de fuente y, luego, ingresa el nombre del bucket deseado o haz clic en Explorar para buscar y selecciona el bucket que desees.

    • Elige un destino: ingresa el nombre del bucket deseado de forma directa o haz clic en Examinar para buscar y seleccionar el bucket que deseas.

    • Selecciona la configuración: Selecciona la opción Borrar archivos desde la fuente después de la transferencia.

    • Opciones de programación: Puedes ignorar esta sección.

  5. Después de completar la explicación paso a paso, haz clic en Crear.

    Así, comienza el proceso de copia de objetos desde tu bucket anterior al nuevo. Este proceso puede tomar un tiempo; sin embargo, después de hacer clic en Crear, puedes salir de la consola de Google Cloud.

    Para ver el progreso de la transferencia, haz lo siguiente:

    Abre la página Transferencia en la consola de Google Cloud.

    Abrir la página Transferencia

    Para obtener información acerca de cómo ver detalles de errores acerca de operaciones fallidas de Cloud Storage en la consola de Google Cloud, consulta Solución de problemas.

  6. Una vez que se completa la transferencia, no necesitas hacer nada para borrar los objetos de tu bucket anterior si durante la configuración seleccionaste la casilla de verificación Eliminar objetos del origen tras completar la transferencia. Sin embargo, puedes borrar tu bucket anterior, lo que debes hacer por separado.

Línea de comandos

  1. Si aún no tienes uno, crea un bucket de destino.

  2. Para copiar el contenido de tu bucket de origen a tu bucket de destino, usa uno de los siguientes métodos:

    • Para copiar de forma recursiva todos tus objetos del bucket de origen al bucket de destino, usa el comando gcloud storage cp con la opción --recursive:

      gcloud storage cp --recursive gs://SOURCE_BUCKET/* gs://DESTINATION_BUCKET

      Donde:

      • SOURCE_BUCKET es el nombre de tu bucket original. Por ejemplo, old-bucket.

      • DESTINATION_BUCKET es el nombre del bucket al que transfieres los datos. Por ejemplo, my-bucket.

    • Para copiar de forma recursiva todos tus objetos y carpetas administradas del bucket de origen al bucket de destino, usa el comando gcloud alpha storage cp con las opciones --include-managed-folders y --recursive:

      gcloud alpha storage cp --include-managed-folders --recursive gs://SOURCE_BUCKET/* gs://DESTINATION_BUCKET

      Donde:

      • SOURCE_BUCKET es el nombre de tu bucket original. Por ejemplo, old-bucket.

      • DESTINATION_BUCKET es el nombre del bucket al que transfieres los datos. Por ejemplo, my-bucket.

  3. Para borrar el bucket de origen, usa uno de los siguientes métodos:

    • Para borrar de forma recursiva todos los objetos del bucket de origen, junto con el bucket de origen en sí, usa el comando gcloud storage rm con la opción --recursive:

      gcloud storage rm --recursive gs://SOURCE_BUCKET

      En el ejemplo anterior, SOURCE_BUCKET es el nombre del bucket original. Por ejemplo, old-bucket

    • Para borrar de forma recursiva todos los objetos y las carpetas administradas del bucket de origen, junto con el bucket de origen en sí, usa el comando gcloud alpha storage rm con la opción --recursive:

      gcloud alpha storage rm --recursive gs://SOURCE_BUCKET

      En el ejemplo anterior, SOURCE_BUCKET es el nombre del bucket original. Por ejemplo, old-bucket.

    • Para borrar los objetos y las carpetas administradas del bucket de origen sin borrar el bucket de origen en sí, usa el comando gcloud alpha storage rm sin la marca --recursive:

      gcloud alpha storage rm --all-versions gs://SOURCE_BUCKET/**

      En el ejemplo anterior, SOURCE_BUCKET es el nombre del bucket original. Por ejemplo, old-bucket

APIs de REST

API de JSON

  1. Si aún no tienes un depósito de destino, crea el bucket.

  2. Copia cada objeto del bucket de origen al de destino.

  3. Borra cada objeto del bucket de origen.

  4. Borra tu bucket de origen.

API de XML

  1. Si aún no tienes un depósito de destino, crea el bucket.

  2. Copia cada objeto del bucket de origen al de destino.

  3. Borra cada objeto del bucket de origen.

  4. Borra tu bucket de origen.

¿Qué sigue?