Conéctate a depósitos de Cloud Storage

En esta página, se presenta Cloud Storage como una opción de almacenamiento para datos de aprendizaje automático y resultado de entrenamiento y se describe cómo otorgar a tu Cloud TPU acceso a los objetos de datos en Cloud Storage.

Antes de comenzar

Necesitas una cuenta de servicio de Cloud TPU para acceder a un bucket de Cloud Storage.

  1. Crea una cuenta de servicio de Cloud TPU para tu proyecto.

    gcloud beta services identity create --service tpu.googleapis.com --project project-id

    El comando muestra una cuenta de servicio de Cloud TPU con el siguiente formato:

    service-project-number@cloud-tpu.iam.gserviceaccount.com
    
  2. Sigue las instrucciones que se encuentran en las guías de inicio rápido de Cloud TPU o en Administra TPUs para configurar tu proyecto de Google Cloud y crear tu VM y recursos de TPU de Cloud TPU.

Escribe datos en Cloud Storage

Console

  1. Ve a la página de Cloud Storage en la consola de Google Cloud.

    Ir a la página de Cloud Storage

  2. Crea un bucket nuevo y especifica las siguientes opciones:

    • Un nombre único de tu elección
    • Clase de almacenamiento predeterminada: Standard
    • Ubicación: Es la región en la que creaste la Cloud TPU. Para obtener más información sobre las regiones y la disponibilidad de las TPU, consulta Regiones y zonas de TPU.

CLI

  1. Usa el comando gcloud storage buckets create para crear un bucket de Cloud Storage:

    gcloud storage buckets create gs://bucket-name --location region

    Donde:

    • region es la región en la que creaste la Cloud TPU. Para obtener más información sobre las regiones y la disponibilidad de las TPU, consulta Regiones y zonas de TPU.

    • bucket-name es el nombre del bucket que deseas crear.

  2. Usa el comando gcloud storage cp para escribir archivos en el bucket de Cloud Storage:

    gcloud storage cp -r local-data-dir gs://bucket-name

    local-data-dir es una ruta local a tus datos. Por ejemplo:$HOME/your-data

Otorga a Cloud TPU acceso a Cloud Storage

Debes otorgar a Cloud TPU acceso de lectura y escritura a los objetos de Cloud Storage. Para ello, debes otorgar el acceso requerido a la cuenta de servicio de Cloud TPU que usa la Cloud TPU. En las siguientes secciones, se muestra cómo encontrar la cuenta de servicio de Cloud TPU y otorgar el acceso necesario.

Autoriza la cuenta de servicio de Cloud TPU

La forma recomendada de autorizar la cuenta de servicio de Cloud TPU es con listas de control de acceso (LCA) detalladas. También puedes otorgar permisos más amplios con los permisos de IAM.

Utiliza LCA detalladas para Cloud TPU (recomendado)

Si almacenas datos de entrenamiento en Cloud Storage, la cuenta de servicio de Cloud TPU necesita permiso de lectura y escritura en el bucket.

Console

  1. Ve a la página del navegador de Cloud Storage para ver tus depósitos.

    Ir al navegador de Cloud Storage

  2. Selecciona el bucket cuya LCA deseas modificar.

  3. Selecciona la pestaña Permisos.

  4. Selecciona Otorgar acceso para agregar un permiso nuevo y escribe el nombre completo de la cuenta de servicio en el cuadro de edición Principales nuevas.

  5. Si estás leyendo desde este bucket, debes permitir que la cuenta de servicio de TPU lea desde el recurso. Para ello, otorga la función de Storage Legacy > Storage Legacy Bucket Reader a la cuenta de servicio.

  6. Si estás escribiendo en este bucket, debes permitir que la cuenta de servicio de TPU escriba en el recurso. Para ello, otorga la función de Storage Legacy > Storage Legacy Bucket Writer a la cuenta de servicio.

CLI

  1. Si estás leyendo desde este bucket, otórgale a la cuenta de servicio de TPU permiso de lectura:

     gcloud storage buckets add-iam-policy-binding gs://bucket-name --member=serviceAccount:service-account --role=roles/storage.objectViewer
     

  2. Si escribes en este bucket, otorga permiso de escritura a la cuenta de servicio de TPU:

     gcloud storage buckets add-iam-policy-binding gs://bucket-name --member=serviceAccount:service-account --role=roles/storage.objectCreator

Usa permisos de IAM para Cloud TPU (alternativa)

Si deseas otorgar más permisos en lugar de otorgar acceso a cada bucket de manera explícita, puedes otorgarle a la cuenta de servicio de Cloud TPU la función de administrador de almacenamiento de la Administración de identidades y acceso (IAM).

  1. Ir a IAM

  2. Haz clic en el botón Otorgar acceso para agregar principales al proyecto.

  3. Ingresa los nombres de las cuentas de servicio de Cloud TPU en el cuadro de texto Principales.

  4. Haz clic en la lista desplegable Funciones.

  5. Habilita las siguientes funciones:

    • Proyecto > Visualizador

    • Almacenamiento > Administrador de almacenamiento

Cloud Storage FUSE

Cloud Storage FUSE te permite activar y acceder a los buckets de Cloud Storage como sistemas de archivos locales. Esto permite que las aplicaciones lean y escriban objetos en tu bucket con la semántica del sistema de archivos estándar.

Consulta la documentación de Cloud Storage FUSE para obtener detalles sobre cómo funciona Cloud Storage FUSE y una descripción de cómo las operaciones de Cloud Storage FUSE se asignan a las operaciones de Cloud Storage. Puedes encontrar información adicional sobre cómo usar Cloud Storage FUSE, como cómo instalar la CLI de gcsfuse y activar buckets en GitHub.

Limpia

  1. Desconéctate de la Cloud TPU, si aún no lo hiciste:

    (vm)$ exit
  2. En Cloud Shell, borra la Cloud TPU:

    gcloud compute tpus tpu-vm delete tpu-name --zone=zone
  3. Ejecuta gcloud compute tpus tpu-vm list para verificar que se haya borrado la VM. La eliminación puede tardar varios minutos.

    gcloud compute tpus tpu-vm list --zone=zone

    Una respuesta como la que se muestra a continuación indica que tus instancias se borraron de forma correcta.

    Listed 0 items
    
  4. Ejecuta el siguiente comando para borrar el bucket de Cloud Storage y su contenido. Para ello, reemplaza bucket-name por el nombre del bucket que creaste:

    gcloud storage rm --recursive gs://bucket-name

¿Qué sigue?